From 5ec786b02e0b460320b9bb4d75f5ddb8b1016656 Mon Sep 17 00:00:00 2001 From: Daniel Stenberg Date: Thu, 2 Aug 2007 20:10:28 +0000 Subject: [PATCH] Scott Cantor filed bug report #1766320 (http://curl.haxx.se/bug/view.cgi?id=1766320) pointing out that the libcurl code accessed two curl_easy_setopt() options (CURLOPT_DNS_CACHE_TIMEOUT and CURLOPT_DNS_USE_GLOBAL_CACHE) as ints even though they're documented to be passed in as longs, and that makes a difference on 64 bit architectures. --- CHANGES | 6 ++++++ RELEASE-NOTES | 4 +++- lib/url.c | 7 +++---- 3 files changed, 12 insertions(+), 5 deletions(-) diff --git a/CHANGES b/CHANGES index 106f01df8..1580cc2cf 100644 --- a/CHANGES +++ b/CHANGES @@ -7,6 +7,12 @@ Changelog Daniel S (2 August 2007) +- Scott Cantor filed bug report #1766320 + (http://curl.haxx.se/bug/view.cgi?id=1766320) pointing out that the libcurl + code accessed two curl_easy_setopt() options (CURLOPT_DNS_CACHE_TIMEOUT and + CURLOPT_DNS_USE_GLOBAL_CACHE) as ints even though they're documented to be + passed in as longs, and that makes a difference on 64 bit architectures. + - Dmitriy Sergeyev reported a regression: resumed file:// transfers broke after 7.16.2. This is much due to the different treatment file:// gets internally, but now I added test 231 to make it less likely to happen again diff --git a/RELEASE-NOTES b/RELEASE-NOTES index bc3fe03cd..ffc8992ee 100644 --- a/RELEASE-NOTES +++ b/RELEASE-NOTES @@ -33,6 +33,7 @@ This release includes the following bugfixes: o AIX 4 and 5 get to use non-blocking sockets o small POST with NTLM o resumed file:// transfers + o CURLOPT_DNS_CACHE_TIMEOUT and CURLOPT_DNS_USE_GLOBAL_CACHE are 64 bit "clean" This release includes the following known bugs: @@ -54,6 +55,7 @@ advice from friends like these: Dan Fandrich, Song Ma, Daniel Black, Giancarlo Formicuccia, Shmulik Regev, Daniel Cater, Colin Hogben, Jofell Gallardo, Daniel Johnson, Ralf S. Engelschall, James Housley, Chris Flerackers, Patrick Monnerat, - Jayesh A Shah, Greg Zavertnik, Peter O'Gorman, Greg Morse, Dmitriy Sergeyev + Jayesh A Shah, Greg Zavertnik, Peter O'Gorman, Greg Morse, Dmitriy Sergeyev, + Scott Cantor Thanks! (and sorry if I forgot to mention someone) diff --git a/lib/url.c b/lib/url.c index 226e7be3b..35f8644b8 100644 --- a/lib/url.c +++ b/lib/url.c @@ -690,14 +690,13 @@ CURLcode Curl_setopt(struct SessionHandle *data, CURLoption option, switch(option) { case CURLOPT_DNS_CACHE_TIMEOUT: - data->set.dns_cache_timeout = va_arg(param, int); + data->set.dns_cache_timeout = va_arg(param, long); break; case CURLOPT_DNS_USE_GLOBAL_CACHE: { - int use_cache = va_arg(param, int); - if (use_cache) { + long use_cache = va_arg(param, long); + if (use_cache) Curl_global_host_cache_init(); - } data->set.global_dns_cache = (bool)(0 != use_cache); }