summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDaniel Stenberg <daniel@haxx.se>2007-06-02 19:48:29 +0000
committerDaniel Stenberg <daniel@haxx.se>2007-06-02 19:48:29 +0000
commitefa231bec571af370931e4c5f4a6a23bded69edb (patch)
treea951c0713db518a2bbd3dbe03f41df6f5856df17
parent4e27354b82948d23492e5218f4462bcc38d99e1b (diff)
downloadc-ares-efa231bec571af370931e4c5f4a6a23bded69edb.tar.gz
c-ares-efa231bec571af370931e4c5f4a6a23bded69edb.tar.bz2
c-ares-efa231bec571af370931e4c5f4a6a23bded69edb.zip
Brad House fixed VS2005 compiler warnings due to time_t being 64bit.
He also made recent Microsoft compilers use _strdup() instead of strdup().
-rw-r--r--CHANGES3
-rw-r--r--ares_process.c4
-rw-r--r--ares_timeout.c5
-rw-r--r--setup.h5
4 files changed, 13 insertions, 4 deletions
diff --git a/CHANGES b/CHANGES
index 3e9f23c..944255e 100644
--- a/CHANGES
+++ b/CHANGES
@@ -2,6 +2,9 @@
* June 2 2007
+- Brad House fixed VS2005 compiler warnings due to time_t being 64bit.
+ He also made recent Microsoft compilers use _strdup() instead of strdup().
+
- Brad House's man pages for ares_save_options() and ares_destroy_options()
were added.
diff --git a/ares_process.c b/ares_process.c
index efc462a..745fe68 100644
--- a/ares_process.c
+++ b/ares_process.c
@@ -63,7 +63,7 @@ static void read_udp_packets(ares_channel channel, fd_set *read_fds,
ares_socket_t read_fd, time_t now);
static void process_timeouts(ares_channel channel, time_t now);
static void process_answer(ares_channel channel, unsigned char *abuf,
- int alen, int whichserver, int tcp, int now);
+ int alen, int whichserver, int tcp, time_t now);
static void handle_error(ares_channel channel, int whichserver, time_t now);
static struct query *next_server(ares_channel channel, struct query *query, time_t now);
static int open_tcp_socket(ares_channel channel, struct server_state *server);
@@ -398,7 +398,7 @@ static void process_timeouts(ares_channel channel, time_t now)
/* Handle an answer from a server. */
static void process_answer(ares_channel channel, unsigned char *abuf,
- int alen, int whichserver, int tcp, int now)
+ int alen, int whichserver, int tcp, time_t now)
{
int id, tc, rcode;
struct query *query;
diff --git a/ares_timeout.c b/ares_timeout.c
index fa5ae01..496db84 100644
--- a/ares_timeout.c
+++ b/ares_timeout.c
@@ -31,7 +31,8 @@ struct timeval *ares_timeout(ares_channel channel, struct timeval *maxtv,
{
struct query *query;
time_t now;
- int offset, min_offset;
+ time_t offset, min_offset; /* these use time_t since some 32 bit systems
+ still use 64 bit time_t! (like VS2005) */
/* No queries, no timeout (and no fetch of the current time). */
if (!channel->queries)
@@ -57,7 +58,7 @@ struct timeval *ares_timeout(ares_channel channel, struct timeval *maxtv,
*/
if (min_offset != -1 && (!maxtv || min_offset <= maxtv->tv_sec))
{
- tvbuf->tv_sec = min_offset;
+ tvbuf->tv_sec = (long)min_offset;
tvbuf->tv_usec = 0;
return tvbuf;
}
diff --git a/setup.h b/setup.h
index 2106df7..a20b8f1 100644
--- a/setup.h
+++ b/setup.h
@@ -144,6 +144,11 @@ int ares_strcasecmp(const char *s1, const char *s2);
same */
#define strncasecmp(a,b,c) ares_strncasecmp(a,b,c)
#define strcasecmp(a,b) ares_strcasecmp(a,b)
+#ifdef _MSC_VER
+# if _MSC_VER >= 1400
+# define strdup(a) _strdup(a)
+# endif
+#endif
#endif
/* IPv6 compatibility */