19 #ifndef INC_SPF_INTERNAL 20 #define INC_SPF_INTERNAL 28 #define NULL ((void *)0) 31 #define array_elem(x) ((long int)(sizeof( x ) / sizeof( *x ))) 38 #ifndef SPF_MAX_DNS_MECH 55 #define SPF_MAX_DNS_MECH 10 57 #ifndef SPF_MAX_DNS_PTR 62 #define SPF_MAX_DNS_PTR 10 64 #ifndef SPF_MAX_DNS_MX 69 #define SPF_MAX_DNS_MX 10 74 static inline size_t _align_sz(
size_t s)
76 static inline char * _align_ptr(
char *s)
79 static inline size_t _align_sz(
size_t s) {
return s; }
80 static inline char * _align_ptr(
char *s) {
return s; }
87 static inline size_t SPF_mech_data_len(
SPF_mech_t * mech )
89 ?
sizeof(
struct in_addr )
91 ? sizeof( struct in6_addr )
93 static inline
SPF_mech_t *SPF_mech_next( SPF_mech_t * mech )
95 (
char *)mech +
sizeof(
SPF_mech_t) + SPF_mech_data_len( mech )
100 {
return (
SPF_data_t *)( (
char *)SPF_mech_data(mech) +
101 SPF_mech_data_len( mech ));}
102 static inline struct in_addr *SPF_mech_ip4_data(
SPF_mech_t *mech )
103 {
return (
struct in_addr *)( (
char *)mech +
sizeof(
SPF_mech_t)); }
104 static inline struct in6_addr *SPF_mech_ip6_data(
SPF_mech_t *mech )
105 {
return (
struct in6_addr *)( (
char *)mech +
sizeof(
SPF_mech_t)); }
107 static inline size_t SPF_data_len(
SPF_data_t *data )
112 (
char *)data + SPF_data_len(data)
114 static inline char *SPF_data_str(
SPF_data_t *data )
117 static inline size_t SPF_mod_len(
SPF_mod_t *mod )
121 (
char *)mod + SPF_mod_len(mod)
123 static inline char *SPF_mod_name(
SPF_mod_t *mod )
124 {
return (
char *)mod +
sizeof(
SPF_mod_t); }
132 static inline size_t SPF_macro_data_len( SPF_macro_t * mac )
133 {
return mac->macro_len; }
134 static inline SPF_data_t *SPF_macro_data( SPF_macro_t * mac )
135 {
return (
SPF_data_t *)( (
char *)mac +
sizeof(SPF_macro_t)); }
138 char *
SPF_sanitize( SPF_server_t *spf_server,
char *str );
158 #define SPF_WRAP_FUNCTION(name, proto, args) \ 159 SPF_errcode_t name proto { \ 160 SPF_errcode_t err = name ## _real args; \ 161 SPF_debug(#name " returns %d\n", err); \ 164 SPF_errcode_t name ## _real proto
char * SPF_sanitize(SPF_server_t *spf_server, char *str)
void SPF_print_sizeof(void)
SPF_errcode_t SPF_recalloc(char **bufp, size_t *buflenp, size_t buflen) __attribute__((warn_unused_result))