Edit report at http://bugs.php.net/bug.php?id=52162&edit=1

 ID:               52162
 Updated by:       theta...@php.net
 Reported by:      srina...@php.net
 Summary:          for NSAPI module, custom request header variables with
                   numbers are removed
 Status:           Assigned
 Type:             Bug
 Package:          iPlanet related
 Operating System: Linux
 PHP Version:      5.3.2
 Assigned To:      thetaphi

 New Comment:

>From the CGI/1.1 spec in RFC3875:

   Meta-variables with names beginning with "HTTP_" contain values read

   from the client request header fields, if the protocol used is HTTP.

   The HTTP header field name is converted to upper case, has all

   occurrences of "-" replaced with "_" and has "HTTP_" prepended to

   give the meta-variable name.  The header data can be presented as

   sent by the client, or can be rewritten in ways which do not change

   its semantics.  If multiple header fields with the same field-name

   are received then the server MUST rewrite them as a single value

   having the same semantics.  Similarly, a header field that spans

   multiple lines MUST be merged onto a single line.  The server MUST,

   if necessary, change the representation of the data (for example,

   the character set) to be appropriate for a CGI meta-variable.



So I tend to remove the check explicitely and only specifically handle
the "-" character as described in the specs.


Previous Comments:
------------------------------------------------------------------------
[2010-06-23 21:06:35] srina...@php.net

Automatic comment from SVN on behalf of srinatar
Revision: http://svn.php.net/viewvc/?view=revision&revision=300707
Log: - Fixed bug #52162 (custom request header variables with numbers
are removed)

------------------------------------------------------------------------
[2010-06-23 20:30:00] theta...@php.net

I think this problem also affects other SAPIs that parse headers to
ENV-style variables? I will scan other sapis and fix their code, too, if
needed.

------------------------------------------------------------------------
[2010-06-23 20:28:47] theta...@php.net

I will fix that! Thanks for reporting. Uwe

------------------------------------------------------------------------
[2010-06-23 20:06:12] srina...@php.net

mark the bug as specific to a given SAPI only.

------------------------------------------------------------------------
[2010-06-23 20:04:46] srina...@php.net

here is the suggested patch to address this issue





[sn123...@mbelshe]'PHP_5_3'>svn diff sapi/nsapi/nsapi.c 

Index: sapi/nsapi/nsapi.c

===================================================================

--- sapi/nsapi/nsapi.c  (revision 300702)

+++ sapi/nsapi/nsapi.c  (working copy)

@@ -687,7 +687,7 @@

                                if (value) {

                                        for(p = value + pos; *p; p++) {

                                                *p = toupper(*p);

-                                               if (*p < 'A' || *p >
'Z') {

+                                               if (!isalnum(*p)) {

                                                        *p = '_';

                                                }

                                        }





if no one has any issues, i can commit this patch..

------------------------------------------------------------------------


The remainder of the comments for this report are too long. To view
the rest of the comments, please view the bug report online at

    http://bugs.php.net/bug.php?id=52162


-- 
Edit this bug report at http://bugs.php.net/bug.php?id=52162&edit=1

Reply via email to