From 70ad8a0b2be173a71a0e55263da55c78fcd505b6 Mon Sep 17 00:00:00 2001 From: Daniel Stenberg Date: Wed, 15 Aug 2001 13:38:36 +0000 Subject: [PATCH] Using CURLOPT_POST without using CURLOPT_POSTFIELDS caused us to strlen() a NULL pointer. Now, we treat a missing CURLOPT_POSTFIELDS as if there is no data to send. --- lib/http.c | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/lib/http.c b/lib/http.c index 16c03b123..ba9685642 100644 --- a/lib/http.c +++ b/lib/http.c @@ -764,6 +764,17 @@ CURLcode Curl_http(struct connectdata *conn) if(HTTPREQ_POST == data->httpreq) { /* this is the simple POST, using x-www-form-urlencoded style */ + if(!data->postfields) { + /* + * This is an attempt to do a POST without having anything to + * actually send. Let's make a NULL pointer equal "" here. Good/bad + * ? + */ + data->postfields = ""; + data->postfieldsize = 0; /* it might been set to something illegal, + anything > 0 would be! */ + } + if(!checkheaders(data, "Content-Length:")) /* we allow replacing this header, although it isn't very wise to actually set your own */