2.2.2.49 TSVIPAddress

The TSVIPAddress structure defines a session's IP address.

 typedef  struct  _TSVIPAddress {
     DWORD             dwVersion;   //Structure version
     TSVIP_SOCKADDR    IPAddress;    //IPv4 is in network byte order.
     ULONG             PrefixOrSubnetMask;    //IPv4 is a mask in network byte order,
 #ifdef  __midl                                //IPv6 is prefix length.
     [range(0, TSVIP_MAX_ADAPTER_ADDRESS_LENGTH)]  
       UINT            PhysicalAddressLength;
     [length_is(PhysicalAddressLength)] 
       BYTE  PhysicalAddress[TSVIP_MAX_ADAPTER_ADDRESS_LENGTH];
 #else
     UINT              PhysicalAddressLength;
     BYTE              PhysicalAddress[TSVIP_MAX_ADAPTER_ADDRESS_LENGTH];
 #endif
     ULONG             LeaseExpires;
     ULONG             T1;
     ULONG             T2;
 }  TSVIPAddress,
    *PTSVIPAddress;

dwVersion: Specifies the current TSVIPAddress structure version. This field MUST be set to 0x01, the only supported version.

IPAddress: Specifies the IP address.

PrefixOrSubnetMask: Subnet mask of the IP address.

PhysicalAddressLength: Number of bytes in the PhysicalAddress.

Where TSVIP_MAX_ADAPTER_ADDRESS_LENGTH is defined as

 #define   TSVIP_MAX_ADAPTER_ADDRESS_LENGTH    16

PhysicalAddress: The MAC address used to acquire the IP address.

LeaseExpires: The lease expiration time for the IP address.

T1: The time at which a request to renew the IP address will be made.

T2: Not used.