DNS_TKEY_DATA structure

The DNS_TKEY_DATA structure represents a DNS TKEY resource record, used to establish and delete an algorithm's shared-secret keys between a DNS resolver and server as specified in RFC 2930.

Syntax


typedef struct {
  PWSTR pNameAlgorithm;
  PBYTE pAlgorithmPacket;
  PBYTE pKey;
  PBYTE pOtherData;
  DWORD dwCreateTime;
  DWORD dwExpireTime;
  WORD  wMode;
  WORD  wError;
  WORD  wKeyLength;
  WORD  wOtherLength;
  UCHAR cAlgNameLength;
  BOOL  bPacketPointers;
} DNS_TKEY_DATA, *PDNS_TKEY_DATA;

Members

pNameAlgorithm

A pointer to a string that represents the name of the key as defined in section 2.1 of RFC 2930.

pAlgorithmPacket

A pointer to a string representing the name of the algorithm as defined in section 2.3 of RFC 2930. pKey is used to derive the algorithm specific keys.

pKey

A pointer to the variable-length shared-secret key.

pOtherData

Reserved. Do not use.

dwCreateTime

The date and time at which the key was created, expressed in seconds since the beginning of January 1, 1970, Greenwich Mean Time (GMT), excluding leap seconds.

dwExpireTime

The expiration date of the key, expressed in seconds since the beginning of January 1, 1970, Greenwich Mean Time (GMT), excluding leap seconds.

wMode

A scheme used for key agreement or the purpose of the TKEY DNS Message. Possible values for wMode are listed below:

ValueMeaning
DNS_TKEY_MODE_SERVER_ASSIGN

The key is assigned by the DNS server and is not negotiated.

DNS_TKEY_MODE_DIFFIE_HELLMAN

The Diffie-Hellman key exchange algorithm is used to negotiate the key.

DNS_TKEY_MODE_GSS

The key is exchanged through Generic Security Services-Application Program Interface (GSS-API) negotiation.

DNS_TKEY_MODE_RESOLVER_ASSIGN

The key is assigned by the DNS resolver and is not negotiated.

 

wError

An error, expressed in expanded RCODE format that covers TSIG and TKEY RR processing.

ValueMeaning
DNS_RCODE_BADSIG

The pSignature of the DNS_TSIG_DATA RR is bad.

DNS_RCODE_BADKEY

The pKey field is bad.

DNS_RCODE_BADTIME

A timestamp is bad.

 

wKeyLength

Length, in bytes, of the pKey member.

wOtherLength

The length, in bytes, of the pOtherData member.

cAlgNameLength

The length, in bytes, of the pNameAlgorithm member.

bPacketPointers

Reserved. Do not use.

Remarks

The DNS_TKEY_DATA structure is used in conjunction with the DNS_RECORD structure to programmatically manage DNS entries.

Requirements

Minimum supported client

Windows 2000 Professional [desktop apps only]

Minimum supported server

Windows 2000 Server [desktop apps only]

Header

Windns.h

See also

DNS_RECORD
DNS_TSIG_DATA

 

 

Community Additions

ADD
Show: