CGI.ALL_HTTP variable uses a non-standard delimiter| View in Tracker
Found In Build/Fixed In Build: Final / 287374
Priority/Frequency: Major / All users will encounter
Locale/System: English / Win 2008 Server R2 64 bit
Vote Count: 0
tProblem Description: This is a follow-up to Bug 3340564 which was implemented in ColdFusion 10 Update 11. The CGI.ALL_HTTP is now being populated and does include CGI variables created by other IIS modules such as the SiteMinder Web Agent. The problem is that the delimiter is not the same as in ColdFusion 9 and earlier versions. In earlier versions the delimiter between successive NAME:VALUE pairs is a Line Feed (ASCII 0x0A). In ColdFusion 10 Update 11 the delimiter is a Space (ASCII 0x20). This makes it impossible to reliably extract the NAME:VALUE pairs because many values contain spaces. For example, the HTTP_USER_AGENT string often contains embedded spaces, such as: HTTP_USER-AGENT:Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Steps to Reproduce: Create a template that dumps the contents of CGI.ALL_HTTP to a file: <cfdump var="#cgi.all_http#" output="#ExpandPath('.\dump.out')#" format="text"> Open the resulting file in an editor that supports ASCII-to-HEX conversion, such as NotePad++. Examine the delimiter between NAME:VALUE pairs. Actual Result: The delimiter is a SPACE character (0x20). Expected Result: The delimiter should be a LINEFEED character (0x0A) as in ColdFusion 9 and earlier. Any Workarounds: None ----------------------------- Additional Watson Details ----------------------------- Watson Bug ID: 3665338 Deployment Phase: Release Candidate External Customer Info: External Company: External Customer Name: MichaelXMongeau External Customer Email: External Test Config: Windows 2008 R2 SP1 64-bit, Microsoft IIS 7.5, ColdFusion 10 Update 12, isapi_redirect.dll dated 11/2/2013.