Chapter 6 Advanced Expressions: Parsing HTTP, TCP, and UDP Data 133

Operations That Evaluate HTML and XML Encoding

HTML or XML Operation

Description

 

 

text.SET_TEXT_

Specifies whether or not backslash decoding is

MODE(BACKSLASH_ENCODEDNO_

performed on the text object represented by text.

BACKSLASH_ENCODED)

If BACKSLASH_ENCODED is specified, the SET_

 

TEXT_MODE operator performs the following

 

operations on the text object:

 

• All occurrences of “\XXX” will be replaced

 

with the character “Y” (where XXX represents

 

a number in the octal system and Y represents

 

the ASCII equivalent of XXX). The valid range

 

of octal values for this type of encoding is 0 to

 

377. For example, the encoded text "http\72//"

 

and "http\072//" will both be decoded to "http:/

 

/", where the colon (:) is the ASCII equivalent

 

of the octal value “72”.

 

• All occurrences of “\xHH” will be replaced

 

with the character “Y” (HH represents a

 

number in the hexadecimal system and Y

 

denotes the ASCII equivalent of HH. For

 

example, the encoded text "http\x3a//" will be

 

decoded to "http://", where the colon (:) is the

 

ASCII equivalent of the hexadecimal value

 

“3a“.

 

• All occurrences of “\\uWWXX” will be

 

replaced with the character sequence “YZ

 

(Where WW and XX represent two distinct

 

hexadecimal values and Y and Z represent their

 

ASCII equivalents of WW and XX respectively.

 

For example, the encoded text "http%u3a2f/"

 

and "http%u003a//" will both be decoded to

 

"http://", where “3a” and “2f” are two

 

hexadecimal values and the colon (:) and

 

forward slash (“/”) represent their ASCII

 

equivalents respectively.

 

• All occurrences of "\b", "\n", "\t", "\f", and "\r"

 

are replaced with the corresponding ASCII

 

characters.

 

If NO_BACKSLASH_ENCODED is specified,

 

backslash decoding is not performed on the text

 

object.

 

 

text.SET_TEXT_MODE(BAD_

Performs the associated undefined action if either

ENCODE_RAISE_UNDEFNO_BAD_

the URLENCODED or the BACKSLASH_

ENCODE_RAISE_UNDEF)

ENCODED mode is set and bad encoding

 

corresponding to the specified encoding mode is

 

encountered in the text object represented by text.

 

If NO_BAD_ENCODE_RAISE_UNDEF is

 

specified, the associated undefined action will not

 

be performed when bad encoding is encountered in

 

the text object represented by text.

 

 

Page 147
Image 147
Citrix Systems 9.2 manual Specifies whether or not backslash decoding is, Performed on the text object represented by text