2.2.5.2.4.3 DNS_RPC_ZONE_INFO_LONGHORN

In the DNS_RPC_ZONE_INFO_LONGHORN structure all fields have same definition as specified in section DNS_RPC_ZONE_INFO_DOTNET (section 2.2.5.2.4.2), with the following exceptions:

 typedef struct _DnsRpcZoneInfoLonghorn {
   DWORD dwRpcStructureVersion;
   DWORD dwReserved0;
   [string] char* pszZoneName;
   DWORD dwZoneType;
   DWORD fReverse;
   DWORD fAllowUpdate;
   DWORD fPaused;
   DWORD fShutdown;
   DWORD fAutoCreated;
   DWORD fUseDatabase;
   [string] char* pszDataFile;
   PDNS_ADDR_ARRAY aipMasters;
   DWORD fSecureSecondaries;
   DWORD fNotifyLevel;
   PDNS_ADDR_ARRAY aipSecondaries;
   PDNS_ADDR_ARRAY aipNotify;
   DWORD fUseWins;
   DWORD fUseNbstat;
   DWORD fAging;
   DWORD dwNoRefreshInterval;
   DWORD dwRefreshInterval;
   DWORD dwAvailForScavengeTime;
   PDNS_ADDR_ARRAY aipScavengeServers;
   DWORD dwForwarderTimeout;
   DWORD fForwarderSlave;
   PDNS_ADDR_ARRAY aipLocalMasters;
   DWORD dwDpFlags;
   [string] char* pszDpFqdn;
   [string] wchar_t* pwszZoneDn;
   DWORD dwLastSuccessfulSoaCheck;
   DWORD dwLastSuccessfulXfr;
   DWORD fQueuedForBackgroundLoad;
   DWORD fBackgroundLoadInProgress;
   BOOL fReadOnlyZone;
   DWORD dwLastXfrAttempt;
   DWORD dwLastXfrResult;
 } DNS_RPC_ZONE_INFO_LONGHORN,
  *PDNS_RPC_ZONE_INFO_LONGHORN,
  DNS_RPC_ZONE_INFO,
  *PDNS_RPC_ZONE_INFO;

dwRpcStructureVersion: The DNS server management structure version number. It SHOULD<43> be set to 0x00000002.

aipMasters: A pointer to a structure of type DNS_ADDR_ARRAY (section 2.2.3.2.3) that specifies a list of IP addresses of the remote DNS servers that can be sources of information for this zone on which to perform zone transfers by a secondary. This value is applicable for secondary, stub and forwarder zones only and MUST be NULL for all other zone types.

aipSecondaries: A pointer to a structure of type DNS_ADDR_ARRAY (section 2.2.3.2.3) that specifies a list of IP addresses of the remote DNS servers that are secondary DNS servers for this zone, or NULL if there are no secondary DNS servers. If fSecureSecondaries is set to ZONE_SECSECURE_LIST_ONLY, then only zone transfers from IP addresses in this list will be honored.

aipNotify: A pointer to a structure of type DNS_ADDR_ARRAY (section 2.2.3.2.3) that specifies a list of IP addresses of the remote DNS servers that are secondaries for this zone, for which this DNS server is acting as master and the DNS server will send zone notifications to these secondary servers, as directed by the value of fNotifyLevel above.

aipScavengeServers: A pointer to a structure of type DNS_ADDR_ARRAY (section 2.2.3.2.3) that specifies a list of IP addresses of the DNS servers that will perform scavenging for this zone. This value is applicable for zones of type DNS_ZONE_TYPE_PRIMARY (section 2.2.5.1.1) only. If this value is NULL, there are no restrictions on which DNS server can perform scavenging for this zone.

aipLocalMasters: A pointer to a structure of type DNS_ADDR_ARRAY (section 2.2.3.2.3) that specifies a list of IP addresses of primary DNS servers for this zone. If this value is not NULL then it overrides the masters servers list configured in the directory server.

fQueuedForBackgroundLoad: This MUST be set to 0x00000001 if this zone is has not yet been loaded from persistent storage.

fBackgroundLoadInProgress: This MUST be set to 0x00000001 if this zone is currently being loaded from persistent storage, or 0x00000000 if it has been loaded.

fReadOnlyZone: This MUST be set to 0x00000001 if this zone is backed by a read-only store that will not accept write operations, or 0x00000000 if not.

dwLastXfrAttempt: The time-stamp at which last zone transfer was attempted by a DNS server. This field is applicable only for zones which are secondary or not-authoritative. For all other zones senders MUST set this value to zero and receivers MUST ignore it.

dwLastXfrResult: The result of the last zone transfer attempted by server. This field is applicable only for zones which are secondary or not-authoritative, and in this case it MUST be either a Win32 error code, or 0xFFFFFFFF to indicate that a zone transfer is currently in progress. For all other zones senders MUST set this value to zero and receivers MUST ignore it.