libspf2 1.2.11
Macros | Functions
spf_dns_rr.c File Reference
#include "spf_sys_config.h"
#include "spf.h"
#include "spf_dns.h"
#include "spf_internal.h"
#include "spf_dns_internal.h"
#include "spf_dns_rr.h"
Include dependency graph for spf_dns_rr.c:

Go to the source code of this file.

Macros

#define SPF_DNS_RR_REALLOC(d, i, s)
 

Functions

SPF_dns_rr_tSPF_dns_rr_new_nxdomain (SPF_dns_server_t *spf_dns_server, const char *domain)
 
SPF_dns_rr_tSPF_dns_rr_new_init (SPF_dns_server_t *spf_dns_server, const char *domain, ns_type rr_type, int ttl, SPF_dns_stat_t herrno)
 
SPF_dns_rr_tSPF_dns_rr_new ()
 
void SPF_dns_rr_free (SPF_dns_rr_t *spfrr)
 
SPF_errcode_t SPF_dns_rr_buf_realloc (SPF_dns_rr_t *spfrr, int idx, size_t len)
 
SPF_errcode_t SPF_dns_rr_dup (SPF_dns_rr_t **dstp, SPF_dns_rr_t *src)
 

Detailed Description

Audited, 2008-09-13, Shevek.

Definition in file spf_dns_rr.c.

Macro Definition Documentation

◆ SPF_DNS_RR_REALLOC

#define SPF_DNS_RR_REALLOC (   d,
  i,
 
)
Value:
do { \
err = SPF_dns_rr_buf_realloc(d, i, s); \
if (err) return err; \
} while(0)
SPF_errcode_t SPF_dns_rr_buf_realloc(SPF_dns_rr_t *spfrr, int idx, size_t len)
Definition spf_dns_rr.c:134

Function Documentation

◆ SPF_dns_rr_buf_realloc()

SPF_errcode_t SPF_dns_rr_buf_realloc ( SPF_dns_rr_t spfrr,
int  idx,
size_t  len 
)

◆ SPF_dns_rr_dup()

SPF_errcode_t SPF_dns_rr_dup ( SPF_dns_rr_t **  dstp,
SPF_dns_rr_t src 
)

This function may return both an error code and an rr, or one, or neither.

This function generates a valgrind error because strlen always reads in blocks of 4 bytes, and can overrun the end of the allocated buffers.

Definition at line 189 of file spf_dns_rr.c.

References SPF_dns_rr_data_t::a, SPF_dns_rr_data_t::aaaa, SPF_dns_rr_t::domain, SPF_dns_rr_t::herrno, SPF_dns_rr_data_t::mx, ns_t_a, ns_t_aaaa, ns_t_mx, ns_t_ptr, ns_t_spf, ns_t_txt, NULL, SPF_dns_rr_t::num_rr, SPF_dns_rr_data_t::ptr, SPF_dns_rr_t::rr, SPF_dns_rr_t::rr_type, SPF_dns_rr_t::source, SPF_ASSERT_NOTNULL, SPF_dns_rr_new_init(), SPF_DNS_RR_REALLOC, SPF_E_NO_MEMORY, SPF_E_SUCCESS, SPF_warningf, SPF_dns_rr_t::ttl, SPF_dns_rr_data_t::txt, and SPF_dns_rr_t::utc_ttl.

Here is the call graph for this function:

◆ SPF_dns_rr_free()

void SPF_dns_rr_free ( SPF_dns_rr_t spfrr)

◆ SPF_dns_rr_new()

SPF_dns_rr_t * SPF_dns_rr_new ( void  )

◆ SPF_dns_rr_new_init()

SPF_dns_rr_t * SPF_dns_rr_new_init ( SPF_dns_server_t *  spf_dns_server,
const char *  domain,
ns_type  rr_type,
int  ttl,
SPF_dns_stat_t  herrno 
)

◆ SPF_dns_rr_new_nxdomain()

SPF_dns_rr_t * SPF_dns_rr_new_nxdomain ( SPF_dns_server_t *  spf_dns_server,
const char *  domain 
)

Definition at line 53 of file spf_dns_rr.c.

References HOST_NOT_FOUND, ns_t_any, and SPF_dns_rr_new_init().

Here is the call graph for this function: