Product Documentation

IPV6_ADDRESS_AT

Sep 12, 2016

Provides operations for the 128-bit IPv6 address value. Some general information regarding IPv6 expressions:
IPv6 PIXL expressions can be combined with other PIXL expressions using the '+' operator. The output is expected to be the concatenation of the string representations of the individual PIXL expressions. No other operator other than '+' is expected to work when any of the operands is an IPv6 PIXL expression. Also, IPv6 PIXL expressions can be combined with any other type of PIXL expression except a PIXL expression that produces a bool result. In other words, if A and/or B are two IPv6 addresses, A+B should result in the string AB. When one of A or B is an IPv6 address, the other can only be a number or a string and not a boolean. Further, when A and/or B is an IPv6 address, the only operator allowed between them is '+'.

Example: Let the client source IPv6 address be ABCD:1234::ABCD. Let the server destination IPv4 address be 10.100.10.100. Then the expression CLIENT.IPV6.SRC + SERVER.IP.DST should produce the output "ABCD:1234::ABCD10.100.10.100".
Similarly, CLIENT.IPV6.SRC + 5 should produce the result ABCD:1234::ABCD5

This topic lists the expressions that are provided by this class.

APPEND (text_t str)

Appends the given string to the string representation of the current IPv6 address.

Parameters:

str - the string to append.

Returns: text_t

APPLY_MASK (ipv6_address_at i)

Returns IPV6 Address Value after applying subnet mask which can take values between 0.0.0.0.0.0.0.0 and ffff:ffff:ffff:ffff:ffff:ffff:ffff:ffff

Parameters (expressions not allowed):

i - IP Address

Returns: ipv6_address_at

EQ (ipv6_address_at i)

Returns Boolean TRUE if the IP address value is same as the argument. IPv6 Address specified in one of the valid IPv6 forms like CLIENT.IPV6.DST.EQ(1000:1001:CD10:0000:0000:89AB:4567:CDEF). All valid forms of specifying an IPv6 address are supported.

Parameters (expressions not allowed):

i - IP Address

Returns: bool_at

GET1

If the IP address in the current context is 1000:1001:CD10:0000:0000:89AB:4567:CDEF then it will return 1000, the first set of 128 bits of the IP address. The IPv6 address is printed using hexadecimal digits. If the Client's IPv6 address is 2058:2::230:3a5a then CLIENT.IPV6.SRC.GET1.EQ(0x2058) will return true.

Returns: num_at

GET2

If the IP address in the current context is 1000:1001:CD10:0000:0000:89AB:4567:CDEF then it will return 1001, the second set of 128 bits of the IP address. The IPv6 address is printed using hexadecimal digits. If the Client's IPv6 address is 2058:2::230:3a5a then CLIENT.IPV6.SRC.GET2.EQ(0x2) will return true.

Returns: num_at

GET3

If the IP address in the current context is 1000:1001:CD10:0000:0000:89AB:4567:CDEF then it will return CD10, the third set of 128 bits of the IP address. The IPv6 address is printed using hexadecimal digits. If the Client's IPv6 address is 2058:2::230:3a5a then CLIENT.IPV6.SRC.GET3.EQ(0x0) will return true.

Returns: num_at

GET4

If the IP address in the current context is 1000:1001:CD10:0000:0000:89AB:4567:CDEF then it will return 0000, the fourth set of 128 bits of the IP address. The IPv6 address is printed using hexadecimal digits. If the Client's IPv6 address is 2058:2::230:3a5a then CLIENT.IPV6.SRC.GET4.EQ(0x0) will return true.

Returns: num_at

GET5

If the IP address in the current context is 1000:1001:CD10:0000:0000:89AB:4567:CDEF then it will return 0000, the fifth set of 128 bits of the IP address. The IPv6 address is printed using hexadecimal digits. If the Client's IPv6 address is 2058:2::230:3a5a then CLIENT.IPV6.SRC.GET5.EQ(0x0) will return true.

Returns: num_at

GET6

If the IP address in the current context is 1000:1001:CD10:0000:0000:89AB:4567:CDEF then it will return 89AB, the sixth set of 128 bits of the IP address. The IPv6 address is printed using hexadecimal digits. If the Client's IPv6 address is 2058:2::230:3a5a then CLIENT.IPV6.SRC.GET6.EQ(0x0) will return true.

Returns: num_at

GET7

If the IP address in the current context is 1000:1001:CD10:0000:0000:89AB:4567:CDEF then it will return 4567, the seventh set of 128 bits of the IP address. The IPv6 address is printed using hexadecimal digits. If the Client's IPv6 address is 2058:2::230:3a5a then CLIENT.IPV6.SRC.GET7.EQ(0x230) will return true.

Returns: num_at

GET8

If the IP address in the current context is 1000:1001:CD10:0000:0000:89AB:4567:CDEF then it will return CDEF, the eighth set of 128 bits of the IP address. The IPv6 address is printed using hexadecimal digits. If the Client's IPv6 address is 2058:2::230:3a5a then CLIENT.IPV6.SRC.GET8.EQ(0x3a5a) will return true.

Returns: num_at

IN_SUBNET (ipv6_subnet_at s)

Returns Boolean TRUE if the IP address value is in the subnet specified by the argument. IPv6 Subnet specified in one of the valid IPv6 forms like CLIENT.IPV6.DST.EQ(1000:1001:CD10:0000:0000:89AB:4567:CDEF/60). All valid forms of specifying an IPv6 address are supported.

Parameters (expressions not allowed):

s - IP Subnet

Returns: bool_at

IS_IPV4

Returns TRUE or FALSE depending on whether this is an IPv4 client.

Returns: bool_at

MATCHES (text_t hostname)

Returns Boolean TRUE if hostname IPV6 address matches the current IPV6 address. The hostname string cannot be bigger than 255 characters.

Parameters (expressions not allowed):

hostname - HostName

Returns: bool_at

NE (ipv6_address_at i)

Returns Boolean TRUE if the IP address value is not same as the argument. IPv6 Address specified in one of the valid IPv6 forms like CLIENT.IPV6.DST.EQ(1000:1001:CD10:0000:0000:89AB:4567:CDEF). All valid forms of specifying an IPv6 address are supported.

Parameters (expressions not allowed):

i - IP Address

Returns: bool_at

SUBNET (num_at n)

Returns IPV6 Address Value after applying the subnet which can take values between 0 and 128.
For Example: CLIENT.IPV6.SRC.SUBNET(24)

Parameters (expressions not allowed):

n - Subnet value. It can take values between 0 and 128.

Returns: ipv6_address_at

TYPECAST_TEXT_T

Typecast the IPv6 Address Value to its string representation.

Returns: text_t