Topic Path: Symbol Reference > Classes > TSOARecord Class
TSOARecord Class

Represents resource records in a DNS response that include Start of Authority resource record types.

TSOARecord = class(TResultRecord);

TSOARecord is a TResultRecord descendant that represents a resource record returned in the results for a DNS query. TSOARecord is the collection item created to represent a resource resource returned when TIdDNSResolver.QueryRecords includes the value qtSOA for Start of Authority resource records. 

A Start of Authority resource record is used to identify the start of a zone of authority for the authoritative data in the Answer section of the DNS response. A Start of Authority resource record is especially for describing name server zone management parameters. 

A Start of Authority resource record uses the same DNS packet layout as other TResultRecord-based responses, but extends the use of RData to include the following definition and format: 



Domain name of the name server that was the original or primary source of data for this zone. 
Domain name which specifies the mailbox of the person responsible for this zone. 
32-bit unsigned integer that is the version number of the original copy of the zone. Zone transfers preserve this value. This value wraps and should be compared using sequence space arithmetic. 
32-bit time interval before the zone should be refreshed. 
32-bit time interval that should elapse before a failed refresh should be retried. 
32-bit time value that specifies the upper limit on the time interval that can elapse before the zone is no longer authoritative. 
32-bit unsigned integer that is the minimum TTL field that should be exported with any RR from this zone. 


All times values are expressed in seconds. 

Most of these fields are pertinent only for name server maintenance operations. However, MINIMUM is used in all query operations that retrieve Resource Records from a zone. 

Whenever a Start of Authority RR is sent in a response to a query, the TTL field is set to the maximum of the TTL field from the Resource Record, and the MINIMUM field in the appropriate SOA. Thus MINIMUM is a lower bound on the TTL field for all RRs in a zone. Note that this use of MINIMUM should occur when the Resource Records are copied into the response and not when the zone is loaded from a master file or via a zone transfer. The reason for this provison is to allow future dynamic update facilities to change the Start of Authority Resource Record with known semantics. 

TSOARecord extends TResultRecord to implement the specifics of accessing RData values as properties, including Primary, ResponsiblePerson, Serial, Refresh, Retry, Expire, and MinimumTTL

TSOARecord also overrides the Parse method to read the values in RData into their property counterparts.

Copyright 1993-2006, Chad Z. Hower (aka Kudzu) and the Indy Pit Crew. All rights reserved.
Post feedback to the Indy Docs Newsgroup.