iter_scrub.h File Reference

This file has routine(s) for cleaning up incoming DNS messages from possible useless or malicious junk in it. More...


Functions

int scrub_message (ldns_buffer *pkt, struct msg_parse *msg, struct query_info *qinfo, uint8_t *zonename, struct regional *regional, struct module_env *env, struct iter_env *ie)
 Cleanup the passed dns message.


Detailed Description

This file has routine(s) for cleaning up incoming DNS messages from possible useless or malicious junk in it.


Function Documentation

int scrub_message ( ldns_buffer *  pkt,
struct msg_parse msg,
struct query_info qinfo,
uint8_t *  zonename,
struct regional regional,
struct module_env env,
struct iter_env ie 
)

Cleanup the passed dns message.

Parameters:
pkt,: the packet itself, for resolving name compression pointers. the packet buffer is unaltered.
msg,: the parsed packet, this structure is cleaned up.
qinfo,: the query info that was sent to the server. Checked.
zonename,: the name of the last delegation point. Used to determine out of bailiwick information.
regional,: where to allocate (new) parts of the message.
env,: module environment with config settings and cache.
ie,: iterator module environment data.
Returns:
: false if the message is total waste. true if scrubbed with success.

References BIT_QR, dname_pkt_compare(), msg_parse::flags, FLAGS_GET_RCODE, log_nametypeclass(), msg_parse::qclass, query_info::qclass, msg_parse::qdcount, query_info::qname, msg_parse::qname, query_info::qtype, msg_parse::qtype, scrub_normalize(), scrub_sanitize(), and VERB_ALGO.

Referenced by process_response().


Generated on Thu Mar 26 10:03:52 2009 for unbound by  doxygen 1.5.8