sniper Fri Feb 28 02:35:11 2003 EDT
Modified files: (Branch: PHP_4_3)
/php4/ext/curl curl.c
Log:
- MFH: Fixed bug #22312 (crash on failed connection when curl_getinfo() was called).
(Phil Oleson <[EMAIL PROTECTED]>)
Index: php4/ext/curl/curl.c
diff -u php4/ext/curl/curl.c:1.124.2.4 php4/ext/curl/curl.c:1.124.2.5
--- php4/ext/curl/curl.c:1.124.2.4 Mon Feb 3 15:56:28 2003
+++ php4/ext/curl/curl.c Fri Feb 28 02:35:11 2003
@@ -16,7 +16,7 @@
+----------------------------------------------------------------------+
*/
-/* $Id: curl.c,v 1.124.2.4 2003/02/03 20:56:28 iliaa Exp $ */
+/* $Id: curl.c,v 1.124.2.5 2003/02/28 07:35:11 sniper Exp $ */
#ifdef HAVE_CONFIG_H
#include "config.h"
@@ -1036,46 +1036,68 @@
array_init(return_value);
- curl_easy_getinfo(ch->cp, CURLINFO_EFFECTIVE_URL, &s_code);
- CAAS("url", s_code);
- curl_easy_getinfo(ch->cp, CURLINFO_CONTENT_TYPE, &s_code);
- CAAS("content_type", s_code);
- curl_easy_getinfo(ch->cp, CURLINFO_HTTP_CODE, &l_code);
- CAAL("http_code", l_code);
- curl_easy_getinfo(ch->cp, CURLINFO_HEADER_SIZE, &l_code);
- CAAL("header_size", l_code);
- curl_easy_getinfo(ch->cp, CURLINFO_REQUEST_SIZE, &l_code);
- CAAL("request_size", l_code);
- curl_easy_getinfo(ch->cp, CURLINFO_FILETIME, &l_code);
- CAAL("filetime", l_code);
- curl_easy_getinfo(ch->cp, CURLINFO_SSL_VERIFYRESULT, &l_code);
- CAAL("ssl_verify_result", l_code);
- curl_easy_getinfo(ch->cp, CURLINFO_REDIRECT_COUNT, &l_code);
- CAAL("redirect_count", l_code);
- curl_easy_getinfo(ch->cp, CURLINFO_TOTAL_TIME, &d_code);
- CAAD("total_time", d_code);
- curl_easy_getinfo(ch->cp, CURLINFO_NAMELOOKUP_TIME, &d_code);
- CAAD("namelookup_time", d_code);
- curl_easy_getinfo(ch->cp, CURLINFO_CONNECT_TIME, &d_code);
- CAAD("connect_time", d_code);
- curl_easy_getinfo(ch->cp, CURLINFO_PRETRANSFER_TIME, &d_code);
- CAAD("pretransfer_time", d_code);
- curl_easy_getinfo(ch->cp, CURLINFO_SIZE_UPLOAD, &d_code);
- CAAD("size_upload", d_code);
- curl_easy_getinfo(ch->cp, CURLINFO_SIZE_DOWNLOAD, &d_code);
- CAAD("size_download", d_code);
- curl_easy_getinfo(ch->cp, CURLINFO_SPEED_DOWNLOAD, &d_code);
- CAAD("speed_download", d_code);
- curl_easy_getinfo(ch->cp, CURLINFO_SPEED_UPLOAD, &d_code);
- CAAD("speed_upload", d_code);
- curl_easy_getinfo(ch->cp, CURLINFO_CONTENT_LENGTH_DOWNLOAD, &d_code);
- CAAD("download_content_length", d_code);
- curl_easy_getinfo(ch->cp, CURLINFO_CONTENT_LENGTH_UPLOAD, &d_code);
- CAAD("upload_content_length", d_code);
- curl_easy_getinfo(ch->cp, CURLINFO_STARTTRANSFER_TIME, &d_code);
- CAAD("starttransfer_time", d_code);
- curl_easy_getinfo(ch->cp, CURLINFO_REDIRECT_TIME, &d_code);
- CAAD("redirect_time", d_code);
+ if (curl_easy_getinfo(ch->cp, CURLINFO_EFFECTIVE_URL, &s_code) ==
CURLE_OK) {
+ CAAS("url", s_code);
+ }
+ if (curl_easy_getinfo(ch->cp, CURLINFO_CONTENT_TYPE, &s_code) ==
CURLE_OK) {
+ if (s_code != NULL) {
+ CAAS("content_type", s_code);
+ }
+ }
+ if (curl_easy_getinfo(ch->cp, CURLINFO_HTTP_CODE, &l_code) ==
CURLE_OK) {
+ CAAL("http_code", l_code);
+ }
+ if (curl_easy_getinfo(ch->cp, CURLINFO_HEADER_SIZE, &l_code) ==
CURLE_OK) {
+ CAAL("header_size", l_code);
+ }
+ if (curl_easy_getinfo(ch->cp, CURLINFO_REQUEST_SIZE, &l_code) ==
CURLE_OK) {
+ CAAL("request_size", l_code);
+ }
+ if (curl_easy_getinfo(ch->cp, CURLINFO_FILETIME, &l_code) == CURLE_OK)
{
+ CAAL("filetime", l_code);
+ }
+ if (curl_easy_getinfo(ch->cp, CURLINFO_SSL_VERIFYRESULT, &l_code) ==
CURLE_OK) {
+ CAAL("ssl_verify_result", l_code);
+ }
+ if (curl_easy_getinfo(ch->cp, CURLINFO_REDIRECT_COUNT, &l_code) ==
CURLE_OK) {
+ CAAL("redirect_count", l_code);
+ }
+ if (curl_easy_getinfo(ch->cp, CURLINFO_TOTAL_TIME, &d_code) ==
CURLE_OK) {
+ CAAD("total_time", d_code);
+ }
+ if (curl_easy_getinfo(ch->cp, CURLINFO_NAMELOOKUP_TIME, &d_code) ==
CURLE_OK) {
+ CAAD("namelookup_time", d_code);
+ }
+ if (curl_easy_getinfo(ch->cp, CURLINFO_CONNECT_TIME, &d_code) ==
CURLE_OK) {
+ CAAD("connect_time", d_code);
+ }
+ if (curl_easy_getinfo(ch->cp, CURLINFO_PRETRANSFER_TIME, &d_code) ==
CURLE_OK) {
+ CAAD("pretransfer_time", d_code);
+ }
+ if (curl_easy_getinfo(ch->cp, CURLINFO_SIZE_UPLOAD, &d_code) ==
CURLE_OK) {
+ CAAD("size_upload", d_code);
+ }
+ if (curl_easy_getinfo(ch->cp, CURLINFO_SIZE_DOWNLOAD, &d_code) ==
CURLE_OK) {
+ CAAD("size_download", d_code);
+ }
+ if (curl_easy_getinfo(ch->cp, CURLINFO_SPEED_DOWNLOAD, &d_code) ==
CURLE_OK) {
+ CAAD("speed_download", d_code);
+ }
+ if (curl_easy_getinfo(ch->cp, CURLINFO_SPEED_UPLOAD, &d_code) ==
CURLE_OK) {
+ CAAD("speed_upload", d_code);
+ }
+ if (curl_easy_getinfo(ch->cp, CURLINFO_CONTENT_LENGTH_DOWNLOAD,
&d_code) == CURLE_OK) {
+ CAAD("download_content_length", d_code);
+ }
+ if (curl_easy_getinfo(ch->cp, CURLINFO_CONTENT_LENGTH_UPLOAD, &d_code)
== CURLE_OK) {
+ CAAD("upload_content_length", d_code);
+ }
+ if (curl_easy_getinfo(ch->cp, CURLINFO_STARTTRANSFER_TIME, &d_code) ==
CURLE_OK) {
+ CAAD("starttransfer_time", d_code);
+ }
+ if (curl_easy_getinfo(ch->cp, CURLINFO_REDIRECT_TIME, &d_code) ==
CURLE_OK) {
+ CAAD("redirect_time", d_code);
+ }
} else {
option = Z_LVAL_PP(zoption);
switch (option) {
--
PHP CVS Mailing List (http://www.php.net/)
To unsubscribe, visit: http://www.php.net/unsub.php