diff options
author | Daniel Stenberg <daniel@haxx.se> | 2007-06-02 20:09:23 +0000 |
---|---|---|
committer | Daniel Stenberg <daniel@haxx.se> | 2007-06-02 20:09:23 +0000 |
commit | fc5a460e0ead6c0165bb714319357b09a0395b16 (patch) | |
tree | ed6d407dd752fb7841729dab66c5923b9f12ccaf | |
parent | efa231bec571af370931e4c5f4a6a23bded69edb (diff) | |
download | c-ares-fc5a460e0ead6c0165bb714319357b09a0395b16.tar.gz c-ares-fc5a460e0ead6c0165bb714319357b09a0395b16.tar.bz2 c-ares-fc5a460e0ead6c0165bb714319357b09a0395b16.zip |
Brad Spencer found and fixed three flaws in the code, found with the new
gcc 4.2.0 warning: -Waddress
-rw-r--r-- | AUTHORS | 1 | ||||
-rw-r--r-- | CHANGES | 3 | ||||
-rw-r--r-- | ares_init.c | 6 |
3 files changed, 7 insertions, 3 deletions
@@ -25,3 +25,4 @@ Vlad Dinulescu Brad House Shmulik Regev Ashish Sharma +Brad Spencer @@ -2,6 +2,9 @@ * June 2 2007 +- Brad Spencer found and fixed three flaws in the code, found with the new + gcc 4.2.0 warning: -Waddress + - Brad House fixed VS2005 compiler warnings due to time_t being 64bit. He also made recent Microsoft compilers use _strdup() instead of strdup(). diff --git a/ares_init.c b/ares_init.c index efde967..c9faf45 100644 --- a/ares_init.c +++ b/ares_init.c @@ -1059,7 +1059,7 @@ static int config_sortlist(struct apattern **sortlist, int *nsort, ipbufpfx[0] = '\0'; /* Lets see if it is CIDR */ /* First we'll try IPv6 */ - if ((bits = ares_inet_net_pton(AF_INET6, ipbufpfx ? ipbufpfx : ipbuf, + if ((bits = ares_inet_net_pton(AF_INET6, ipbufpfx[0] ? ipbufpfx : ipbuf, &pat.addr.addr6, sizeof(pat.addr.addr6))) > 0) { @@ -1069,7 +1069,7 @@ static int config_sortlist(struct apattern **sortlist, int *nsort, if (!sortlist_alloc(sortlist, nsort, &pat)) return ARES_ENOMEM; } - if (ipbufpfx && + if (ipbufpfx[0] && (bits = ares_inet_net_pton(AF_INET, ipbufpfx, &pat.addr.addr4, sizeof(pat.addr.addr4))) > 0) { @@ -1082,7 +1082,7 @@ static int config_sortlist(struct apattern **sortlist, int *nsort, /* See if it is just a regular IP */ else if (ip_addr(ipbuf, (int)(q-str), &pat.addr.addr4) == 0) { - if (ipbufpfx) + if (ipbufpfx[0]) { memcpy(ipbuf, str, (int)(q-str)); ipbuf[(int)(q-str)] = '\0'; |