From bfa9c42c2561fd8ff6504cfd94a2df379df9b77f Mon Sep 17 00:00:00 2001 From: Daniel Stenberg Date: Fri, 21 Oct 2005 19:21:19 +0000 Subject: [PATCH] Bradford Bruce made the windows resolver code properly return CURLE_COULDNT_RESOLVE_PROXY and CURLE_COULDNT_RESOLVE_HOST on resolving errors (as documented). --- CHANGES | 5 +++++ RELEASE-NOTES | 7 ++++--- lib/hostthre.c | 17 ++++++++++++----- 3 files changed, 21 insertions(+), 8 deletions(-) diff --git a/CHANGES b/CHANGES index 7ec9b1460..df4fd6c22 100644 --- a/CHANGES +++ b/CHANGES @@ -8,6 +8,11 @@ +Daniel (21 October 2005) +- Bradford Bruce made the windows resolver code properly return + CURLE_COULDNT_RESOLVE_PROXY and CURLE_COULDNT_RESOLVE_HOST on resolving + errors (as documented). + Daniel (20 October 2005) - Dave Dribin made libcurl understand and handle cases when the server (wrongly) sends *two* WWW-Authenticate headers for Digest. While this should diff --git a/RELEASE-NOTES b/RELEASE-NOTES index 4c801f9a7..39a894b3e 100644 --- a/RELEASE-NOTES +++ b/RELEASE-NOTES @@ -3,9 +3,9 @@ Curl and libcurl 7.15.1 Public curl release number: 91 Releases counted from the very beginning: 118 Available command line options: 109 - Available curl_easy_setopt() options: 124 + Available curl_easy_setopt() options: 125 Number of public functions in libcurl: 46 - Amount of public web site mirrors: 24 + Amount of public web site mirrors: 26 Number of known libcurl bindings: 32 Number of contributors: 459 @@ -15,6 +15,7 @@ This release includes the following changes: This release includes the following bugfixes: + o name resolve error codes fixed for Windows builds o double WWW-Authenticate Digest headers are now handled o curl-config --vernum fixed @@ -27,6 +28,6 @@ Other curl-related news since the previous public release: This release would not have looked like this without help, code, reports and advice from friends like these: - Dave Dribin + Dave Dribin, Bradford Bruce Thanks! (and sorry if I forgot to mention someone) diff --git a/lib/hostthre.c b/lib/hostthre.c index c364ebfab..eb8e02e12 100644 --- a/lib/hostthre.c +++ b/lib/hostthre.c @@ -660,15 +660,22 @@ CURLcode Curl_wait_for_resolv(struct connectdata *conn, rc = CURLE_OUT_OF_MEMORY; failf(data, "Could not resolve host: %s", curl_easy_strerror(rc)); } + else if(conn->async.done) { + if(conn->bits.httpproxy) { + failf(data, "Could not resolve proxy: %s; %s", + conn->proxy.dispname, Curl_strerror(conn, conn->async.status)); + rc = CURLE_COULDNT_RESOLVE_PROXY; + } + else { + failf(data, "Could not resolve host: %s; %s", + conn->host.name, Curl_strerror(conn, conn->async.status)); + rc = CURLE_COULDNT_RESOLVE_HOST; + } + } else if (td->thread_status == (DWORD)-1 || conn->async.status == NO_DATA) { failf(data, "Resolving host timed out: %s", conn->host.name); rc = CURLE_OPERATION_TIMEDOUT; } - else if(conn->async.done) { - failf(data, "Could not resolve host: %s; %s", - conn->host.name, Curl_strerror(conn,conn->async.status)); - rc = CURLE_COULDNT_RESOLVE_HOST; - } else rc = CURLE_OPERATION_TIMEDOUT; }