mirror of
https://github.com/NLnetLabs/unbound.git
synced 2025-12-24 00:29:58 -05:00
Header change for message store.
git-svn-id: file:///svn/unbound/trunk@232 be551aaa-1e26-0410-a405-d3ace91eadb9
This commit is contained in:
parent
d51196ddc0
commit
286892dadc
2 changed files with 26 additions and 12 deletions
|
|
@ -1,3 +1,8 @@
|
||||||
|
10 April 2007: Wouter
|
||||||
|
- Improved alignment of reply_info packet, nice for 32 and 64 bit.
|
||||||
|
- Put RRset counts in reply_info, because the number of RRs can change
|
||||||
|
due to RRset updates.
|
||||||
|
|
||||||
5 April 2007: Wouter
|
5 April 2007: Wouter
|
||||||
- discussed packed rrset with Jelte.
|
- discussed packed rrset with Jelte.
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -97,6 +97,14 @@ struct reply_info {
|
||||||
/** the flags for the answer, host byte order. */
|
/** the flags for the answer, host byte order. */
|
||||||
uint16_t flags;
|
uint16_t flags;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Number of RRs in the query section.
|
||||||
|
* If qdcount is not 0, then it is 1, and the data that appears
|
||||||
|
* in the reply is the same as the query_info.
|
||||||
|
* Host byte order.
|
||||||
|
*/
|
||||||
|
uint16_t qdcount;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* TTL of the entire reply (for negative caching).
|
* TTL of the entire reply (for negative caching).
|
||||||
* only for use when there are 0 RRsets in this message.
|
* only for use when there are 0 RRsets in this message.
|
||||||
|
|
@ -104,23 +112,24 @@ struct reply_info {
|
||||||
*/
|
*/
|
||||||
uint32_t ttl;
|
uint32_t ttl;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* network order counts: qdcount ancount nscount arcount.
|
* Number of RRsets in each section.
|
||||||
* so this is wireformat for the counts as they appear in the message.
|
* The answer section. Add up the RRs in every RRset to calculate
|
||||||
* If qdcount is not 0, then it is 1, and the data that appears
|
* the number of RRs, and the count for the dns packet.
|
||||||
* in the reply is the same as the query_info.
|
* The number of RRs in RRsets can change due to RRset updates.
|
||||||
*/
|
*/
|
||||||
uint16_t counts[4];
|
size_t an_numrrsets;
|
||||||
|
|
||||||
/** Total number of rrsets in reply: ancount+nscount+arcount.
|
/** Count of authority section RRsets */
|
||||||
* Use the accessor function to get this value.
|
size_t ns_numrrsets;
|
||||||
*/
|
|
||||||
size_t num_rrsets;
|
/** Count of additional section RRsets */
|
||||||
|
size_t ar_numrrsets;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* List of pointers (only) to the rrsets in the order in which
|
* List of pointers (only) to the rrsets in the order in which
|
||||||
* they appear in the reply message.
|
* they appear in the reply message.
|
||||||
* Number of elements is ancount+nscount+arcount.
|
* Number of elements is ancount+nscount+arcount RRsets.
|
||||||
* This is a pointer to that array.
|
* This is a pointer to that array.
|
||||||
* Use the accessor function for access.
|
* Use the accessor function for access.
|
||||||
*/
|
*/
|
||||||
|
|
@ -128,7 +137,7 @@ struct reply_info {
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Packed array of ids (see counts) and pointers to packed_rrset_key.
|
* Packed array of ids (see counts) and pointers to packed_rrset_key.
|
||||||
* The number equals ancount+nscount+arcount.
|
* The number equals ancount+nscount+arcount RRsets.
|
||||||
* These are sorted in ascending pointer, the locking order. So
|
* These are sorted in ascending pointer, the locking order. So
|
||||||
* this list can be locked (and id, ttl checked), to see if
|
* this list can be locked (and id, ttl checked), to see if
|
||||||
* all the data is available and recent enough.
|
* all the data is available and recent enough.
|
||||||
|
|
|
||||||
Loading…
Reference in a new issue