[radvd-devel-l] [PATCH] don't run into endless loop
Reuben Hawkins
reubenhwk at gmail.com
Thu May 5 13:06:17 EDT 2011
On Thu, May 5, 2011 at 2:00 AM, Ludwig Nussel <ludwig.nussel at suse.de> wrote:
> if an interface has multiple prefixes and one as Base6Interface radvd
> would run into an endless loop as it takes the wrong value for
> prefix->next;
> ---
> gram.y | 3 +--
> 1 files changed, 1 insertions(+), 2 deletions(-)
>
> diff --git a/gram.y b/gram.y
> index 1bade1b..6c80f2b 100644
> --- a/gram.y
> +++ b/gram.y
> @@ -399,7 +399,7 @@ prefixdef : prefixhead optional_prefixplist ';'
> if ( prefix->if6[0] )
> {
> struct ifaddrs *ifap = 0, *ifa = 0;
> - struct AdvPrefix *next =
> iface->AdvPrefixList;
> + struct AdvPrefix *next =
> prefix->next;
>
> if (prefix->PrefixLen != 64) {
> flog(LOG_ERR, "Only /64 is
> allowed with Base6Interface. %s:%d", conf_file, num_lines);
> @@ -436,7 +436,6 @@ prefixdef : prefixhead optional_prefixplist ';'
> prefix->AdvRouterAddr = 1;
> prefix->AutoSelected = 1;
> prefix->next = next;
> - next = prefix;
>
> if
> (inet_ntop(ifa->ifa_addr->sa_family, (void *)&(prefix->Prefix), buf,
> sizeof(buf)) == NULL)
> flog(LOG_ERR, "%s:
> inet_ntop failed in %s, line %d!", ifa->ifa_name, conf_file, num_lines);
> --
> 1.7.3.4
>
>
> --
> radvd-devel-l mailing list : radvd-devel-l at litech.org
> http://lists.litech.org/listinfo/radvd-devel-l
>
Hi Ludwig,
I'm not seeing any differences with and without the patch. I have a tunnel
with two IPv6 addresses, and I use that tunnel interface as my
Base6Interface, but when I try with and without the patch, it only finds one
address from the Base6Interface. Can you let me know how I should test this
and what the differences should be?
Thanks,
Reuben
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.litech.org/pipermail/radvd-devel-l/attachments/20110505/dd64f028/attachment.html>
More information about the radvd-devel-l
mailing list