(windns.h) DNS_TSIG_DATAW 结构

DNS_TSIG_DATA 结构表示密钥事务身份验证 (TSIG) 资源记录 (RFC 2845 和 RFC3645 中指定的 RR) 。

语法

typedef struct {
  PWSTR    pNameAlgorithm;
  PBYTE    pAlgorithmPacket;
  PBYTE    pSignature;
  PBYTE    pOtherData;
  LONGLONG i64CreateTime;
  WORD     wFudgeTime;
  WORD     wOriginalXid;
  WORD     wError;
  WORD     wSigLength;
  WORD     wOtherLength;
  UCHAR    cAlgNameLength;
  BOOL     bPacketPointers;
} DNS_TSIG_DATAW, *PDNS_TSIG_DATAW;

成员

pNameAlgorithm

指向字符串的指针,该字符串表示用于生成 RFC 2845 第 2.3 节中定义的 pSignature 的键的名称。

pAlgorithmPacket

指向字符串的指针,该字符串表示用于生成 RFC 2845 第 2.3 节中定义的 pSignature 的算法的名称。

含义
“gss.microsoft.com”
仅限 Windows 2000 Server: RFC 3645 中定义的用于 DNS (GSS-API) 密钥事务身份验证的通用安全服务算法。
“gss-tsig”
RFC 3645 中定义的用于 DNS (GSS-API) 的机密密钥事务身份验证的通用安全服务算法。

pSignature

指向 由 pAlgorithmPacket 中的算法生成的消息身份验证代码 (MAC) 指针。 pSignature 的长度、字节数和组合由 pAlgorithmPacket 确定。

pOtherData

如果 wError 包含 RCODE、 BADTIME则 pOtherData 是包含服务器的当前时间的 BYTE 数组,否则为 NULL。 时间以秒表示,自 1970 年 1 月 1 日开始,格林威治标准时间 (GMT) ,不包括闰秒。

i64CreateTime

生成 pSignature 的时间(以秒为单位),自 1970 年 1 月 1 日开始以来,格林威治标准时间 (GMT) ,不包括闰秒。

wFudgeTime

i64CreateTime 的时间(以秒为单位)可能出错。

wOriginalXid

原始消息的 Xid 标识符。

wError

错误,以涵盖 TSIG 和 TKEY RR 处理的扩展 RCODE 格式表示。

含义
DNS_RCODE_BADSIG
pSignature 字段不正确。
DNS_RCODE_BADKEY
DNS_TKEY_DATA RR 的 pKey 字段不正确。
DNS_RCODE_BADTIME
时间戳不正确。

wSigLength

pSignature 成员的长度(以字节为单位)。

wOtherLength

pOtherData 成员的长度(以字节为单位)。

cAlgNameLength

pAlgorithmPacket 成员的长度(以字节为单位)。

bPacketPointers

保留供将来使用。 请勿使用。

注解

DNS_TSIG_DATA 结构与 DNS_RECORD 结构结合使用,以编程方式管理 DNS 条目。

注意

windns.h 标头将DNS_TSIG_DATA定义为别名,该别名根据 UNICODE 预处理器常量的定义自动选择此函数的 ANSI 或 Unicode 版本。 将非特定编码别名的使用与非非特定编码的代码混合使用可能会导致不匹配,从而导致编译或运行时错误。 有关详细信息,请参阅 函数原型的约定

要求

要求
最低受支持的客户端 Windows 2000 Professional [仅限桌面应用]
最低受支持的服务器 Windows 2000 Server [仅限桌面应用]
标头 windns.h

另请参阅

DNS_RECORD

DNS_TKEY_DATA