RASPPP_PROJECTION_INFO

RASPPP_PROJECTION_INFO structure

The RASPPP_PROJECTION_INFO structure contains information obtained during Point-to-Point (PPP) negotiation of Internet Protocol version 4 (IPv4) and IPv6 projection operations, and PPP Link Control Protocol (LCP)/multilink, and Compression Control Protocol (CCP) negotiation.

Syntax


typedef struct _RASPPP_PROJECTION_INFO {
  DWORD       dwIPv4NegotiationError;
  RASIPV4ADDR ipv4Address;
  RASIPV4ADDR ipv4ServerAddress;
  DWORD       dwIPv4Options;
  DWORD       dwIPv4ServerOptions;
  DWORD       dwIPv6NegotiationError;
  BYTE        bInterfaceIdentifier[8];
  BYTE        bServerInterfaceIdentifier[8];
  BOOL        fBundled;
  BOOL        fMultilink;
  DWORD       dwAuthenticationProtocol;
  DWORD       dwAuthenticationData;
  DWORD       dwServerAuthenticationProtocol;
  DWORD       dwServerAuthenticationData;
  DWORD       dwEapTypeId;
  DWORD       dwServerEapTypeId;
  DWORD       dwLcpOptions;
  DWORD       dwLcpServerOptions;
  DWORD       dwCcpCompressionAlgorithm;
  DWORD       dwCcpServerCompressionAlgorithm;
  DWORD       dwCcpOptions;
  DWORD       dwCcpServerOptions;
} RASPPP_PROJECTION_INFO, *RASPPP_PROJECTION_INFO;

Members

dwIPv4NegotiationError

A value that specifies the result of PPP IPv4 network control protocol negotiation. A value of zero indicates Ipv4 has been negotiated successfully. A nonzero value indicates failure, and is the fatal error that occurred during the control protocol negotiation.

ipv4Address

A RASIPV4ADDR that contains a null-terminated Unicode string that specifies the IPv4 address of the local client. This string has the form "a.b.c.d". ipv4Address is valid only if dwIPv4NegotiationError is zero.

ipv4ServerAddress

A RASIPV4ADDR structure that contains a Unicode string that specifies the IPv4 address of the remote server. This string has the form "a.b.c.d". ipv4ServerAddress is valid only if dwIPv4NegotiationError is zero. If the address is not available, this member is an empty string.

dwIPv4Options

A value that specifies Internet Protocol Control Protocol (IPCP) options for the local client.

ValueMeaning
RASIPO_VJ

Indicates that IP datagrams sent by the local client are compressed using Van Jacobson compression.

 

dwIPv4ServerOptions

A value that specifies IPCP options for the remote server.

ValueMeaning
RASIPO_VJ

Indicates that IP datagrams sent by the remote server (that is, received by the local computer) are compressed using Van Jacobson compression.

 

dwIPv6NegotiationError

A value that specifies the result of PPP IPv6 network control protocol negotiation. A value of zero indicates Ipv6 has been negotiated successfully. A nonzero value indicates failure, and is the fatal error that occurred during the control protocol negotiation.

bInterfaceIdentifier

An array that specifies the 64-bit IPv6 interface identifier of the client. The last 64 bits of a 128-bit IPv6 internet address are considered the "interface identifier," which provides a strong level of uniqueness for the preceding 64-bits. bInterfaceIdentifier must not be zero and is valid only if dwIPv6NegotiationError is zero.

bServerInterfaceIdentifier

An array that specifies the 64-bit IPv6 interface identifier of the server. The last 64 bits of a 128-bit IPv6 internet address are considered the "interface identifier," which provides a strong level of uniqueness for the preceding 64-bits. bServerInterfaceIdentifier must not be zero and is valid only if dwIPv6NegotiationError is zero.

fBundled

A BOOL that is TRUE if the connection is composed of multiple links and FALSE otherwise.

fMultilink

A BOOL that is TRUE if the connection supports multiple links and FALSE otherwise.

dwAuthenticationProtocol

A value that specifies the authentication protocol used to authenticate the local client. This member can be one of the following values.

ValueMeaning
RASLCPAP_PAP

Password Authentication Protocol.

RASLCPAP_SPAP

Shiva Password Authentication Protocol.

RASLCPAP_CHAP

Challenge Handshake Authentication Protocol.

RASLCPAP_EAP

Extensible Authentication Protocol.

 

dwAuthenticationData

A value that specifies additional information about the authentication protocol specified by dwAuthenticationProtocol. dwAuthenticationData and dwServerAuthenticationData when different authentication protocols on the client and server. This member can be one of the following values:

ValueMeaning
RASLCPAD_CHAP_MD5

MD5 CHAP.

RASLCPAD_CHAP_MS

Microsoft CHAP.

RASLCPAD_CHAP_MSV2

Microsoft CHAP version 2.

 

dwServerAuthenticationProtocol

A value that specifies the authentication protocol used to authenticate the remote server. This member can be one of the following values:

ValueMeaning
RASLCPAP_PAP

Password Authentication Protocol.

RASLCPAP_SPAP

Shiva Password Authentication Protocol.

RASLCPAP_CHAP

Challenge Handshake Authentication Protocol.

RASLCPAP_EAP

Extensible Authentication Protocol.

 

dwServerAuthenticationData

A value that specifies additional information about the authentication protocol specified by dwServerAuthenticationProtocol. dwAuthenticationData and dwServerAuthenticationData when different authentication protocols on the client and server. This member can be one of the following values:

ValueMeaning
RASLCPAD_CHAP_MD5

MD5 CHAP.

RASLCPAD_CHAP_MS

Microsoft CHAP.

RASLCPAD_CHAP_MSV2

Microsoft CHAP version 2.

 

dwEapTypeId

A value that specifies the type identifier of the Extensible Authentication Protocol (EAP) used to authenticate the local client. The value of this member is valid only if dwAuthenticationProtocol is RASLCPAPP_EAP..

dwServerEapTypeId

A value that specifies the type identifier of the Extensible Authentication Protocol (EAP) used to authenticate the remote server. The value of this member is valid only if dwRemoteAuthenticationProtocol is RASLCPAPP_EAP..

dwLcpOptions

A value that specifies information about LCP options in use by the local client. This member is a combination of the following flags:

ValueMeaning
RASLCPO_PFC

The connection is using Protocol Field Compression (RFC 1172).

RASLCPO_ACFC

The connection is using Address and Control Field Compression (RFC 1172).

RASLCPO_SSHF

The connection is using Short Sequence Number Header Format (see RFC 1990).

RASLCPO_DES_56

The connection is using DES 56-bit encryption.

RASLCPO_3_DES

The connection is using Triple DES Encryption.

 

dwLcpServerOptions

A value that specifies information about LCP options in use by the remote server. This member is a combination of the following flags:

ValueMeaning
RASLCPO_PFC

The connection is using Protocol Field Compression (RFC 1172).

RASLCPO_ACFC

The connection is using Address and Control Field Compression (RFC 1172).

RASLCPO_SSHF

The connection is using Short Sequence Number Header Format (see RFC 1990).

RASLCPO_DES_56

The connection is using DES 56-bit encryption.

RASLCPO_3_DES

The connection is using Triple DES Encryption.

 

dwCcpCompressionAlgorithm

A value that specifies the compression algorithm used by the local client. The following table shows the possible values for this member.

ValueMeaning
RASCCPCA_MPPC

Microsoft Point-to-Point Compression (MPPC) Protocol (RFC 2118).

RASCCPCA_STAC

STAC option 4 (RFC 1974).

 

dwCcpServerCompressionAlgorithm

A value that specifies the compression algorithm used by the remote server. The following algorithms are supported:

ValueMeaning
RASCCPCA_MPPC

Microsoft Point-to-Point Compression (MPPC) Protocol ( RFC 2118).

RASCCPCA_STAC

STAC option 4 ( RFC 1974).

 

dwCcpOptions

A value that specifies the compression types available on the local client. The following types are supported:

ValueMeaning
RASCCPO_COMPRESSION

Compression without encryption.

RASCCPO_HISTORYLESS

Microsoft Point-to-Point Encryption (MPPE) in stateless mode. The session key is changed after every packet. This mode improves performance on high latency networks, or networks that experience significant packet loss.

RASCCPO_ENCRYPTION40BITOLD

MPPE compression using 40-bit keys.

RASCCPO_ENCRYPTION40BIT

MPPE compression using 40-bit keys.

RASCCPO_ENCRYPTION56BIT

MPPE compression using 56-bit keys.

RASCCPO_ENCRYPTION128BIT

MPPE compression using 128-bit keys.

 

dwCcpServerOptions

A value that specifies the compression types available on the remote server. The following types are supported:

ValueMeaning
RASCCPO_COMPRESSION

Compression without encryption.

RASCCPO_HISTORYLESS

Microsoft Point-to-Point Encryption (MPPE) in stateless mode. The session key is changed after every packet. This mode improves performance on high latency networks, or networks that experience significant packet loss.

RASCCPO_ENCRYPTION40BITOLD

MPPE compression using 40-bit keys.

RASCCPO_ENCRYPTION40BIT

MPPE compression using 40-bit keys.

RASCCPO_ENCRYPTION56BIT

MPPE compression using 56-bit keys.

RASCCPO_ENCRYPTION128BIT

MPPE compression using 128-bit keys.

 

Requirements

Minimum supported client

Windows 7 [desktop apps only]

Minimum supported server

Windows Server 2008 R2 [desktop apps only]

Header

Ras.h

See also

Remote Access Service (RAS) Overview
Remote Access Service Structures
RasGetProjectionInfoEx

 

 

Community Additions

ADD
Show:
© 2016 Microsoft