iliaa Sat Sep 7 17:57:12 2002 EDT Modified files: /php4/ext/standard http_fopen_wrapper.c Log: Added a check to ensure user_agent header is not sent if user_agent value if blank. Index: php4/ext/standard/http_fopen_wrapper.c diff -u php4/ext/standard/http_fopen_wrapper.c:1.45 php4/ext/standard/http_fopen_wrapper.c:1.46 --- php4/ext/standard/http_fopen_wrapper.c:1.45 Sat Sep 7 16:58:30 2002 +++ php4/ext/standard/http_fopen_wrapper.c Sat Sep 7 17:57:11 2002 @@ -18,7 +18,7 @@ | Wez Furlong <[EMAIL PROTECTED]> | +----------------------------------------------------------------------+ */ -/* $Id: http_fopen_wrapper.c,v 1.45 2002/09/07 20:58:30 wez Exp $ */ +/* $Id: http_fopen_wrapper.c,v 1.46 2002/09/07 21:57:11 iliaa Exp $ */ #include "php.h" #include "php_globals.h" @@ -211,19 +211,23 @@ #define _UA_HEADER "User-Agent: %s\r\n" char *ua; size_t ua_len; - + ua_len = sizeof(_UA_HEADER) + strlen(ua_str); - ua = emalloc(ua_len + 1); - if ((ua_len = snprintf(ua, ua_len, _UA_HEADER, ua_str)) > 0) { - ua[ua_len] = 0; - php_stream_write(stream, ua, ua_len); - } else { - php_error(E_WARNING, "Cannot construct User-agent header"); - } + + /* ensure the header is only sent if user_agent is not blank */ + if (ua_len > sizeof(_UA_HEADER)) { + ua = emalloc(ua_len + 1); + if ((ua_len = snprintf(ua, ua_len, _UA_HEADER, ua_str)) > 0) { + ua[ua_len] = 0; + php_stream_write(stream, ua, ua_len); + } else { + php_error(E_WARNING, "Cannot construct User-agent +header"); + } - if (ua) { - efree(ua); - } + if (ua) { + efree(ua); + } + } } php_stream_write(stream, "\r\n", sizeof("\r\n")-1); @@ -271,7 +275,7 @@ } } - if( reqok ) { + if (reqok) { /* read past HTTP headers */ http_header_line = emalloc(HTTP_HEADER_BLOCK_SIZE);
-- PHP CVS Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php