2.2.1.2.8 FILTER_INFO_V6

The FILTER_INFO_V6 structure SHOULD<24> specify the five-tuple filters to be used in FILTER_DESCRIPTOR_V6 (section 2.2.1.2.7).

 typedef struct _FILTER_INFO_V6 {
   BYTE ipv6SrcAddr[16];
   DWORD dwSrcPrefixLength;
   BYTE ipv6DstAddr[16];
   DWORD dwDstPrefixLength;
   DWORD dwProtocol;
   DWORD fLateBound;
   WORD wSrcPort;
   WORD wDstPort;
 } FILTER_INFO_V6,
  *PFILTER_INFO_V6;

ipv6SrcAddr: A 128-bit, unsigned integer in network byte order that MUST contain the IPv6 source address for which the filter applies. A value of zero (0) in this field signifies ANY.

dwSrcPrefixLength: A 32-bit, unsigned integer in network byte order that MUST be the prefix length for the source address. A value of zero (0) in this field signifies ANY source address.

ipv6DstAddr: A 128-bit, unsigned integer in network byte order that MUST contain the IPv6 destination address for the filter. A value of zero (0) in this field signifies ANY.

dwDstPrefixLength: A 32-bit, unsigned integer in network byte order that MUST be the prefix length for the destination address. A value of zero (0) in this field signifies ANY destination address.

dwProtocol: A 32-bit, unsigned integer in network byte order that specifies the protocol number (such as TCP or UDP) for the filter.

Possible values include the following.

Value

Meaning

0x00000000

ANY

0x00000001

ICMP

0x0000003A

ICMPv6

0x00000006

TCP

0x00000011

UDP

fLateBound: A 32-bit, unsigned integer in network byte order that indicates if the fields in the filter can be dynamically replaced by the network access server (NAS) with values for specific endpoints.

The value MUST be one of the following values, or a bit-wise OR a combination of the following values.

Value

Meaning

0x00000000

No source or destination address or mask replacement.

0x00000001

Source address replaceable with a new address.

0x00000004

Destination address replaceable with a new address.

0x00000010

Source address mask replaceable with a new mask.

0x00000020

Destination address mask replaceable with a new mask.

wSrcPort: If the protocol is TCP or UDP, this MUST be a 16-bit, unsigned integer in network byte order that specifies a port number for the corresponding protocol. If the protocol is ICMP or ICMPv6, this MUST be a 16-bit, unsigned integer in network byte order that specifies a type indicator for ICMP or ICMPv6 correspondingly. For all other protocol values, this MUST be set to 0 (byte order does not matter).

wDstPort: If the protocol is TCP or UDP, this MUST be a 16-bit, unsigned integer in network byte order that specifies a port number for the corresponding protocol. If the protocol is ICMP or ICMPv6, this MUST be a 16-bit, unsigned integer in network byte order that specifies a code indicator for ICMP or ICMPv6 correspondingly. For all other protocol values, this MUST be set to 0 (byte order does not matter).