From 736af32b498687be9d1cc391e07631f8515e4376 Mon Sep 17 00:00:00 2001 From: Yang Tse Date: Sun, 10 Feb 2008 04:20:09 +0000 Subject: [PATCH] Bug report #1888932 (http://curl.haxx.se/bug/view.cgi?id=1888932) points out and provides test program that demonstrates that libcurl might not set error description message for error CURLE_COULDNT_RESOLVE_HOST for Windows threaded name resolver builds. Fixed now. --- CHANGES | 6 ++++++ RELEASE-NOTES | 1 + lib/hostthre.c | 6 +++++- 3 files changed, 12 insertions(+), 1 deletion(-) diff --git a/CHANGES b/CHANGES index 28e8d1f..3ac56fc 100644 --- a/CHANGES +++ b/CHANGES @@ -6,6 +6,12 @@ Changelog +Yang Tse (10 Feb 2008) +- Bug report #1888932 (http://curl.haxx.se/bug/view.cgi?id=1888932) points out + and provides test program that demonstrates that libcurl might not set error + description message for error CURLE_COULDNT_RESOLVE_HOST for Windows threaded + name resolver builds. Fixed now. + Daniel Fandrich (8 Feb 2007) - Added key words to all SSL-using tests so they can be skipped if necessary. Removed a few unnecessary requires SSL statements. diff --git a/RELEASE-NOTES b/RELEASE-NOTES index 36f1a7f..286cc17 100644 --- a/RELEASE-NOTES +++ b/RELEASE-NOTES @@ -18,6 +18,7 @@ This release includes the following bugfixes: o improved pipelining o improved strdup replacement o GnuTLS-built libcurl failed when doing global cleanup and reinit + o error message problem when unable to resolve a host on Windows This release includes the following known bugs: diff --git a/lib/hostthre.c b/lib/hostthre.c index c165482..1e90031 100644 --- a/lib/hostthre.c +++ b/lib/hostthre.c @@ -5,7 +5,7 @@ * | (__| |_| | _ <| |___ * \___|\___/|_| \_\_____| * - * Copyright (C) 1998 - 2007, Daniel Stenberg, , et al. + * Copyright (C) 1998 - 2008, Daniel Stenberg, , et al. * * This software is licensed as described in the file COPYING, which * you should have received as part of this distribution. The terms @@ -682,6 +682,8 @@ CURLcode Curl_wait_for_resolv(struct connectdata *conn, CURLcode Curl_is_resolved(struct connectdata *conn, struct Curl_dns_entry **entry) { + struct SessionHandle *data = conn->data; + *entry = NULL; if(conn->async.done) { @@ -689,6 +691,8 @@ CURLcode Curl_is_resolved(struct connectdata *conn, Curl_destroy_thread_data(&conn->async); if(!conn->async.dns) { TRACE(("Curl_is_resolved(): CURLE_COULDNT_RESOLVE_HOST\n")); + failf(data, "Could not resolve host: %s; %s", + conn->host.name, Curl_strerror(conn, conn->async.status)); return CURLE_COULDNT_RESOLVE_HOST; } *entry = conn->async.dns; -- 2.7.4