Product Documentation

Expressions Reference-Default Syntax Expressions

Aug 31, 2016

The following table is a listing of default syntax expression prefixes, with cross-references to descriptions of these prefixes and the operators that you can specify for them. Note that some prefixes can work with multiple types of operators. For example, a cookie can be parsed by using operators for text or operators for HTTP headers.

You can use any element in the following tables as a complete expression on its own, or you can use various operators to combine these expression elements with others to form more complex expressions.

Note: The Description column in the following table contains cross-references to additional information about prefix usage and applicable operators for the prefix.

Expression Prefix

Links to Relevant Information, with Applicable Notes and Operator Descriptions

CLIENT.ETHER

"Prefixes for MAC Addresses."

"Operations for MAC Addresses."

CLIENT.ETHER.[DSTMAC | SRCMAC]

"Prefixes for MAC Addresses."

"Operations for MAC Addresses."

CLIENT.INTERFACE

Designates an expression that refers to the ID of the network interface through which the current packet entered the Application Switch. See the other CLIENT.INTERFACE prefix descriptions in this table.

CLIENT.INTERFACE.ID

Extracts the ID of the network interface that received the current packet of data. See the other CLIENT.INTERFACE prefix descriptions in this table.

CLIENT.INTERFACE.ID.EQ("id")

Returns Boolean TRUE if the interface's ID matches the ID that is passed as the argument. For example:

CLIENT.INTERFACE.ID.EQ("1/1")

See "Booleans in Compound Expressions."

CLIENT.INTERFACE.[RXTHROU GHPUT | RXTXTHROUGHPUT | TXTHROUGHPUT]

"Expressions for Numeric Client and Server Data."

"Compound Operations for Numbers."

CLIENT.IP

Operates on the IP protocol data associated with the current packet. See the other CLIENT.IP prefixes in this table.

CLIENT.IP.DST

"Prefixes for IPV4 Addresses and IP Subnets."

"Operations for IPV4 Addresses."

"Compound Operations for Numbers."

CLIENT.IP.SRC

"Prefixes for IPV4 Addresses and IP Subnets."

"Operations for IPV4 Addresses."

"Compound Operations for Numbers."

CLIENT.IPV6

Operates on IPv6 protocol data. See the other CLIENT.IPV6 prefixes in this table.

CLIENT.IPV6.DST

"Expression Prefixes for IPv6 Addresses."

"Operations for IPV6 Prefixes."

CLIENT.IPV6.SRC

"Expression Prefixes for IPv6 Addresses."

"Operations for IPV6 Prefixes."

CLIENT.SSL

Operates on the SSL protocol data for the current packet. See the other CLIENT.SSL prefixes in this table.

CLIENT.SSL.CIPHER_BITS

"Prefixes for Numeric Data in SSL Certificates."

"Compound Operations for Numbers."

CLIENT.SSL.CIPHER_EXPORTA BLE

"Prefixes for Text-Based SSL and Certificate Data."

"Booleans in Compound Expressions".

CLIENT.SSL.CLIENT_CERT

"Expressions for SSL Certificates."

"Expressions for SSL Certificate Dates."

CLIENT.SSL.IS_SSL

"Prefixes for Text-Based SSL and Certificate Data."

"Booleans in Compound Expressions."

CLIENT.SSL.VERSION

"Prefixes for Numeric Data in SSL Certificates."

"Compound Operations for Numbers."

CLIENT.TCP

Operates on TCP protocol data. See the other CLIENT.TCP prefixes in this table.

CLIENT.TCP.[DSTPORT | MSS | SRCPORT]

"Expressions for TCP, UDP, and VLAN Data."

"Compound Operations for Numbers."

CLIENT.TCP.PAYLOAD( integer )

"Expressions for TCP, UDP, and VLAN Data."

"Default Syntax Expressions: Evaluating Text."

CLIENT.UDP

Operates on the UDP protocol data associated with the current packet. See the other CLIENT.UDP prefixes in this table.

CLIENT.UDP.DNS.DOMAIN

"Expressions for TCP, UDP, and VLAN Data."

"Default Syntax Expressions: Evaluating Text."

CLIENT.UDP.DNS.DOMAIN.EQ( "hostname")

"Expressions for TCP, UDP, and VLAN Data."

"Booleans in Compound Expressions."

CLIENT.UDP.DNS. [IS_AAAAREC | IS_ANYREC | IS_AREC | IS_CNAMEREC | IS_MXREC | IS_NSREC | IS_PTRREC | IS_SOAREC | IS_SRVREC]

"Expressions for TCP, UDP, and VLAN Data."

"Booleans in Compound Expressions."

CLIENT.UDP.[DSTPORT | SRCPORT]

"Expressions for TCP, UDP, and VLAN Data."

"Compound Operations for Numbers."

CLIENT.VLAN

Operates on the VLAN through which the current packet entered the NetScaler. See the other CLIENT.VLAN prefixes in this table.

CLIENT.VLAN.ID

"Expressions for TCP, UDP, and VLAN Data."

"Compound Operations for Numbers."

HTTP.REQ

Operates on HTTP requests. See the other HTTP.REQ prefixes in this table.

HTTP.REQ.BODY(integer)

"Expression Prefixes for Text in HTTP Requests and Responses."

"Basic Operations on Text."

HTTP.REQ.CACHE_CONTROL

"Prefixes for Cache-Control Headers."

"Operations for Cache-Control Headers."

HTTP.REQ.CONTENT_LENGTH

"Expressions for Numeric HTTP Payload Data Other Than Dates."

"Compound Operations for Numbers."

HTTP.REQ.COOKIE

"Prefixes for HTTP Headers."

"Operations for HTTP Headers."

"Default Syntax Expressions: Evaluating Text."

HTTP.REQ.DATE

"Format of Dates and Times in an Expression."

"Expressions for HTTP Request and Response Dates."

"Default Syntax Expressions: Evaluating Text."

"Compound Operations for Numbers."

"Operations for HTTP Headers."

HTTP.REQ.HEADER("header_name")

"Expression Prefixes for Text in HTTP Requests and Responses."

"Prefixes for HTTP Headers."

"Operations for HTTP Headers."

HTTP.REQ.FULL_HEADER("header_name")

"Prefixes for HTTP Headers."

"Operations for HTTP Headers."

HTTP.REQ.HOSTNAME

"Expression Prefixes for Text in HTTP Requests and Responses."

HTTP.REQ.HOSTNAME.[DOMAIN | Server]

"Expression Prefixes for Text in HTTP Requests and Responses."

"Basic Operations on Text."

HTTP.REQ.HOSTNAME.EQ("hostname")

"Expression Prefixes for Text in HTTP Requests and Responses."

"Booleans in Compound Expressions."

"Basic Operations on Expression Prefixes."

HTTP.REQ.HOSTNAME.PORT

"Expression Prefixes for Text in HTTP Requests and Responses."

"Compound Operations for Numbers."

HTTP.REQ.IS_VALID

Returns TRUE if the HTTP request is properly formed. See "Booleans in Compound Expressions."

HTTP.REQ.METHOD

"Expression Prefixes for Text in HTTP Requests and Responses."

"Basic Operations on Text."

"Complex Operations on Text."

HTTP.REQ.TRACKING

Returns the HTTP body tracking mechanism. See the descriptions of other HTTP.REQ.TRACKING prefixes in this table.

HTTP.REQ.TRACKING.EQ("tracking_mechanism")

Returns TRUE or FALSE. See "Booleans in Compound Expressions."

HTTP.REQ.URL

Obtains the HTTP URL object from the request and sets the text mode to URLENCODED by default.

See "Expression Prefixes for Text in HTTP Requests and Responses."

HTTP.REQ.URL.[CVPN_ENCODE | HOSTNAME | HOSTNAME.DOMAIN | SERVER | PATH | PATH_AND_QUERY | PROTOCOL | QUERY | SUFFIX | VERSION]

"Expression Prefixes for Text in HTTP Requests and Responses."

"Basic Operations on Text."

"Complex Operations on Text."

HTTP.REQ.URL.HOSTNAME.EQ("hostname")

"Expression Prefixes for Text in HTTP Requests and Responses.

"Booleans in Compound Expressions."

HTTP.REQ.URL.HOSTNAME.PORT

"Expression Prefixes for Text in HTTP Requests and Responses.

"Compound Operations for Numbers."

HTTP.REQ.URL.PATH.IGNORE_ EMPTY_ELEMENTS

Ignores spaces in the data. See the table "HTTP Expression Prefixes that Return Text."

HTTP.REQ.URL.QUERY.IGNORE _EMPTY_ELEMENTS

Ignores spaces in the data. See the table "HTTP Expression Prefixes that Return Text."

HTTP.REQ.USER.IS_MEMBER_OF

"HTTP Expression Prefixes that Return Text."

HTTP.REQ.USER.NAME

"HTTP Expression Prefixes that Return Text."

HTTP.REQ.VERSION

"Expression Prefixes for Text in HTTP Requests and Responses."

HTTP.REQ.VERSION.[MAJOR | MINOR]

Operates on the major or minor HTTP version string. See "Expression Prefixes for Text in HTTP Requests and Responses" and "Compound Operations for Numbers."

HTTP.RES

Operates on HTTP responses.

HTTP.RES.BODY(integer)

"Expression Prefixes for Text in HTTP Requests and Responses."

"Basic Operations on Text."

"Complex Operations on Text."

HTTP.RES.CACHE_CONTROL

"Prefixes for Cache-Control Headers."

"Operations for Cache-Control Headers."

HTTP.RES.CONTENT_LENGTH

"Expression Prefixes for Text in HTTP Requests and Responses."

"Operations for HTTP Headers."

"Compound Operations for Numbers."

HTTP.RES.DATE

"Format of Dates and Times in an Expression."

"Expressions for HTTP Request and Response Dates."

"Expression Prefixes for Text in HTTP Requests and Responses."

"Compound Operations for Numbers."

"Operations for HTTP Headers."

HTTP.RES.HEADER("header_name")

"Expression Prefixes for Text in HTTP Requests and Responses."

"Prefixes for HTTP Headers."

"Operations for HTTP Headers."

HTTP.REQ.FULL_HEADER("header_name")

"Prefixes for HTTP Headers."

"Operations for HTTP Headers."

HTTP.REQ.TXID

"Prefixes for HTTP Headers."

"Operations for HTTP Headers."

HTTP.RES.IS_VALID

Returns TRUE if the HTTP response is properly formed. See "Booleans in Compound Expressions."

HTTP.RES.SET_COOKIE

"Prefixes for HTTP Headers."

"Operations for HTTP Headers."

"Default Syntax Expressions: Evaluating Text."

HTTP.RES.SET_COOKIE.COOKIE("name")

"Prefixes for HTTP Headers."

"Operations for HTTP Headers."

"Default Syntax Expressions: Evaluating Text."

HTTP.RES.SET_COOKIE.COOKI E.[DOMAIN | PATH | PORT ]

"Prefixes for HTTP Headers."

"Operations for HTTP Headers."

"Default Syntax Expressions: Evaluating Text."

HTTP.RES.SET_COOKIE.COOKIE.EXPIRES

Obtains the Expires field of the cookie as a date string. The value of the Expires attribute can be operated upon as a time object. If multiple Expires fields are present, this expression operates on the first one. If the Expires attribute is absent, a string of length zero is returned.

Also see:

"Prefixes for HTTP Headers."

"Operations for HTTP Headers."

"Default Syntax Expressions: Evaluating Text."

"Compound Operations for Numbers."

HTTP.RES.SET_COOKIE.COOKIE.PATH.IGNORE_EMPTY_ELEME NTS

Ignores spaces in the data. For an example, see the table "Expression Prefixes for Text in HTTP Requests and Responses."

HTTP.RES.SET_COOKIE.COOKIE.PORT.IGNORE_EMPTY_ELEME NTS

Ignores spaces in the data. For an example, see the table "HTTP Expression Prefixes that Return Text."

HTTP.RES.SET_COOKIE.COOKIE.VERSION

"Prefixes for HTTP Headers."

"Compound Operations for Numbers."

HTTP.RES.SET_COOKIE.COOKIE("name",integer )[.PORT | PATH | DOMAIN | VERSION | EXPIRES]

"Prefixes for HTTP Headers."

"Default Syntax Expressions: Evaluating Text."

HTTP.RES.SET_COOKIE.COOKIE.EXPIRES

"Prefixes for HTTP Headers."

"Operations for HTTP Headers."

"Default Syntax Expressions: Evaluating Text."

"Compound Operations for Numbers."

HTTP.RES.SET_COOKIE.EXISTS("name")

"Prefixes for HTTP Headers."

"Booleans in Compound Expressions."

HTTP.RES.SET_COOKIE2

"Prefixes for HTTP Headers."

"Operations for HTTP Headers."

"Default Syntax Expressions: Evaluating Text."

HTTP.RES.SET_COOKIE2.COOKIE("name")

"Prefixes for HTTP Headers."

"Operations for HTTP Headers."

"Default Syntax Expressions: Evaluating Text."

HTTP.RES.SET_COOKIE2.COOKIE.[DOMAIN | PATH | PORT ]

"Prefixes for HTTP Headers."

"Operations for HTTP Headers."

"Default Syntax Expressions: Evaluating Text."

HTTP.RES.SET_COOKIE2.COOKIE.EXPIRES

"Prefixes for HTTP Headers."

"Operations for HTTP Headers."

"Default Syntax Expressions: Evaluating Text."

"Compound Operations for Numbers."

HTTP.RES.SET_COOKIE2.COOKIE.PATH.IGNORE_EMPTY_ ELEMENTS

Ignores spaces in the data. For an example, see the table HTTP Expression Prefixes that Return Text."

HTTP.RES.SET_COOKIE2.COOKIE.PORT.IGNORE_EMPTY_ ELEMENTS

Ignores spaces in the data. For an example, see the table "HTTP Expression Prefixes that Return Text."

See also "Default Syntax Expressions: Evaluating Text" and "Compound Operations for Numbers."

HTTP.RES.SET_COOKIE2.COOKIE("name",integer)[.PORT | PATH | DOMAIN | VERSION | EXPIRES]

"Prefixes for HTTP Headers."

"Operations for HTTP Headers."

"Default Syntax Expressions: Evaluating Text."

HTTP.RES.SET_COOKIE2.COOKIE.DOMAIN

"Prefixes for HTTP Headers."

"Operations for HTTP Headers."

"Default Syntax Expressions: Evaluating Text."

HTTP.RES.SET_COOKIE2.COOKIE.EXPIRES

"Prefixes for HTTP Headers."

"Operations for HTTP Headers."

"Default Syntax Expressions: Evaluating Text."

"Compound Operations for Numbers."

HTTP.RES.SET_COOKIE2.COOKIE.VERSION

"Prefixes for HTTP Headers."

"Operations for HTTP Headers."

"Default Syntax Expressions: Evaluating Text."

"Compound Operations for Numbers."

HTTP.RES.SET_COOKIE2.EXISTS("name")

"Prefixes for HTTP Headers."

"Operations for HTTP Headers."

"Booleans in Compound Expressions."

HTTP.RES.STATUS

"Expression Prefixes for Text in HTTP Requests and Responses."

"Compound Operations for Numbers."

HTTP.RES.STATUS_MSG

"Expression Prefixes for Text in HTTP Requests and Responses."

HTTP.RES.TRACKING

Returns the HTTP body tracking mechanism. See the descriptions of other HTTP.REQ.TRACKING prefixes in this table.

HTTP.RES.TRACKING.EQ("tracking_method")

Returns TRUE or FALSE. See "Booleans in Compound Expressions."

HTTP.RES.TXID

" Prefixes for HTTP Headers."

"Operations for HTTP Headers."

HTTP.RES.VERSION

"Expression Prefixes for Text in HTTP Requests and Responses."

HTTP.RES.VERSION.[MAJOR | MINOR]

Operates on the major or minor HTTP version string. See "Expression Prefixes for Text in HTTP Requests and Responses" and "Compound Operations for Numbers."

SERVER

Designates an expression that refers to the server. This is the starting point for access into parameters such as Ether and SSL. See the other SERVER prefixes in this table.

SERVER.ETHER

Operates on the ethernet protocol data associated with the current packet. See the other SERVER prefixes in this table.

SERVER.ETHER.DSTMAC

"Prefixes for MAC Addresses."

"Prefixes for MAC Addresses."

SERVER.INTERFACE

Designates an expression that refers to the ID of the network interface that received the current packet of data. See the other SERVER.INTERFACE prefixes in this table.

SERVER.INTERFACE.ID.EQ("id")

Returns Boolean TRUE if the interface's ID matches the ID that is passed as the argument. For example:

SERVER.INTERFACE.ID.EQ("LA/1")

See "Booleans in Compound Expressions."

SERVER.INTERFACE.[RXTHROUGHPUT | RXTXTHROUGHPUT | TXTHROUGHPUT]

"Expressions for Numeric Client and Server Data."

"Compound Operations for Numbers."

SERVER.IP

Operates on the IP protocol data associated with the current packet. See the other SERVER.IP prefixes in this table.

SERVER.IP.[DST | SRC]

"Prefixes for IPV4 Addresses and IP Subnets."

"Operations for IPV4 Addresses."

"Compound Operations for Numbers."

SERVER.IPV6

Operates on IPv6 protocol data. See the other SERVER.IPV6 prefixes in this table.

SERVER.IPV6.DST

"Expression Prefixes for IPv6 Addresses."

"Operations for IPV6 Prefixes."

SERVER.IPV6.SRC

"Expression Prefixes for IPv6 Addresses."

"Operations for IPV6 Prefixes."

SERVER.TCP

Operates on TCP protocol data. See the other CLIENT.TCP prefixes in this table.

SERVER.TCP.[DSTPORT | MSS | SRCPORT]

"Expressions for TCP, UDP, and VLAN Data."

"Compound Operations for Numbers."

SERVER.VLAN

Operates on the VLAN through which the current packet entered the NetScaler. See the other SERVER.VLAN prefixes in this table.

SERVER.VLAN.ID

"Expressions for TCP, UDP, and VLAN Data."

"Compound Operations for Numbers."

SYS

Designates an expression that refers to the NetScaler itself, not to the client or server.. See the other SYS prefixes in this table.

SYS.EVAL_CLASSIC_EXPR(cla ssic_expression)

"Classic Expressions in Default Syntax Expressions."

"Booleans in Compound Expressions."

SYS.HTTP_CALLOUT(http_callout)

"HTTP Callouts."

SYS.CHECK_LIMIT

"Rate Limiting."

SYS.TIME

"Expressions for the NetScaler System Time."

"Compound Operations for Numbers."

SYS.TIME.[BETWEEN(time1, time2) | EQ(time) | GE(time) | GT(time) | LE(time) | LT(time) | WITHIN(time1, time2)]

"Expressions for the NetScaler System Time."

"Booleans in Compound Expressions."

"Compound Operations for Numbers."

SYS.TIME.[DAY | HOURS | MINUTES | MONTH | RELATIVE_BOOT | RELATIVE_NOW SECONDS | WEEKDAY | YEAR]

"Expressions for the NetScaler System Time."

"Compound Operations for Numbers."

SYS.RANDOM

Returns a random number between 0 and 1, inclusive of 0 but exclusive of 1.

VPN.BASEURL.[CVPN_DECODE | CVPN_ENCODE | HOSTNAME | HOSTNAME.DOMAIN | HOSTNAME.SERVER | PATH | PATH_AND_QUERY | PROTOCOL | QUERY | SUFFIX]

"Expression Prefixes for VPNs and Clientless VPNs."

VPN.BASEURL.HOSTNAME.EQ("hostname")

"Expression Prefixes for VPNs and Clientless VPNs."

"Booleans in Compound Expressions."

VPN.BASEURL.HOSTNAME.PORT

"Expression Prefixes for VPNs and Clientless VPNs."

"Compound Operations for Numbers."

VPN.BASEURL.PATH.IGNORE_EMPTY_ELEMENTS

Ignores spaces in the data. For an example, see the table "HTTP Expression Prefixes that Return Text."

VPN.BASEURL.QUERY.IGNORE_EMPTY_ELEMENTS

Ignores spaces in the data. For an example, see the table "HTTP Expression Prefixes that Return Text."

VPN.CLIENTLESS_BASEURL

" Expression Prefixes for VPNs and Clientless VPNs."

VPN.CLIENTLESS_BASEURL. [CVPN_DECODE | CVPN_ENCODE | HOSTNAME | HOSTNAME.DOMAIN | HOSTNAME.SERVER | PATH | PATH_AND_QUERY | PROTOCOL | QUERY | SUFFIX]

"Expression Prefixes for VPNs and Clientless VPNs."

VPN.CLIENTLESS_BASEURL.HOSTNAME.EQ("hostname")

"Expression Prefixes for VPNs and Clientless VPNs."

"Booleans in Compound Expressions."

VPN.CLIENTLESS_BASEURL.HOSTNAME.PORT

"Expression Prefixes for VPNs and Clientless VPNs."

"Compound Operations for Numbers."

VPN.CLIENTLESS_BASEURL.PATH.IGNORE_EMPTY_ELEMENTS

Ignores spaces in the data. For an example, see the table "HTTP Expression Prefixes that Return Text."

VPN.CLIENTLESS_BASEURL.QUERY.IGNORE_EMPTY_ELEMENTS

Ignores spaces in the data. For an example, see the table "HTTP Expression Prefixes that Return Text."

VPN.CLIENTLESS_HOSTURL

" Expression Prefixes for VPNs and Clientless VPNs."

VPN.CLIENTLESS_HOSTURL.[CVPN_DECODE | CVPN_ENCODE | HOSTNAME | HOSTNAME.DOMAIN | HOSTNAME.SERVER | PATH | PATH_AND_QUERY | PROTOCOL | QUERY | SUFFIX]

"Expression Prefixes for VPNs and Clientless VPNs."

VPN.CLIENTLESS_HOSTURL.HOSTNAME.EQ("hostname")

"Expression Prefixes for VPNs and Clientless VPNs."

"Booleans in Compound Expressions.

VPN.CLIENTLESS_HOSTURL.HOSTNAME.PORT

"Expression Prefixes for VPNs and Clientless VPNs."

"Compound Operations for Numbers."

VPN.CLIENTLESS_HOSTURL.PATH.IGNORE_EMPTY_ELEMENTS

Ignores spaces in the data. For an example, see the table "HTTP Expression Prefixes that Return Text."

VPN.CLIENTLESS_HOSTURL.QUERY.IGNORE_EMPTY_ELEMENTS

Ignores spaces in the data. For an example, see the table "HTTP Expression Prefixes that Return Text."

VPN.HOST

" Expression Prefixes for VPNs and Clientless VPNs."

VPN.HOST.[DOMAIN | Server]

"Expression Prefixes for VPNs and Clientless VPNs."

VPN.HOST.EQ("hostname")

"Expression Prefixes for VPNs and Clientless VPNs."

"Booleans in Compound Expressions.

VPN.HOST.PORT

"Expression Prefixes for VPNs and Clientless VPNs."

"Default Syntax Expressions: Evaluating Text."

"Compound Operations for Numbers."