Product Documentation

IP_ADDRESS_AT

Sep 12, 2016

Provides operations for the 32-bit integral IP address value.

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

Note: Expressions with the * symbol are inherited/promoted from num_at.

* ADD (double_at i)

Return the Double Value after adding the argument to the current double value.

Parameters:

i - Double

Returns: double_at

* ADD (ip_address_at i)

Return the Unsigned Long after adding the argument to the current unsigned long value.

Parameters:

i - Unsigned Long

Returns: unsigned_long_at

* ADD (unsigned_long_at i)

Return the Unsigned Long after adding the argument to the current unsigned long value.

Parameters:

i - Unsigned Long

Returns: unsigned_long_at

* ADD (num_at i)

Return the Number Value after adding the argument to the current number value.

Parameters:

i - Number

Returns: num_at

* ADD (time_at i)

Return the Unsigned Long after adding the argument to the current unsigned long value.

Parameters:

i - Unsigned Long

Returns: unsigned_long_at

APPEND (text_t str)

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

Parameters:

str - the string to append.

Returns: text_t

APPLY_MASK (ip_address_at i)

Returns IP Address Value after applying subnet mask which can take values between 0.0.0.0 and 255.255.255.255.

Parameters (expressions not allowed):

i - IP Address

Returns: ip_address_at

APPLY_MASK (num_at mask)

Returns IP Address Value after applying subnet mask which can take values between 0 and 0xffffffffUL.

Parameters (expressions not allowed):

mask - Subnet Mask

Returns: ip_address_at

APPLY_MASK (time_at mask)

Returns IP Address Value after applying subnet mask which can take values between 0 and 0xffffffffUL.

Parameters (expressions not allowed):

mask - Subnet Mask

Returns: ip_address_at

APPLY_MASK (unsigned_long_at mask)

Returns IP Address Value after applying subnet mask which can take values between 0 and 0xffffffffUL.

Parameters (expressions not allowed):

mask - Subnet Mask

Returns: ip_address_at

* BETWEEN (double_at i, double_at j)

Returns Boolean TRUE if the double value is greater than or equal to the Lower argument and the double value is lesser than or equal to the Upper argument.

Parameters:

i - Lower

j - Upper

Returns: bool_at

* BETWEEN (double_at i, ip_address_at j)

Returns Boolean TRUE if the double value is greater than or equal to the Lower argument and the double value is lesser than or equal to the Upper argument.

Parameters:

i - Lower

j - Upper

Returns: bool_at

* BETWEEN (double_at i, unsigned_long_at j)

Returns Boolean TRUE if the double value is greater than or equal to the Lower argument and the double value is lesser than or equal to the Upper argument.

Parameters:

i - Lower

j - Upper

Returns: bool_at

* BETWEEN (ip_address_at i, double_at j)

Returns Boolean TRUE if the double value is greater than or equal to the Lower argument and the double value is lesser than or equal to the Upper argument.

Parameters:

i - Lower

j - Upper

Returns: bool_at

* BETWEEN (ip_address_at i, ip_address_at j)

Returns Boolean TRUE if the unsigned long value is greater than or equal to the Lower argument and the unsigned long value is lesser than or equal to the Upper argument.

Parameters:

i - Lower

j - Upper

Returns: bool_at

* BETWEEN (ip_address_at i, unsigned_long_at j)

Returns Boolean TRUE if the unsigned long value is greater than or equal to the Lower argument and the unsigned long value is lesser than or equal to the Upper argument.

Parameters:

i - Lower

j - Upper

Returns: bool_at

* BETWEEN (unsigned_long_at i, double_at j)

Returns Boolean TRUE if the double value is greater than or equal to the Lower argument and the double value is lesser than or equal to the Upper argument.

Parameters:

i - Lower

j - Upper

Returns: bool_at

* BETWEEN (unsigned_long_at i, ip_address_at j)

Returns Boolean TRUE if the unsigned long value is greater than or equal to the Lower argument and the unsigned long value is lesser than or equal to the Upper argument.

Parameters:

i - Lower

j - Upper

Returns: bool_at

* BETWEEN (unsigned_long_at i, unsigned_long_at j)

Returns Boolean TRUE if the unsigned long value is greater than or equal to the Lower argument and the unsigned long value is lesser than or equal to the Upper argument.

Parameters:

i - Lower

j - Upper

Returns: bool_at

* BETWEEN (double_at i, num_at j)

Returns Boolean TRUE if the double value is greater than or equal to the Lower argument and the double value is lesser than or equal to the Upper argument.

Parameters:

i - Lower

j - Upper

Returns: bool_at

* BETWEEN (ip_address_at i, num_at j)

Returns Boolean TRUE if the unsigned long value is greater than or equal to the Lower argument and the unsigned long value is lesser than or equal to the Upper argument.

Parameters:

i - Lower

j - Upper

Returns: bool_at

* BETWEEN (unsigned_long_at i, num_at j)

Returns Boolean TRUE if the unsigned long value is greater than or equal to the Lower argument and the unsigned long value is lesser than or equal to the Upper argument.

Parameters:

i - Lower

j - Upper

Returns: bool_at

* BETWEEN (double_at i, time_at j)

Returns Boolean TRUE if the double value is greater than or equal to the Lower argument and the double value is lesser than or equal to the Upper argument.

Parameters:

i - Lower

j - Upper

Returns: bool_at

* BETWEEN (ip_address_at i, time_at j)

Returns Boolean TRUE if the unsigned long value is greater than or equal to the Lower argument and the unsigned long value is lesser than or equal to the Upper argument.

Parameters:

i - Lower

j - Upper

Returns: bool_at

* BETWEEN (unsigned_long_at i, time_at j)

Returns Boolean TRUE if the unsigned long value is greater than or equal to the Lower argument and the unsigned long value is lesser than or equal to the Upper argument.

Parameters:

i - Lower

j - Upper

Returns: bool_at

* BETWEEN (num_at i, double_at j)

Returns Boolean TRUE if the double value is greater than or equal to the Lower argument and the double value is lesser than or equal to the Upper argument.

Parameters:

i - Lower

j - Upper

Returns: bool_at

* BETWEEN (num_at i, ip_address_at j)

Returns Boolean TRUE if the unsigned long value is greater than or equal to the Lower argument and the unsigned long value is lesser than or equal to the Upper argument.

Parameters:

i - Lower

j - Upper

Returns: bool_at

* BETWEEN (num_at i, unsigned_long_at j)

Returns Boolean TRUE if the unsigned long value is greater than or equal to the Lower argument and the unsigned long value is lesser than or equal to the Upper argument.

Parameters:

i - Lower

j - Upper

Returns: bool_at

* BETWEEN (num_at i, num_at j)

Returns Boolean TRUE if the number value is greater than or equal to the Lower argument and the number value is lesser than or equal to the Upper argument.

Parameters:

i - Lower

j - Upper

Returns: bool_at

* BETWEEN (num_at i, time_at j)

Returns Boolean TRUE if the unsigned long value is greater than or equal to the Lower argument and the unsigned long value is lesser than or equal to the Upper argument.

Parameters:

i - Lower

j - Upper

Returns: bool_at

* BETWEEN (time_at i, double_at j)

Returns Boolean TRUE if the double value is greater than or equal to the Lower argument and the double value is lesser than or equal to the Upper argument.

Parameters:

i - Lower

j - Upper

Returns: bool_at

* BETWEEN (time_at i, ip_address_at j)

Returns Boolean TRUE if the unsigned long value is greater than or equal to the Lower argument and the unsigned long value is lesser than or equal to the Upper argument.

Parameters:

i - Lower

j - Upper

Returns: bool_at

* BETWEEN (time_at i, unsigned_long_at j)

Returns Boolean TRUE if the unsigned long value is greater than or equal to the Lower argument and the unsigned long value is lesser than or equal to the Upper argument.

Parameters:

i - Lower

j - Upper

Returns: bool_at

* BETWEEN (time_at i, num_at j)

Returns Boolean TRUE if the unsigned long value is greater than or equal to the Lower argument and the unsigned long value is lesser than or equal to the Upper argument.

Parameters:

i - Lower

j - Upper

Returns: bool_at

* BETWEEN (time_at i, time_at j)

Returns Boolean TRUE if the unsigned long value is greater than or equal to the Lower argument and the unsigned long value is lesser than or equal to the Upper argument.

Parameters:

i - Lower

j - Upper

Returns: bool_at

* BITAND (ip_address_at i)

Return the Unsigned Long Value after bitwise ANDing the argument to the current unsigned long value.

Parameters:

i - Unsigned Long

Returns: unsigned_long_at

* BITAND (unsigned_long_at i)

Return the Unsigned Long Value after bitwise ANDing the argument to the current unsigned long value.

Parameters:

i - Unsigned Long

Returns: unsigned_long_at

* BITAND (num_at i)

Return the Number Value after bitwise ANDing the argument to the current number value.

Parameters:

i - Number

Returns: num_at

* BITAND (time_at i)

Return the Unsigned Long Value after bitwise ANDing the argument to the current unsigned long value.

Parameters:

i - Unsigned Long

Returns: unsigned_long_at

* BITNEG

Return the Number Value after bitwise negating the current number value.

Returns: num_at

* BITOR (ip_address_at i)

Return the Unsigned Long Value after bitwise ORing the argument to the current unsigned long value.

Parameters:

i - Unsigned Long

Returns: unsigned_long_at

* BITOR (unsigned_long_at i)

Return the Unsigned Long Value after bitwise ORing the argument to the current unsigned long value.

Parameters:

i - Unsigned Long

Returns: unsigned_long_at

* BITOR (num_at i)

Return the Number Value after bitwise ORing the argument to the current number value.

Parameters:

i - Number

Returns: num_at

* BITOR (time_at i)

Return the Unsigned Long Value after bitwise ORing the argument to the current unsigned long value.

Parameters:

i - Unsigned Long

Returns: unsigned_long_at

* BITXOR (ip_address_at i)

Return the Unsigned Long Value after bitwise XORing the argument to the current unsigned long value.

Parameters:

i - Unsigned Long

Returns: unsigned_long_at

* BITXOR (unsigned_long_at i)

Return the Unsigned Long Value after bitwise XORing the argument to the current unsigned long value.

Parameters:

i - Unsigned Long

Returns: unsigned_long_at

* BITXOR (num_at i)

Return the Number Value after bitwise XORing the argument to the current number value.

Parameters:

i - Number

Returns: num_at

* BITXOR (time_at i)

Return the Unsigned Long Value after bitwise XORing the argument to the current unsigned long value.

Parameters:

i - Unsigned Long

Returns: unsigned_long_at

* DIV (double_at i)

Return the Double Value after dividing the current double value by the argument.

Parameters:

i - Double

Returns: double_at

* DIV (ip_address_at i)

Return the Unsigned Long Value after dividing the current unsigned long value by the argument.

Parameters:

i - Unsigned Long

Returns: unsigned_long_at

* DIV (unsigned_long_at i)

Return the Unsigned Long Value after dividing the current unsigned long value by the argument.

Parameters:

i - Unsigned Long

Returns: unsigned_long_at

* DIV (num_at i)

Return the Number Value after dividing the current number value by the argument.

Parameters:

i - Number

Returns: num_at

* DIV (time_at i)

Return the Unsigned Long Value after dividing the current unsigned long value by the argument.

Parameters:

i - Unsigned Long

Returns: unsigned_long_at

EQ (double_at i)

Returns Boolean TRUE if the double value is equal to the argument.

Parameters:

i - Double

Returns: bool_at

EQ (ip_address_at i)

Returns Boolean TRUE if the IP address value is same as the argument.
For example: CLIENT.IP.DST.EQ(10.100.10.100)

Parameters:

i - IP Address

Returns: bool_at

EQ (unsigned_long_at i)

Returns Boolean TRUE if the unsigned long is equal to the argument.

Parameters:

i - Unsigned Long

Returns: bool_at

* EQ (num_at i)

Returns Boolean TRUE if the number value is equal to the argument.

Parameters:

i - Number

Returns: bool_at

* EQ (time_at i)

Returns Boolean TRUE if the unsigned long is equal to the argument.

Parameters:

i - Unsigned Long

Returns: bool_at

GET1

Returns a Number Value 10 if the IP address value is 10.100.200.1

Returns: num_at

GET2

Returns a Number Value 100 if the IP address value is 10.100.200.1

Returns: num_at

GET3

Returns a Number Value 200 if the IP address value is 10.100.200.1

Returns: num_at

GET4

Returns a Number Value 1 if the IP address value is 10.100.200.1

Returns: num_at

* GE (double_at i)

Returns Boolean TRUE if the double value is greater than or equal to the argument.

Parameters:

i - Double

Returns: bool_at

* GE (ip_address_at i)

Returns Boolean TRUE if the unsigned long value is greater than or equal to the argument.

Parameters:

i - Unsigned Long

Returns: bool_at

* GE (unsigned_long_at i)

Returns Boolean TRUE if the unsigned long value is greater than or equal to the argument.

Parameters:

i - Unsigned Long

Returns: bool_at

* GE (num_at i)

Returns Boolean TRUE if the number value is greater than or equal to the argument.

Parameters:

i - Number

Returns: bool_at

* GE (time_at i)

Returns Boolean TRUE if the unsigned long value is greater than or equal to the argument.

Parameters:

i - Unsigned Long

Returns: bool_at

* GT (double_at i)

Returns Boolean TRUE if the double value is greater than the argument.

Parameters:

i - Double

Returns: bool_at

* GT (ip_address_at i)

Returns Boolean TRUE if the unsigned long value is greater than the argument.

Parameters:

i - Unsigned Long

Returns: bool_at

* GT (unsigned_long_at i)

Returns Boolean TRUE if the unsigned long value is greater than the argument.

Parameters:

i - Unsigned Long

Returns: bool_at

* GT (num_at i)

Returns Boolean TRUE if the number value is greater than the argument.

Parameters:

i - Number

Returns: bool_at

* GT (time_at i)

Returns Boolean TRUE if the unsigned long value is greater than the argument.

Parameters:

i - Unsigned Long

Returns: bool_at

IN_SUBNET (ip_subnet s)

Returns Boolean TRUE if the IP address value is in the subnet specified by the argument.
For example: CLIENT.IP.DST.IN_SUBNET(10.100.10.100/18)

Parameters (expressions not allowed):

s - IP Subnet

Returns: bool_at

IPREP_IS_MALICIOUS

IP Reputation. Returns TRUE if the client IP is categorized as malicious else returns FALSE.

Returns: bool_at

IPREP_THREAT_CATEGORY (ip_protocol_iprep_category_e category)

IP Reputation. Returns TRUE if the client IP is categorized as malicious and threat category matches category argument. else returns FALSE.

Parameters (expressions not allowed):

category - is IP category

Returns: bool_at

IS_IPV6

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

Returns: bool_at

* LE (double_at i)

Returns Boolean TRUE if the double value is lesser than or equal to the argument.

Parameters:

i - Double

Returns: bool_at

* LE (ip_address_at i)

Returns Boolean TRUE if the unsigned long value is lesser than or equal to the argument.

Parameters:

i - Unsigned Long

Returns: bool_at

* LE (unsigned_long_at i)

Returns Boolean TRUE if the unsigned long value is lesser than or equal to the argument.

Parameters:

i - Unsigned Long

Returns: bool_at

* LE (num_at i)

Returns Boolean TRUE if the number value is lesser than or equal to the argument.

Parameters:

i - Number

Returns: bool_at

* LE (time_at i)

Returns Boolean TRUE if the unsigned long value is lesser than or equal to the argument.

Parameters:

i - Unsigned Long

Returns: bool_at

* LSHIFT (uint i)

Return the Number Value after bitwise left shifting the current number value by the argument number of bits. Note that the number of bits shifted is i modulo 32.
For example, let HTTP.REQ.URL.LENGTH be 4. Then, HTTP.REQ.URL.LENGTH.LSHIFT(1) = HTTP.REQ.URL.LENGTH.LSHIFT(33) = 8, since 33 on division by 32 yields a remainder of 1.

Parameters:

i - Left Shift Length

Returns: num_at

* LT (double_at i)

Returns Boolean TRUE if the double value is lesser than the argument.

Parameters:

i - Double

Returns: bool_at

* LT (ip_address_at i)

Returns Boolean TRUE if the unsigned long value is lesser than the argument.

Parameters:

i - Unsigned Long

Returns: bool_at

* LT (unsigned_long_at i)

Returns Boolean TRUE if the unsigned long value is lesser than the argument.

Parameters:

i - Unsigned Long

Returns: bool_at

* LT (num_at i)

Returns Boolean TRUE if the number value is lesser than the argument.

Parameters:

i - Number

Returns: bool_at

* LT (time_at i)

Returns Boolean TRUE if the unsigned long value is lesser than the argument.

Parameters:

i - Unsigned Long

Returns: bool_at

MATCHES_LOCATION (text_t location)

Results in Boolean TRUE value if the location of the IP matches the location argument. Location string can be of the form: qual1.qual2.qual3.qual4.qual5.qual6
For example: NorthAmeria.CA.*

Parameters (expressions not allowed):

location - Location

Returns: bool_at

MATCHES (text_t hostname)

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

Parameters (expressions not allowed):

hostname - HostName

Returns: bool_at

* MOD (ip_address_at i)

Return the Unsigned Long Value that is the renaminder after dividing the current unsigned long value by the argument.

Parameters:

i - Unsigned Long

Returns: unsigned_long_at

* MOD (unsigned_long_at i)

Return the Unsigned Long Value that is the renaminder after dividing the current unsigned long value by the argument.

Parameters:

i - Unsigned Long

Returns: unsigned_long_at

* MOD (num_at i)

Return the Number Value that is the renaminder after dividing the current number value by the argument.

Parameters:

i - Number

Returns: num_at

* MOD (time_at i)

Return the Unsigned Long Value that is the renaminder after dividing the current unsigned long value by the argument.

Parameters:

i - Unsigned Long

Returns: unsigned_long_at

* MUL (double_at i)

Return the Double Value after multiplying the argument to the current double value.

Parameters:

i - Double

Returns: double_at

* MUL (ip_address_at i)

Return the Unsigned Long Value after multiplying the argument to the current unsigned long value.

Parameters:

i - Unsigned Long

Returns: unsigned_long_at

* MUL (unsigned_long_at i)

Return the Unsigned Long Value after multiplying the argument to the current unsigned long value.

Parameters:

i - Unsigned Long

Returns: unsigned_long_at

* MUL (num_at i)

Return the Number Value after multiplying the argument to the current number value.

Parameters:

i - Number

Returns: num_at

* MUL (time_at i)

Return the Unsigned Long Value after multiplying the argument to the current unsigned long value.

Parameters:

i - Unsigned Long

Returns: unsigned_long_at

* NEG

Return the Number Value after negating the current number value.

Returns: num_at

* NE (double_at i)

Returns Boolean TRUE if the double value is not equal to the argument.

Parameters:

i - Double

Returns: bool_at

* NE (ip_address_at i)

Returns Boolean TRUE if the unsigned long value is not equal to the argument.

Parameters:

i - Unsigned Long

Returns: bool_at

* NE (unsigned_long_at i)

Returns Boolean TRUE if the unsigned long value is not equal to the argument.

Parameters:

i - Unsigned Long

Returns: bool_at

* NE (num_at i)

Returns Boolean TRUE if the number value is not equal to the argument.

Parameters:

i - Number

Returns: bool_at

* NE (time_at i)

Returns Boolean TRUE if the unsigned long value is not equal to the argument.

Parameters:

i - Unsigned Long

Returns: bool_at

* RSHIFT (uint i)

Return the Number Value after bitwise right shifting the current number value by the argument number of bits. Note that the number of bits shifted is i modulo 32.
For example, let HTTP.REQ.URL.LENGTH be 4. Then, HTTP.REQ.URL.LENGTH.RSHIFT(1) = HTTP.REQ.URL.LENGTH.RSHIFT(33) = 2, since 33 on division by 32 yields a remainder of 1.

Parameters:

i - Right Shift Length

Returns: num_at

* SIGNED16_STRING (endian_e endianness)

Create a signed 16-bit binary string from the number.

Parameters (expressions not allowed):

endianness - Select little or big endian

Returns: text_t

* SIGNED32_STRING (endian_e endianness)

Create a signed 32-bit binary string from the number.

Parameters (expressions not allowed):

endianness - Select little or big endian

Returns: text_t

* SIGNED8_STRING

Create a signed 8-bit binary string from the number.

Returns: text_t

SUBNET (num_at n)

Returns IP Address Value after applying the subnet which can take values between 0 and 32.
For Example: CLIENT.IP.SRC.SUBNET(24) will give 192.168.1.0 for 192.168.1.[0-255]

Parameters (expressions not allowed):

n - Subnet Value

Returns: ip_address_at

* SUB (double_at i)

Return the Double Value after subtracting the argument from the current double value.

Parameters:

i - Double

Returns: double_at

* SUB (ip_address_at i)

Return the Unsigned Long Value after subtracting the argument from the current unsigned long value.

Parameters:

i - Unsigned Long

Returns: unsigned_long_at

* SUB (unsigned_long_at i)

Return the Unsigned Long Value after subtracting the argument from the current unsigned long value.

Parameters:

i - Unsigned Long

Returns: unsigned_long_at

* SUB (num_at i)

Return the Number Value after subtracting the argument from the current number value.

Parameters:

i - Number

Returns: num_at

* SUB (time_at i)

Return the Unsigned Long Value after subtracting the argument from the current unsigned long value.

Parameters:

i - Unsigned Long

Returns: unsigned_long_at

* TYPECAST_DOUBLE_AT

Typecast the Number Value to a Double value.

Returns: double_at

TYPECAST_IPV6_ADDRESS_AT

Typecast IPv4 address to its "IPv4-mapped IPv6 address" representation.

Returns: ipv6_address_at

* TYPECAST_IP_ADDRESS_AT

Typecast the Number Value to an IP Address value.

Returns: ip_address_at

TYPECAST_NUM_AT

Convert ip_address_at to num_at. Will raise an undef if the value is null, empty, or the value has an invalid format for the destination type. (num_at : Number Value)

Returns: num_at

TYPECAST_TEXT_T

Typecast the IP Address Value to its string representation.

Returns: text_t

* TYPECAST_TIME_AT

Typecast the Number Value to a Time value.

Returns: time_at

TYPECAST_UNSIGNED_LONG_AT

Typecast the IPv4 address value to an Unsigned Long value.

Returns: unsigned_long_at

* UNSIGNED16_STRING (endian_e endianness)

Create an unsigned 16-bit binary string from the number.

Parameters (expressions not allowed):

endianness - Select little or big endian

Returns: text_t

* UNSIGNED32_STRING (endian_e endianness)

Create an unsigned 32-bit binary string from the number.

Parameters (expressions not allowed):

endianness - Select little or big endian

Returns: text_t

* UNSIGNED64_STRING (endian_e endianness)

Create an unsigned 64-bit binary string from the number.

Parameters (expressions not allowed):

endianness - Select little or big endian

Returns: text_t

* UNSIGNED8_STRING

Create an unsigned 8-bit binary string from the number.

Returns: text_t

* WEEKDAY_STRING

Given the numeric day of the week, e.g. SYS.TIME.WEEKDAY, return the long form of the string name for that day, e.g. 0 = "Sunday", 6 = "Saturday".

Returns: text_t

* WEEKDAY_STRING_SHORT

Given the numeric day of the week, e.g. SYS.TIME.WEEKDAY, return the short form of the string name for that day, e.g. 0 = "Sun", 6 = "Sat".

Returns: text_t