diff options
author | Anoop C S <anoopcs@redhat.com> | 2016-02-11 14:55:55 +0530 |
---|---|---|
committer | Michael Adam <obnox@samba.org> | 2016-02-13 16:22:22 +0100 |
commit | 9fb98e3e056f059e2a5fcdd54a6a0d60ecdb01b7 (patch) | |
tree | fdf81f757f3227775b87f0899d3b2537e9def831 /lib/socket | |
parent | 8b36428b195f6e1d1063f1abccb718f2665d271f (diff) | |
download | samba-9fb98e3e056f059e2a5fcdd54a6a0d60ecdb01b7.tar.gz |
lib/socket: Fix improper use of default interface speed
_get_interfaces() function from interfaces.c uses if_speed
variable to store interface speed and is initialized with a
default value at start. But if_speed populated via one
iteration for a specific IP address will be treated as the
default value for next iteration which is wrong. Therefore
change is to move the initialization cum declaration of
if_speed inside iteration of IP addresses loop.
BUG: https://bugzilla.samba.org/show_bug.cgi?id=11734
Signed-off-by: Anoop C S <anoopcs@redhat.com>
Reviewed-by: Michael Adam <obnox@samba.org>
Reviewed-by: Stefan Metzmacher <metze@samba.org>
Autobuild-User(master): Michael Adam <obnox@samba.org>
Autobuild-Date(master): Sat Feb 13 16:22:22 CET 2016 on sn-devel-144
Diffstat (limited to 'lib/socket')
-rw-r--r-- | lib/socket/interfaces.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/lib/socket/interfaces.c b/lib/socket/interfaces.c index 847fa6255ba..2cabf46316b 100644 --- a/lib/socket/interfaces.c +++ b/lib/socket/interfaces.c @@ -189,7 +189,6 @@ static int _get_interfaces(TALLOC_CTX *mem_ctx, struct iface_struct **pifaces) int count; int total = 0; size_t copy_size; - uint64_t if_speed = 1000 * 1000 * 1000; /* 1GBit */ if (getifaddrs(&iflist) < 0) { return -1; @@ -214,6 +213,7 @@ static int _get_interfaces(TALLOC_CTX *mem_ctx, struct iface_struct **pifaces) /* Loop through interfaces, looking for given IP address */ for (ifptr = iflist; ifptr != NULL; ifptr = ifptr->ifa_next) { + uint64_t if_speed = 1000 * 1000 * 1000; /* 1Gbps */ if (!ifptr->ifa_addr || !ifptr->ifa_netmask) { continue; |