_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
int count;
int total = 0;
size_t copy_size;
- uint64_t if_speed = 1000 * 1000 * 1000; /* 1GBit */
if (getifaddrs(&iflist) < 0) {
return -1;
/* 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;