- client: put back the call to res_init() on lookup failure.

Apparently it worked after all.

svn path=/trunk/boinc/; revision=17793
This commit is contained in:
David Anderson 2009-04-12 15:30:45 +00:00
parent 3dfd2363d6
commit 72a59f0527
4 changed files with 17 additions and 0 deletions

View File

@ -3826,3 +3826,12 @@ Rytis 11 Apr 2009
html/inc/ html/inc/
util.inc util.inc
David 12 Apr 2009
- client: put back the call to res_init() on lookup failure.
Apparently it worked after all.
client/
http_curl.cpp
lib/
network.cpp,h

View File

@ -1038,6 +1038,7 @@ void HTTP_OP::handle_messages(CURLMsg *pcurlMsg) {
strcpy(error_msg, curl_easy_strerror(CurlResult)); strcpy(error_msg, curl_easy_strerror(CurlResult));
switch(CurlResult) { switch(CurlResult) {
case CURLE_COULDNT_RESOLVE_HOST: case CURLE_COULDNT_RESOLVE_HOST:
reset_dns();
http_op_retval = ERR_GETHOSTBYNAME; http_op_retval = ERR_GETHOSTBYNAME;
break; break;
case CURLE_COULDNT_CONNECT: case CURLE_COULDNT_CONNECT:

View File

@ -202,4 +202,10 @@ int WinsockCleanup() {
#endif #endif
void reset_dns() {
#ifndef _WIN32
res_init();
#endif
}
const char *BOINC_RCSID_557bf0741f="$Id$"; const char *BOINC_RCSID_557bf0741f="$Id$";

View File

@ -46,6 +46,7 @@ extern int boinc_socket_asynch(int sock, bool asynch);
extern void boinc_close_socket(int sock); extern void boinc_close_socket(int sock);
extern int get_socket_error(int fd); extern int get_socket_error(int fd);
extern const char* socket_error_str(); extern const char* socket_error_str();
extern void reset_dns();
#if defined(_WIN32) && defined(USE_WINSOCK) #if defined(_WIN32) && defined(USE_WINSOCK)
typedef int boinc_socklen_t; typedef int boinc_socklen_t;