unbound: testcode/unitmsgparse.c File Reference

unbound 0.1

Macros | Functions | Variables
unitmsgparse.c File Reference

Calls msg parse unit tests. More...

`#include "config.h"`
`#include <sys/time.h>`
`#include "util/log.h"`
`#include "testcode/unitmain.h"`
`#include "util/data/msgparse.h"`
`#include "util/data/msgreply.h"`
`#include "util/data/msgencode.h"`
`#include "util/data/dname.h"`
`#include "util/alloc.h"`
`#include "util/regional.h"`
`#include "util/net_help.h"`
`#include "testcode/readhex.h"`
`#include "testcode/testpkts.h"`
`#include "sldns/sbuffer.h"`
`#include "sldns/str2wire.h"`
`#include "sldns/wire2str.h"`

## Macros
#define | xstr(s) str(s)
#define | str(s) #s
#define | SRCDIRSTR xstr(SRCDIR)

## Functions
static int | test_buffers (sldns_buffer *pkt, sldns_buffer *out)
| see if buffers contain the same packet
static void | checkformerr (sldns_buffer *pkt)
| check if unbound formerr equals ldns formerr
static void | perf_encode (struct query_info *qi, struct reply_info *rep, uint16_t id, uint16_t flags, sldns_buffer *out, time_t timenow, struct edns_data *edns)
| performance test message encoding
static void | perftestpkt (sldns_buffer *pkt, struct alloc_cache *alloc, sldns_buffer *out, const char *hex)
| perf test a packet
static void | print_rrset (struct ub_packed_rrset_key *rrset)
| print packed rrset
static void | print_packet_rrsets (struct query_info *qinfo, struct reply_info *rep)
| debug print a packet that failed
static int | no_data_for_rrsig (struct reply_info *rep, struct ub_packed_rrset_key *rrsig)
| check that there is no data element that matches the RRSIG
static void | check_the_rrsigs (struct query_info *qinfo, struct reply_info *rep)
| check RRSIGs in packet
static void | testpkt (sldns_buffer *pkt, struct alloc_cache *alloc, sldns_buffer *out, const char *hex)
| test a packet
static void | simpletest (sldns_buffer *pkt, struct alloc_cache *alloc, sldns_buffer *out)
| simple test of parsing
static void | testfromfile (sldns_buffer *pkt, struct alloc_cache *alloc, sldns_buffer *out, const char *fname)
| simple test of parsing, pcat file
static void | testfromdrillfile (sldns_buffer *pkt, struct alloc_cache *alloc, sldns_buffer *out, const char *fname)
| simple test of parsing, drill file
void | msgparse_test (void)
| unit test for msgreply and msgparse

## Variables
static int | vbmp = 0
| verbose message parse unit test
static int | check_formerr_gone = 0
| do not accept formerr
static int | matches_nolocation = 0
| if matching within a section should disregard the order of RRs.
static int | check_rrsigs = 0
| see if RRSIGs are properly matched to RRsets.
static int | check_nosameness = 0
| do not check buffer sameness

## Detailed Description

Calls msg parse unit tests.

Exits with code 1 on a failure.