libspf2 1.2.11
spf_server.c File Reference
#include "spf_sys_config.h"
#include "spf.h"
#include "spf_response.h"
#include "spf_record.h"
#include "spf_server.h"
#include "spf_dns.h"
#include "spf_dns_resolv.h"
#include "spf_dns_cache.h"
#include "spf_dns_zone.h"
#include "spf_internal.h"
#include "spf_dns_internal.h"
Include dependency graph for spf_server.c:

Go to the source code of this file.

Macros

#define HOST_NAME_MAX   255
#define SPF_ACCESS_INT(f)

Functions

 __attribute__ ((warn_unused_result))
SPF_server_t * SPF_server_new (SPF_server_dnstype_t dnstype, int debug)
SPF_server_t * SPF_server_new_dns (SPF_dns_server_t *dns, int debug)
void SPF_server_free (SPF_server_t *sp)
SPF_errcode_t SPF_server_set_rec_dom (SPF_server_t *sp, const char *dom)
SPF_errcode_t SPF_server_set_sanitize (SPF_server_t *sp, int sanitize)
SPF_errcode_t SPF_server_set_explanation (SPF_server_t *sp, const char *exp, SPF_response_t **spf_responsep)
SPF_errcode_t SPF_server_set_localpolicy (SPF_server_t *sp, const char *policy, int use_default_whitelist, SPF_response_t **spf_responsep)
SPF_errcode_t SPF_server_get_record (SPF_server_t *spf_server, SPF_request_t *spf_request, SPF_response_t *spf_response, SPF_record_t **spf_recordp)
 SPF_ACCESS_INT (max_dns_mech)
 SPF_ACCESS_INT (max_dns_ptr)
 SPF_ACCESS_INT (max_dns_mx)

Macro Definition Documentation

◆ HOST_NAME_MAX

#define HOST_NAME_MAX   255

Definition at line 50 of file spf_server.c.

Referenced by __attribute__().

◆ SPF_ACCESS_INT

#define SPF_ACCESS_INT ( f)
Value:
SPF_errcode_t SPF_server_set_ ## f(SPF_server_t *s, int n) { \
s->f = n; return SPF_E_SUCCESS; \
} \
int SPF_server_get_ ## f(SPF_server_t *s) { \
return s->f; \
}
SPF_errcode_t
@ SPF_E_SUCCESS

Various accessors.

The user is permitted to override the maximums.

Definition at line 504 of file spf_server.c.

Referenced by SPF_ACCESS_INT(), SPF_ACCESS_INT(), and SPF_ACCESS_INT().

Function Documentation

◆ __attribute__()

__attribute__ ( (warn_unused_result) )

◆ SPF_ACCESS_INT() [1/3]

SPF_ACCESS_INT ( max_dns_mech )

The return values from these getter functions are used without modification. If you set a value higher than the specified maximum, it will be used. Beware.

References SPF_ACCESS_INT.

◆ SPF_ACCESS_INT() [2/3]

SPF_ACCESS_INT ( max_dns_mx )

References SPF_ACCESS_INT.

◆ SPF_ACCESS_INT() [3/3]

SPF_ACCESS_INT ( max_dns_ptr )

References SPF_ACCESS_INT.

◆ SPF_server_free()

void SPF_server_free ( SPF_server_t * sp)

This function destroys the DNS layer as well. If the (custom) DNS layer has no destructor, then this cannot and does not destroy it.

Definition at line 200 of file spf_server.c.

References SPF_dns_free(), SPF_macro_free(), SPF_record_free(), and SPF_server_free().

Referenced by main(), and SPF_server_free().

Here is the call graph for this function:

◆ SPF_server_get_record()

◆ SPF_server_new()

SPF_server_t * SPF_server_new ( SPF_server_dnstype_t dnstype,
int debug )

Definition at line 132 of file spf_server.c.

References debug, NULL, SPF_DNS_CACHE, SPF_dns_cache_new(), SPF_DNS_RESOLV, SPF_dns_resolv_new(), SPF_DNS_ZONE, SPF_dns_zone_new(), SPF_error, SPF_errorf, and SPF_server_new().

Referenced by main(), and SPF_server_new().

Here is the call graph for this function:

◆ SPF_server_new_dns()

SPF_server_t * SPF_server_new_dns ( SPF_dns_server_t * dns,
int debug )

Definition at line 180 of file spf_server.c.

References debug, and SPF_server_new_dns().

Referenced by SPF_server_new_dns().

Here is the call graph for this function:

◆ SPF_server_set_explanation()

SPF_errcode_t SPF_server_set_explanation ( SPF_server_t * sp,
const char * exp,
SPF_response_t ** spf_responsep )

◆ SPF_server_set_localpolicy()

SPF_errcode_t SPF_server_set_localpolicy ( SPF_server_t * sp,
const char * policy,
int use_default_whitelist,
SPF_response_t ** spf_responsep )

◆ SPF_server_set_rec_dom()

SPF_errcode_t SPF_server_set_rec_dom ( SPF_server_t * sp,
const char * dom )

Definition at line 215 of file spf_server.c.

References NULL, SPF_E_NO_MEMORY, SPF_E_SUCCESS, and SPF_server_set_rec_dom().

Referenced by main(), and SPF_server_set_rec_dom().

Here is the call graph for this function:

◆ SPF_server_set_sanitize()

SPF_errcode_t SPF_server_set_sanitize ( SPF_server_t * sp,
int sanitize )

Definition at line 228 of file spf_server.c.

References SPF_E_SUCCESS, and SPF_server_set_sanitize().

Referenced by main(), and SPF_server_set_sanitize().

Here is the call graph for this function: