19 #ifndef INC_SPF_RECORD 20 #define INC_SPF_RECORD 73 #define SPF_MAX_STR_LEN 255 77 #define SPF_MAX_MECH_LEN 511 78 #define SPF_MAX_MOD_LEN 511 88 #define PARM_LP_FROM 0 89 #define PARM_ENV_FROM 1 90 #define PARM_DP_FROM 2 91 #define PARM_CUR_DOM 3 92 #define PARM_CLIENT_IP 4 93 #define PARM_CLIENT_IP_P 5 95 #define PARM_CLIENT_DOM 7 96 #define PARM_CLIENT_VER 8 97 #define PARM_HELO_DOM 9 98 #define PARM_REC_DOM 10 100 #define PARM_STRING 12 104 struct SPF_data_str_struct
115 struct SPF_data_var_struct
130 struct SPF_data_cidr_struct
153 #define PREFIX_PASS SPF_RESULT_PASS 154 #define PREFIX_FAIL SPF_RESULT_FAIL 155 #define PREFIX_SOFTFAIL SPF_RESULT_SOFTFAIL 156 #define PREFIX_NEUTRAL SPF_RESULT_NEUTRAL 157 #define PREFIX_UNKNOWN SPF_RESULT_PERMERROR 162 #define MECH_UNKNOWN 0 166 #define MECH_INCLUDE 4 169 #define MECH_EXISTS 7 171 #define MECH_REDIRECT 9 174 struct SPF_mech_struct
187 struct SPF_mod_struct
233 SPF_errcode_t SPF_record_find_mod_data(SPF_server_t *spf_server,
234 SPF_record_t *spf_record,
235 const char *mod_name,
239 SPF_request_t *spf_request,
240 SPF_response_t *spf_response,
241 SPF_record_t *spf_record,
242 const char *mod_name,
243 char **bufp,
size_t *buflenp);
247 SPF_response_t *spf_response,
248 SPF_record_t **spf_recordp,
251 SPF_response_t *spf_response,
252 SPF_macro_t **spf_macrop,
256 SPF_record_t *spf_record,
257 SPF_request_t *spf_request,
258 SPF_response_t *spf_response,
262 SPF_request_t *spf_request,
263 SPF_response_t *spf_response,
265 char **bufp,
size_t *buflenp);
269 char **bufp,
size_t *buflenp);
unsigned char prefix_type
unsigned short delim_equal
void SPF_record_free(SPF_record_t *rp)
SPF_errcode_t SPF_record_compile(SPF_server_t *spf_server, SPF_response_t *spf_response, SPF_record_t **spf_recordp, const char *record)
unsigned char num_dns_mech
void SPF_macro_free(SPF_macro_t *mac)
SPF_errcode_t SPF_record_interpret(SPF_record_t *spf_record, SPF_request_t *spf_request, SPF_response_t *spf_response, int depth)
SPF_record_t * SPF_record_new(SPF_server_t *spf_server, const char *text)
unsigned short url_encode
unsigned short delim_dash
SPF_errcode_t SPF_record_compile_macro(SPF_server_t *spf_server, SPF_response_t *spf_response, SPF_macro_t **spf_macrop, const char *record)
unsigned short delim_plus
SPF_errcode_t SPF_record_stringify(SPF_record_t *spf_record, char **bufp, size_t *buflenp)
SPF_errcode_t SPF_record_expand_data(SPF_server_t *spf_server, SPF_request_t *spf_request, SPF_response_t *spf_response, SPF_data_t *data, size_t data_len, char **bufp, size_t *buflenp)
SPF_errcode_t SPF_record_find_mod_value(SPF_server_t *spf_server, SPF_request_t *spf_request, SPF_response_t *spf_response, SPF_record_t *spf_record, const char *mod_name, char **bufp, size_t *buflenp)
unsigned short delim_under
SPF_errcode_t SPF_record_print(SPF_record_t *spf_record)
SPF_server_t * spf_server