diff options
author | Yang Tse <yangsita@gmail.com> | 2012-01-19 20:20:56 +0100 |
---|---|---|
committer | Yang Tse <yangsita@gmail.com> | 2012-01-19 20:20:56 +0100 |
commit | 4ab65461b6aefd0654a5b586bc6ee57976f3fba3 (patch) | |
tree | b566773d0190ee88302227cb96e01db18854a2bc | |
parent | f1a1df1e6c4fed8dc5816f6e09a0cfeed64bb71f (diff) | |
download | c-ares-4ab65461b6aefd0654a5b586bc6ee57976f3fba3.tar.gz c-ares-4ab65461b6aefd0654a5b586bc6ee57976f3fba3.tar.bz2 c-ares-4ab65461b6aefd0654a5b586bc6ee57976f3fba3.zip |
ares_init.c: fix compiler warning on winsock builds
-rw-r--r-- | ares_init.c | 10 | ||||
-rw-r--r-- | ares_setup.h | 14 |
2 files changed, 20 insertions, 4 deletions
diff --git a/ares_init.c b/ares_init.c index 0c1d545..d18f97e 100644 --- a/ares_init.c +++ b/ares_init.c @@ -1,6 +1,6 @@ /* Copyright 1998 by the Massachusetts Institute of Technology. - * Copyright (C) 2007-2011 by Daniel Stenberg + * Copyright (C) 2007-2012 by Daniel Stenberg * * Permission to use, copy, modify, and distribute this * software and its documentation for any purpose and without @@ -1186,11 +1186,14 @@ static int init_by_defaults(ares_channel channel) /* Derive a default domain search list from the kernel hostname, * or set it to empty if the hostname isn't helpful. */ +#ifndef HAVE_GETHOSTNAME + channel->ndomains = 0; /* default to none */ +#else + GETHOSTNAME_TYPE_ARG2 lenv = 64; size_t len = 64; int res; channel->ndomains = 0; /* default to none */ -#ifdef HAVE_GETHOSTNAME hostname = malloc(len); if(!hostname) { rc = ARES_ENOMEM; @@ -1198,11 +1201,12 @@ static int init_by_defaults(ares_channel channel) } do { - res = gethostname(hostname, len); + res = gethostname(hostname, lenv); if(toolong(res)) { char *p; len *= 2; + lenv *= 2; p = realloc(hostname, len); if(!p) { rc = ARES_ENOMEM; diff --git a/ares_setup.h b/ares_setup.h index a46c510..1ef054d 100644 --- a/ares_setup.h +++ b/ares_setup.h @@ -2,7 +2,7 @@ #define HEADER_CARES_SETUP_H -/* Copyright (C) 2004 - 2009 by Daniel Stenberg et al +/* Copyright (C) 2004 - 2012 by Daniel Stenberg et al * * Permission to use, copy, modify, and distribute this software and its * documentation for any purpose and without fee is hereby granted, provided @@ -157,6 +157,18 @@ #endif /* HAVE_CONFIG_H */ +/* + * Arg 2 type for gethostname in case it hasn't been defined in config file. + */ + +#ifndef GETHOSTNAME_TYPE_ARG2 +# ifdef USE_WINSOCK +# define GETHOSTNAME_TYPE_ARG2 int +# else +# define GETHOSTNAME_TYPE_ARG2 size_t +# endif +#endif + #ifdef __POCC__ # include <sys/types.h> # include <unistd.h> |