(mprapi.h) PPP_PROJECTION_INFO 结构
PPP_PROJECTION_INFO 结构包含针对安全套接字隧道协议 (SSTP) 、点到点隧道协议 (PPTP) 以及第 2 层隧道协议 (L2TP) 进行点到点 (PPP) 协商期间获取的信息。
语法
typedef struct _PPP_PROJECTION_INFO {
DWORD dwIPv4NegotiationError;
WCHAR wszAddress[IPADDRESSLEN + 1];
WCHAR wszRemoteAddress[IPADDRESSLEN + 1];
DWORD dwIPv4Options;
DWORD dwIPv4RemoteOptions;
ULONG64 IPv4SubInterfaceIndex;
DWORD dwIPv6NegotiationError;
BYTE bInterfaceIdentifier[8];
BYTE bRemoteInterfaceIdentifier[8];
BYTE bPrefix[8];
DWORD dwPrefixLength;
ULONG64 IPv6SubInterfaceIndex;
DWORD dwLcpError;
DWORD dwAuthenticationProtocol;
DWORD dwAuthenticationData;
DWORD dwRemoteAuthenticationProtocol;
DWORD dwRemoteAuthenticationData;
DWORD dwLcpTerminateReason;
DWORD dwLcpRemoteTerminateReason;
DWORD dwLcpOptions;
DWORD dwLcpRemoteOptions;
DWORD dwEapTypeId;
DWORD dwRemoteEapTypeId;
DWORD dwCcpError;
DWORD dwCompressionAlgorithm;
DWORD dwCcpOptions;
DWORD dwRemoteCompressionAlgorithm;
DWORD dwCcpRemoteOptions;
} PPP_PROJECTION_INFO, *PPPP_PROJECTION_INFO;
成员
dwIPv4NegotiationError
一个 值,该值指定 PPP IPv4 网络控制协议协商的结果。 值为零表示已成功协商 Ipv4。 非零值表示失败,是控制协议协商期间发生的严重错误。
wszAddress[IPADDRESSLEN + 1]
一个数组,其中包含一个 Unicode 字符串,该字符串指定本地客户端的 IPv4 地址。 此字符串的格式为“a.b.c.d”。 wszAddress 仅在 dwIPv4NegotiationError 为零时才有效。
wszRemoteAddress[IPADDRESSLEN + 1]
包含 Unicode 字符串的数组,该字符串指定远程服务器的 IPv4 地址。 此字符串的格式为“a.b.c.d”。 wszRemoteAddress 仅当 dwIPv4NegotiationError 为零时有效。 如果地址不可用,则此成员为空字符串。
dwIPv4Options
一个 值,该值指定本地客户端的 IPCP 选项。
值 | 含义 |
---|---|
|
指示使用 Van Jacobson 压缩压缩本地客户端发送的 IP 数据报。 |
dwIPv4RemoteOptions
一个 值,该值指定远程服务器的 IPCP 选项。
值 | 含义 |
---|---|
|
指示远程服务器发送的 IP 数据报 (即本地计算机接收) 使用 Van Jacobson 压缩进行压缩。 |
IPv4SubInterfaceIndex
一个 值,该值指定与服务器上的连接相对应的 IPv4 子接口索引。
dwIPv6NegotiationError
一个 值,该值指定 PPP IPv6 网络控制协议协商的结果。 值为零表示已成功协商 Ipv6。 非零值表示失败,是控制协议协商期间发生的严重错误。
bInterfaceIdentifier[8]
一个数组,指定客户端的 64 位 IPv6 接口标识符。 128 位 IPv6 Internet 地址的最后 64 位被视为“接口标识符”,这为前面的 64 位提供了强大的唯一性级别。 bInterfaceIdentifier 仅在 dwIPv6NegotiationError 为零且不得为零时有效。
bRemoteInterfaceIdentifier[8]
一个数组,指定服务器的 64 位 IPv6 接口标识符。 128 位 IPv6 Internet 地址的最后 64 位被视为“接口标识符”,这为前面的 64 位提供了强大的唯一性级别。 bInterfaceIdentifier 仅在 dwIPv6NegotiationError 为零且不得为零时有效。
bPrefix[8]
一个 指定客户端接口 IPv6 地址前缀的值。
dwPrefixLength
一个 值,该值指定 bPrefix 的长度(以位为单位)。
IPv6SubInterfaceIndex
一个 值,该值指定与服务器上的连接相对应的 IPv6 子接口索引。
dwLcpError
一个 值,该值指定 PPP LCP 协商的结果。 值为零表示已成功协商 LCP。 非零值表示失败,是控制协议协商期间发生的严重错误。
dwAuthenticationProtocol
一个 值,该值指定用于对本地客户端进行身份验证的身份验证协议。 此成员可以是以下值之一。
值 | 含义 |
---|---|
|
密码身份验证协议。 |
|
质询握手身份验证协议。 |
|
可扩展身份验证协议。 |
dwAuthenticationData
一个 值,该值指定由 dwAuthenticationProtocol 指定的身份验证协议的其他信息。 此成员可以是以下值之一:
值 | 含义 |
---|---|
|
MD5 CHAP |
|
Microsoft CHAP。 |
|
Microsoft CHAP 版本 2。 |
dwRemoteAuthenticationProtocol
一个 值,该值指定用于对远程服务器进行身份验证的身份验证协议。 当需求拨号在客户端和服务器上使用不同的身份验证协议时,dwAuthenticationProtocol 和 dwRemoteAuthenticationProtocol 将有所不同。 此成员可以是以下值之一:
值 | 含义 |
---|---|
|
密码身份验证协议。 |
|
质询握手身份验证协议。 |
|
可扩展身份验证协议。 |
dwRemoteAuthenticationData
一个 值,该值指定由 dwRemoteAuthenticationProtocol 指定的身份验证协议的其他信息。 当请求拨号在客户端和服务器上使用不同的身份验证协议时,dwAuthenticationData 和 dwRemoteAuthenticationData 将有所不同。 此成员可以是以下值之一:
值 | 含义 |
---|---|
|
MD5 CHAP。 |
|
Microsoft CHAP。 |
|
Microsoft CHAP 版本 2。 |
dwLcpTerminateReason
保留供将来使用。 必须为零。
dwLcpRemoteTerminateReason
保留供将来使用。 必须为零。
dwLcpOptions
一个 值,该值指定有关本地客户端正在使用的 LCP 选项的信息。 此成员是以下标志的组合:
值 | 含义 |
---|---|
|
连接使用多链接。 |
|
连接使用协议字段压缩 (RFC 1172) 。 |
|
连接使用地址和控制字段压缩 (RFC 1172) 。 |
|
连接使用短序列号标头格式 (请参阅 RFC 1990) 。 |
|
连接使用 DES 56 位加密。 |
|
连接使用三重 DES 加密。 |
|
连接使用 128 位 AES 加密。 |
|
连接使用 256 位 AES 加密。 |
dwLcpRemoteOptions
一个 值,该值指定远程服务器正在使用的 LCP 选项的相关信息。 此成员是以下标志的组合:
值 | 含义 |
---|---|
|
连接使用多链接。 |
|
连接使用协议字段压缩 (RFC 1172) 。 |
|
连接使用地址和控制字段压缩 (RFC 1172) 。 |
|
连接使用短序列号标头格式 (请参阅 RFC 1990) 。 |
|
连接使用 DES 56 位加密。 |
|
连接使用三重 DES 加密。 |
|
连接使用 128 位 AES 加密 |
|
连接使用 256 位 AES 加密。 |
dwEapTypeId
一个 值,该值指定用于对本地客户端进行身份验证的可扩展身份验证协议 (EAP) 的类型标识符。 仅当PPP_LCP_EAP dwAuthenticationProtocol 时,此成员的值才有效。
dwRemoteEapTypeId
一个 值,该值指定用于对远程服务器进行身份验证的可扩展身份验证协议 (EAP) 的类型标识符。 仅当PPP_LCP_EAP dwRemoteAuthenticationProtocol 时,此成员的值才有效。
dwCcpError
一个 值,该值指定 PPP CCP 协商的结果。 值为零表示已成功协商 CCP。 非零值表示失败,是控制协议协商期间发生的严重错误。
dwCompressionAlgorithm
一个 值,该值指定本地客户端使用的压缩算法。 下表显示了此成员的可能值。
值 | 含义 |
---|---|
|
Microsoft 点到点压缩 (MPPC) 协议 (RFC 2118) 。 |
|
STAC 选项 4 (RFC 1974) 。 |
dwCcpOptions
一个 值,该值指定本地客户端上可用的压缩类型。 支持以下类型:
当通过第 2 层隧道协议 (L2TP) 建立连接并且连接使用 IPSec 加密时,将使用最后三个选项。
dwRemoteCompressionAlgorithm
一个 值,该值指定远程服务器使用的压缩算法。 支持以下算法:
值 | 含义 |
---|---|
|
Microsoft 点到点压缩 (MPPC) 协议 ( RFC 2118) 。 |
|
STAC 选项 4 ( RFC 1974) 。 |
dwCcpRemoteOptions
一个 值,该值指定远程服务器上可用的压缩类型。 支持以下类型:
当通过第 2 层隧道协议 (L2TP) 建立连接并且连接使用 IPSec 加密时,将使用最后三个选项。
要求
要求 | 值 |
---|---|
最低受支持的客户端 | 无受支持的版本 |
最低受支持的服务器 | Windows Server 2008 R2 [仅限桌面应用] |
标头 | mprapi.h |