lkml.org 
[lkml]   [2001]   [Sep]   [6]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
From
SubjectRe: ioctl SIOCGIFNETMASK: ip alias bug 2.4.9 and 2.2.19
On Wed, 05 Sep 2001, jamal wrote:

> --- devinet.c 2001/09/04 19:18:51 1.1
> +++ devinet.c 2001/09/04 19:31:13
> @@ -530,7 +530,7 @@
>
> if ((in_dev=__in_dev_get(dev)) != NULL) {
> for (ifap=&in_dev->ifa_list; (ifa=*ifap) != NULL;
> ifap=&ifa->ifa_next)
> - if (strcmp(ifr.ifr_name, ifa->ifa_label) == 0)
> + if ((strcmp(ifr.ifr_name, ifa->ifa_label) == 0) ||
> (sin->sin_addr.s_addr == ifa->ifa_address))
> break;
> }

Thanks for trying to help, however, that's not going to work this way, sorry.

1. "sin" is cleared a few lines above, so you end up comparing 0.0.0.0
against "ifa->ifa_address".

2. two interfaces can have the same configured address, your patch might
end up returning the wrong address. You'd need to write && where you
wrote ||, and you'd need to save the old address.

See the patch that I sent.

--
Matthias Andree
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/

\
 
 \ /
  Last update: 2005-03-22 13:02    [W:0.027 / U:0.956 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site