summaryrefslogtreecommitdiffstats
path: root/libglusterfs/src/xlator.c
diff options
context:
space:
mode:
authorRaghavendra G <raghavendra@gluster.com>2010-03-03 02:14:37 +0000
committerAnand V. Avati <avati@dev.gluster.com>2010-03-04 02:04:04 -0800
commitdb199434dfccfb4db5335f6ba18298e9e61bc415 (patch)
tree316180787f1ccac2dad5eb0a04da5c36cba1a232 /libglusterfs/src/xlator.c
parent85a1716cd55b002b5d20a7903e28f106ee614814 (diff)
transport/socket: fix to valid_ipv6_address.
- while checking for hexadecimal numbers, strtol on valid strings of hexadecimal numbers will return a NULL string in endptr (but not a NULL endptr). Thanks to Donald Neal <dmneal@wand.net.nz>, for pointing this out. Signed-off-by: Raghavendra G <raghavendra@gluster.com> Signed-off-by: Anand V. Avati <avati@dev.gluster.com> BUG: 693 (glusterfs 3.0.2 will not listen on IPv6 address) URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=693
Diffstat (limited to 'libglusterfs/src/xlator.c')
-rw-r--r--libglusterfs/src/xlator.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/libglusterfs/src/xlator.c b/libglusterfs/src/xlator.c
index 44494a944..bc36173d1 100644
--- a/libglusterfs/src/xlator.c
+++ b/libglusterfs/src/xlator.c
@@ -190,7 +190,8 @@ valid_ipv6_address (char *address, int length)
{
hex_numbers++;
value = strtol (prev, &endptr, 16);
- if ((value > 0xffff) || (value < 0) || (endptr != NULL)) {
+ if ((value > 0xffff) || (value < 0)
+ || (endptr != NULL && *endptr != '\0')) {
ret = 0;
goto out;
}