ADC Advanced Policy Expressions

RADIUS_CODE_T

This object provides Num operations and radius_code Type Enum

operations on the RADIUS message.

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

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

* ABS

Return the absolute value of the number.

Returns: num_at

* ADD(double_ati)

Return the Double Value after adding the argument to the

current double value.

Parameters:

i -

                        Double

Returns: double_at

* ADD(ip_address_ati)

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_ati)

Return the Unsigned Long after adding the argument to the

current unsigned long value.

Parameters:

i -

                        Unsigned Long

Returns: unsigned_long_at

* ADD(num_ati)

Return the Number Value after adding the argument to the

current number value.

Parameters:

i -

                        Number

Returns: num_at

* ADD(time_ati)

Return the Unsigned Long after adding the argument to the

current unsigned long value.

Parameters:

i -

                        Unsigned Long

Returns: unsigned_long_at

* APPEND(text_tstr)

Appends the given string to the string representation of the current

number.

Parameters:

str -

                        the string to append.

Returns: text_t

* AS_MICROSEC_STR

Returns the current system time in the following format

Format: Wday, day Month year hh:mm:ss.ffffff GMT

     ffffff represents microseconds

Examples:

Mon, 05 Mar 2018 10:23:36.568419 GMT

Returns: text_t

* AS_MILLISEC_STR

Returns the current system time in the following format

Format: Wday, day Month year hh:mm:ss.fff GMT

     fff represents milliseconds

Examples:

Mon, 05 Mar 2018 10:23:36.568 GMT

Returns: text_t

* AS_NANOSEC_STR

Returns the current system time in the following format

Format: Wday, day Month year hh:mm:ss.fffffffff GMT

     fffffffff represents nanoseconds

Accuracy may be at larger granularity than nanosecond resolution.

Examples:

Mon, 05 Mar 2018 10:23:36.568419567 GMT

Returns: text_t

* BETWEEN(double_ati, double_atj)

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_ati, ip_address_atj)

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_ati, unsigned_long_atj)

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_ati, double_atj)

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_ati, ip_address_atj)

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_ati, unsigned_long_atj)

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_ati, double_atj)

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_ati, ip_address_atj)

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_ati, unsigned_long_atj)

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_ati, num_atj)

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_ati, num_atj)

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_ati, num_atj)

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_ati, time_atj)

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_ati, time_atj)

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_ati, time_atj)

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_ati, double_atj)

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_ati, ip_address_atj)

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_ati, unsigned_long_atj)

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_ati, num_atj)

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_ati, time_atj)

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_ati, double_atj)

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_ati, ip_address_atj)

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_ati, unsigned_long_atj)

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_ati, num_atj)

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_ati, time_atj)

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_ati)

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_ati)

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_ati)

Return the Number Value after bitwise ANDing the argument to the

current number value.

Parameters:

i -

                        Number

Returns: num_at

* BITAND(time_ati)

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_ati)

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_ati)

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_ati)

Return the Number Value after bitwise ORing the argument to the

current number value.

Parameters:

i -

                        Number

Returns: num_at

* BITOR(time_ati)

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_ati)

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_ati)

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_ati)

Return the Number Value after bitwise XORing the argument to the

current number value.

Parameters:

i -

                        Number

Returns: num_at

* BITXOR(time_ati)

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_ati)

Return the Double Value after dividing the current double

value by the argument.

Parameters:

i -

                        Double

Returns: double_at

* DIV(ip_address_ati)

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_ati)

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_ati)

Return the Number Value after dividing the current number

value by the argument.

Parameters:

i -

                        Number

Returns: num_at

* DIV(time_ati)

Return the Unsigned Long Value after dividing the current unsigned

long value by the argument.

Parameters:

i -

                        Unsigned Long

Returns: unsigned_long_at

* EQ(radius_code_em)

The result is Boolean TRUE if the input argument is equal to

the RADIUS message code by this object.

Parameters(expressions not allowed):

m -

                        RADIUS Message Code

Returns: bool_at

* EQ(double_ati)

Returns Boolean TRUE if the double value is equal to

the argument.

Parameters:

i -

                        Double

Returns: bool_at

* EQ(ip_address_ati)

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

Parameters:

i -

                        Unsigned Long

Returns: bool_at

* EQ(unsigned_long_ati)

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

Parameters:

i -

                        Unsigned Long

Returns: bool_at

* EQ(num_ati)

Returns Boolean TRUE if the number value is equal to

the argument.

Parameters:

i -

                        Number

Returns: bool_at

* EQ(time_ati)

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

Parameters:

i -

                        Unsigned Long

Returns: bool_at

* GE(double_ati)

Returns Boolean TRUE if the double value is greater than or

equal to the argument.

Parameters:

i -

                        Double

Returns: bool_at

* GE(ip_address_ati)

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_ati)

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_ati)

Returns Boolean TRUE if the number value is greater than or

equal to the argument.

Parameters:

i -

                        Number

Returns: bool_at

* GE(time_ati)

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_ati)

Returns Boolean TRUE if the double value is greater than the

argument.

Parameters:

i -

                        Double

Returns: bool_at

* GT(ip_address_ati)

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

argument.

Parameters:

i -

                        Unsigned Long

Returns: bool_at

* GT(unsigned_long_ati)

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

argument.

Parameters:

i -

                        Unsigned Long

Returns: bool_at

* GT(num_ati)

Returns Boolean TRUE if the number value is greater than the

argument.

Parameters:

i -

                        Number

Returns: bool_at

* GT(time_ati)

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

argument.

Parameters:

i -

                        Unsigned Long

Returns: bool_at

* LE(double_ati)

Returns Boolean TRUE if the double value is lesser than or

equal to the argument.

Parameters:

i -

                        Double

Returns: bool_at

* LE(ip_address_ati)

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_ati)

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_ati)

Returns Boolean TRUE if the number value is lesser than or

equal to the argument.

Parameters:

i -

                        Number

Returns: bool_at

* LE(time_ati)

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_ati)

Returns Boolean TRUE if the double value is lesser than

the argument.

Parameters:

i -

                        Double

Returns: bool_at

* LT(ip_address_ati)

Returns Boolean TRUE if the unsigned long value is lesser than

the argument.

Parameters:

i -

                        Unsigned Long

Returns: bool_at

* LT(unsigned_long_ati)

Returns Boolean TRUE if the unsigned long value is lesser than

the argument.

Parameters:

i -

                        Unsigned Long

Returns: bool_at

* LT(num_ati)

Returns Boolean TRUE if the number value is lesser than

the argument.

Parameters:

i -

                        Number

Returns: bool_at

* LT(time_ati)

Returns Boolean TRUE if the unsigned long value is lesser than

the argument.

Parameters:

i -

                        Unsigned Long

Returns: bool_at

* MAX(double_ati)

Return the maximum double value after comparing

the argument with the current double value.

Parameters:

i -

                        Double

Returns: double_at

* MAX(ip_address_ati)

Return the maximum unsigned long value after comparing the argument

value to the current unsigned long value.

Parameters:

i -

                        Unsigned Long

Returns: unsigned_long_at

* MAX(unsigned_long_ati)

Return the maximum unsigned long value after comparing the argument

value to the current unsigned long value.

Parameters:

i -

                        Unsigned Long

Returns: unsigned_long_at

* MAX(num_ati)

Return the maximum value after comparing the argument

with the current number value.

Parameters:

i -

                        Number

Returns: num_at

* MAX(time_ati)

Return the maximum unsigned long value after comparing the argument

value to the current unsigned long value.

Parameters:

i -

                        Unsigned Long

Returns: unsigned_long_at

* MIN(double_ati)

Return the minimum double value after comparing

the argument with the current double value.

Parameters:

i -

                        Double

Returns: double_at

* MIN(ip_address_ati)

Return the minimum unsigned long value after comparing the argument

value to the current unsigned long value.

Parameters:

i -

                        Unsigned Long

Returns: unsigned_long_at

* MIN(unsigned_long_ati)

Return the minimum unsigned long value after comparing the argument

value to the current unsigned long value.

Parameters:

i -

                        Unsigned Long

Returns: unsigned_long_at

* MIN(num_ati)

Return the minimum value after comparing the argument

with the current number value.

Parameters:

i -

                        Number

Returns: num_at

* MIN(time_ati)

Return the minimum unsigned long value after comparing the argument

value to the current unsigned long value.

Parameters:

i -

                        Unsigned Long

Returns: unsigned_long_at

* MOD(ip_address_ati)

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_ati)

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_ati)

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_ati)

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_ati)

Return the Double Value after multiplying the argument to the

current double value.

Parameters:

i -

                        Double

Returns: double_at

* MUL(ip_address_ati)

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_ati)

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_ati)

Return the Number Value after multiplying the argument to the

current number value.

Parameters:

i -

                        Number

Returns: num_at

* MUL(time_ati)

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(radius_code_em)

The result is Boolean FALSE if the input argument is equal to

the RADIUS message code by this object.

Parameters(expressions not allowed):

m -

                        RADIUS Message Code

Returns: bool_at

* NE(double_ati)

Returns Boolean TRUE if the double value is not equal to

the argument.

Parameters:

i -

                        Double

Returns: bool_at

* NE(ip_address_ati)

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

the argument.

Parameters:

i -

                        Unsigned Long

Returns: bool_at

* NE(unsigned_long_ati)

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

the argument.

Parameters:

i -

                        Unsigned Long

Returns: bool_at

* NE(num_ati)

Returns Boolean TRUE if the number value is not equal to

the argument.

Parameters:

i -

                        Number

Returns: bool_at

* NE(time_ati)

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_eendianness)

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_eendianness)

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

* SUB(double_ati)

Return the Double Value after subtracting the argument from the

current double value.

Parameters:

i -

                        Double

Returns: double_at

* SUB(ip_address_ati)

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_ati)

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_ati)

Return the Number Value after subtracting the argument from the

current number value.

Parameters:

i -

                        Number

Returns: num_at

* SUB(time_ati)

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_IP_ADDRESS_AT

Typecast the Number Value to an IP Address value.

Returns: ip_address_at

TYPECAST_NUM_AT

Convert radius_code_t 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 Number 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 Number Value to a Unsigned Long value.

Returns: unsigned_long_at

* UNSIGNED16_STRING(endian_eendianness)

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_eendianness)

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_eendianness)

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

RADIUS_CODE_T

In this article