cvs: php4 /ext/curl curl.c

From: Date: Tue, 20 Nov 2001 11:29:55 +0000
Subject: cvs: php4 /ext/curl curl.c
Groups: php.cvs 
Request: Send a blank email to php-cvs+get-8264@lists.php.net to get a copy of this message
sterling Tue Nov 20 06:29:55 2001 EDT Modified files: /php4/ext/curl curl.c Log: Fix a crash bug in CURLOPT_POSTFIELDS by using curl_formadd instead of curl_formparse Fix a crash bug when CURLOPT_INFILE is not properly specified. Index: php4/ext/curl/curl.c diff -u php4/ext/curl/curl.c:1.97 php4/ext/curl/curl.c:1.98 --- php4/ext/curl/curl.c:1.97 Tue Nov 13 06:47:52 2001 +++ php4/ext/curl/curl.c Tue Nov 20 06:29:54 2001 @@ -16,7 +16,7 @@ +----------------------------------------------------------------------+ */ -/* $Id: curl.c,v 1.97 2001/11/13 11:47:52 zeev Exp $ */ +/* $Id: curl.c,v 1.98 2001/11/20 11:29:54 sterling Exp $ */ #ifdef HAVE_CONFIG_H #include "config.h" @@ -706,8 +706,11 @@ case CURLOPT_INFILE: case CURLOPT_WRITEHEADER: case CURLOPT_STDERR: { - FILE *fp; + FILE *fp = NULL; ZEND_FETCH_RESOURCE(fp, FILE *, zvalue, -1, "File-Handle", php_file_le_fopen()); + if (!fp) { + RETURN_FALSE; + } error = CURLE_OK; switch (option) { @@ -789,11 +792,8 @@ zend_hash_get_current_key_ex(postfields, &string_key, &string_key_len, &num_key, 0, NULL); - postval = emalloc((string_key_len - 1) + Z_STRLEN_PP(current) + 1); - snprintf(postval, (sizeof("%s=%s") - 1) + (string_key_len - 1) + Z_STRLEN_PP(current), - "%s=%s", string_key, Z_STRVAL_PP(current)); - - error = curl_formparse(postval, &first, &last); + error = curl_formadd(&first, &last, CURLFORM_COPYNAME, string_key, + CURLFORM_PTRCONTENTS, Z_STRVAL_PP(current), CURLFORM_END); } if (error != CURLE_OK) {

« previous php.cvs (#8264) next »