Changeset 312
- Timestamp:
- 04/28/2005 01:04:42 PM (3 years ago)
- Location:
- trunk
- Files:
-
- 4 modified
-
src/mod_cgi.c (modified) (1 diff)
-
src/mod_fastcgi.c (modified) (1 diff)
-
src/mod_ssi.c (modified) (1 diff)
-
tests/mod-cgi.t (modified) (2 diffs)
Legend:
- Unmodified
- Added
- Removed
-
trunk/src/mod_cgi.c
r295 r312 943 943 944 944 for (j = 0; j < ds->key->used - 1; j++) { 945 p->tmp_buf->ptr[p->tmp_buf->used++] = 946 isalpha((unsigned char)ds->key->ptr[j]) ? 947 toupper((unsigned char)ds->key->ptr[j]) : '_'; 945 char cr = '_'; 946 if (light_isalpha(ds->key->ptr[j])) { 947 /* upper-case */ 948 cr = ds->key->ptr[j] & ~32; 949 } else if (light_isdigit(ds->key->ptr[j])) { 950 /* copy */ 951 cr = ds->key->ptr[j]; 952 } 953 p->tmp_buf->ptr[p->tmp_buf->used++] = cr; 948 954 } 949 955 p->tmp_buf->ptr[p->tmp_buf->used++] = '\0'; -
trunk/src/mod_fastcgi.c
r310 r312 1532 1532 buffer_prepare_append(srv->tmp_buf, ds->key->used + 2); 1533 1533 for (j = 0; j < ds->key->used - 1; j++) { 1534 srv->tmp_buf->ptr[srv->tmp_buf->used++] = 1535 light_isalpha(ds->key->ptr[j]) ? 1536 ds->key->ptr[j] & ~32 : '_'; 1534 char c = '_'; 1535 if (light_isalpha(ds->key->ptr[j])) { 1536 /* upper-case */ 1537 c = ds->key->ptr[j] & ~32; 1538 } else if (light_isdigit(ds->key->ptr[j])) { 1539 /* copy */ 1540 c = ds->key->ptr[j]; 1541 } 1542 srv->tmp_buf->ptr[srv->tmp_buf->used++] = c; 1537 1543 } 1538 1544 srv->tmp_buf->ptr[srv->tmp_buf->used++] = '\0'; -
trunk/src/mod_ssi.c
r295 r312 174 174 buffer_prepare_append(srv->tmp_buf, ds->key->used + 2); 175 175 for (j = 0; j < ds->key->used - 1; j++) { 176 srv->tmp_buf->ptr[srv->tmp_buf->used++] = 177 isalpha((unsigned char)ds->key->ptr[j]) ? 178 toupper((unsigned char)ds->key->ptr[j]) : '_'; 176 char c = '_'; 177 if (light_isalpha(ds->key->ptr[j])) { 178 /* upper-case */ 179 c = ds->key->ptr[j] & ~32; 180 } else if (light_isdigit(ds->key->ptr[j])) { 181 /* copy */ 182 c = ds->key->ptr[j]; 183 } 184 srv->tmp_buf->ptr[srv->tmp_buf->used++] = c; 179 185 } 180 186 srv->tmp_buf->ptr[srv->tmp_buf->used] = '\0'; -
trunk/tests/mod-cgi.t
r111 r312 3 3 use strict; 4 4 use IO::Socket; 5 use Test::More tests => 9;5 use Test::More tests => 10; 6 6 7 7 my $basedir = (defined $ENV{'top_builddir'} ? $ENV{'top_builddir'} : '..'); … … 234 234 235 235 @request = ( <<EOF 236 GET /get-header.pl?HTTP_XX_YY123 HTTP/1.0 237 xx-yy123: foo 238 EOF 239 ); 240 @response = ( { 'HTTP-Protocol' => 'HTTP/1.0', 'HTTP-Status' => 200, 'HTTP-Content' => 'foo' } ); 241 ok(handle_http == 0, 'cgi-env: quoting headers with numbers'); 242 243 @request = ( <<EOF 236 244 GET /get-header.pl?HTTP_HOST HTTP/1.0 237 245 Host: www.example.org

