val_qstate Struct Reference

Per query state for the validator module. More...

#include <validator.h>

Data Fields

enum val_state state
 State of the validator module.
 
struct dns_msgorig_msg
 The original message we have been given to validate.
 
int restart_count
 The query restart count.
 
struct sock_listchain_blacklist
 The blacklist saved for chain of trust elements.
 
struct query_info qchase
 The query name we have chased to; qname after following CNAMEs.
 
struct reply_infochase_reply
 The chased reply, extract from original message. More...
 
size_t rrset_skip
 The cname skip value; the number of rrsets that have been skipped due to chasing cnames. More...
 
uint8_t * trust_anchor_name
 trust anchor name
 
int trust_anchor_labs
 trust anchor labels
 
size_t trust_anchor_len
 trust anchor length
 
struct ub_packed_rrset_keyds_rrset
 the DS rrset
 
uint8_t * empty_DS_name
 domain name for empty nonterminal detection
 
size_t empty_DS_len
 length of empty_DS_name
 
struct key_entry_keykey_entry
 the current key entry
 
enum val_classification subtype
 subtype
 
uint8_t * signer_name
 signer name
 
size_t signer_len
 length of signer_name
 
int wait_prime_ta
 true if this state is waiting to prime a trust anchor
 
int msg_signatures_state
 State to continue with RRSIG validation in a message later.
 
size_t msg_signatures_index
 The rrset index for the msg signatures to continue from.
 
struct nsec3_cache_table nsec3_cache_table
 Cache table for NSEC3 hashes.
 
struct dns_msgsub_ds_msg
 DS message from sub if it got suspended from NSEC3 calculations.
 
struct comm_timersuspend_timer
 The timer to resume processing msg signatures.
 
int suspend_count
 Number of suspends.
 

Detailed Description

Per query state for the validator module.

Field Documentation

◆ chase_reply

struct reply_info* val_qstate::chase_reply

The chased reply, extract from original message.

Can be: o CNAME o DNAME + CNAME o answer plus authority, additional (nsecs) that have same signature.

Referenced by process_ds_response(), processFinished(), and processValidate().

◆ rrset_skip

size_t val_qstate::rrset_skip

The cname skip value; the number of rrsets that have been skipped due to chasing cnames.

This is the offset into the orig_msg->rep->rrsets array, into the answer section. starts at 0 - for the full original message. if it is >0 - qchase followed the cname, chase_reply setup to be that message and relevant authority rrsets.

The skip is also used for referral messages, where it will range from 0, over the answer, authority and additional sections.

Referenced by processFinished(), and processInit().


The documentation for this struct was generated from the following file: