I have a Windows C++ application using libcurl 7.26. For one particular customer, the application runs normally for quite a while, then on a POST, we receive this error:

SSL read: error:00000000:lib(0):func(0):reason(0), errno 10054

There is an approximately 2 minute delay from the time of the POST to when
the error occurs. I understand that the error 10054 comes from the underlying tcp layer and means that the peer shut down the connection, so at first glance
this does not seem to be a libcurl problem.  However this customer is also
using a previous version of our software, which uses a much older libcurl
(not sure which version, but at least 3 years earlier than 7.26). And of
course the error does not happen with that version.  There may be some
other differences in the curl options we set, but very little, if any.  This
customer is using a proxy server, if that has any bearing. Does anybody have
an idea what could cause this error, that is under my control to fix?
The options we are setting for the POST are shown below.

curl_easy_setopt(curl, CURLOPT_URL, url);
curl_easy_setopt(curl, CURLOPT_USERAGENT, gAgent);
curl_easy_setopt(curl, CURLOPT_NOPROGRESS, 1);
curl_easy_setopt(curl, CURLOPT_CONNECTTIMEOUT, 30);
curl_easy_setopt(curl, CURLOPT_FOLLOWLOCATION, 1);
curl_easy_setopt(curl, CURLOPT_MAXREDIRS, 50);
curl_easy_setopt(curl, CURLOPT_WRITEFUNCTION, WriteMemoryCallback);
curl_easy_setopt(curl, CURLOPT_READFUNCTION, ReadMemoryCallback);
curl_easy_setopt(curl, CURLOPT_SSLENGINE_DEFAULT, 1);
curl_easy_setopt(curl, CURLOPT_SSLVERSION, CURL_SSLVERSION_SSLv3);
curl_easy_setopt(curl, CURLOPT_SSL_VERIFYPEER, 0);
curl_easy_setopt(curl, CURLOPT_SSL_VERIFYHOST, 0);
curl_easy_setopt(curl, CURLOPT_NOPROGRESS, 1);
curl_easy_setopt(curl, CURLOPT_NOSIGNAL, 1);
curl_easy_setopt(curl, CURLOPT_HTTPAUTH, CURLAUTH_NTLM);
curl_easy_setopt(curl, CURLOPT_USERPWD, userpass);
curl_easy_setopt(curl, CURLOPT_POST, 1);
curl_easy_setopt(curl, CURLOPT_POSTFIELDS, NULL);
curl_easy_setopt(curl, CURLOPT_HTTPHEADER, gslist);
curl_easy_setopt(curl, CURLOPT_POSTFIELDSIZE, (curl_off_t)fsize);
curl_easy_setopt(curl, CURLOPT_HEADERFUNCTION, HttpHeaderData);
curl_easy_setopt(curl, CURLOPT_PROXY, proxy);
curl_easy_setopt(curl, CURLOPT_PROXYUSERPWD, proxyuserpwd);

-------------------------------------------------------------------
List admin: http://cool.haxx.se/list/listinfo/curl-library
Etiquette:  http://curl.haxx.se/mail/etiquette.html

Reply via email to