pollita Tue Sep 7 18:46:25 2004 EDT Modified files: /php-src/ext/standard http_fopen_wrapper.c Log: Chunk Length may optionally be followed by whitespace http://cvs.php.net/diff.php/php-src/ext/standard/http_fopen_wrapper.c?r1=1.90&r2=1.91&ty=u Index: php-src/ext/standard/http_fopen_wrapper.c diff -u php-src/ext/standard/http_fopen_wrapper.c:1.90 php-src/ext/standard/http_fopen_wrapper.c:1.91 --- php-src/ext/standard/http_fopen_wrapper.c:1.90 Tue Sep 7 15:27:11 2004 +++ php-src/ext/standard/http_fopen_wrapper.c Tue Sep 7 18:46:24 2004 @@ -19,7 +19,7 @@ | Sara Golemon <[EMAIL PROTECTED]> | +----------------------------------------------------------------------+ */ -/* $Id: http_fopen_wrapper.c,v 1.90 2004/09/07 19:27:11 pollita Exp $ */ +/* $Id: http_fopen_wrapper.c,v 1.91 2004/09/07 22:46:24 pollita Exp $ */ #include "php.h" #include "php_globals.h" @@ -186,6 +186,8 @@ memcpy(data->chunksize_buffer_pos, buf, buflen); memset(data->chunksize_buffer_pos + buflen, 0, HTTP_CHUNK_SIZE_MAXLEN - buflen - (data->chunksize_buffer_pos - data->chunksize_buffer)); chunk_remaining = strtoul(data->chunksize_buffer, &e, 16); + /* Skip whitespace */ + while ((*e == ' ') && (e < (data->chunksize_buffer + HTTP_CHUNK_SIZE_MAXLEN))) e++; if (*e != '\r') { if (!((*e >= '0' && *e <= '9') || (*e >= 'a' && *e <= 'f') || @@ -201,6 +203,8 @@ } else { memcpy(data->chunksize_buffer_pos, buf, HTTP_CHUNK_SIZE_MAXLEN - (data->chunksize_buffer_pos - data->chunksize_buffer)); chunk_remaining = strtoul(data->chunksize_buffer, &e, 16); + /* Skip whitespace */ + while ((*e == ' ') && (e < (data->chunksize_buffer + HTTP_CHUNK_SIZE_MAXLEN))) e++; if (*e != '\r') { /* Invalid chunksize */ return PSFS_ERR_FATAL; @@ -799,7 +803,6 @@ php_stream_filter_append(&stream->readfilters, filter); } } - } return stream;
-- PHP CVS Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php