X-Git-Url: https://git.sven.stormbind.net/?p=sven%2Ftclcurl.git;a=blobdiff_plain;f=generic%2Ftclcurl.c;fp=generic%2Ftclcurl.c;h=21c947cd369afb3b27c16b606d46a48dc192b5af;hp=8185c30720c6537159de9a2b9f2a8635c089a1eb;hb=8fe9e487b76cf5338013cbf22d1bdaad14f85b2b;hpb=43eebec0020886a7d616cc75fb6c05cf85fc6445 diff --git a/generic/tclcurl.c b/generic/tclcurl.c index 8185c30..21c947c 100755 --- a/generic/tclcurl.c +++ b/generic/tclcurl.c @@ -748,8 +748,13 @@ curlSetOpts(Tcl_Interp *interp, struct curlObjData *curlData, /* fprintf(stdout,"Section contents: %s\n",Tcl_GetString(httpPostData[i+1]));*/ tmpStr=Tcl_GetStringFromObj(httpPostData[i+1],&curlformBufferSize); formArray[formArrayIndex].option = CURLFORM_COPYCONTENTS; - formArray[formArrayIndex].value = (char *) - memcpy(Tcl_Alloc(curlformBufferSize), tmpStr, curlformBufferSize); + + formArray[formArrayIndex].value = Tcl_Alloc((curlformBufferSize > 0) ? curlformBufferSize : 1); + if (curlformBufferSize > 0) { + memcpy((char *)formArray[formArrayIndex].value,tmpStr,curlformBufferSize); + } else { + memset((char *)formArray[formArrayIndex].value,0,1); + } formArrayIndex++; formArray[formArrayIndex].option = CURLFORM_CONTENTSLENGTH; @@ -854,6 +859,15 @@ curlSetOpts(Tcl_Interp *interp, struct curlObjData *curlData, break; case 3: longNumber=CURL_SSLVERSION_SSLv3; + break; + case 4: + longNumber=CURL_SSLVERSION_TLSv1_0; + break; + case 5: + longNumber=CURL_SSLVERSION_TLSv1_1; + break; + case 6: + longNumber=CURL_SSLVERSION_TLSv1_2; } tmpObjPtr=Tcl_NewLongObj(longNumber); if (SetoptLong(interp,curlHandle,CURLOPT_SSLVERSION,