Yoshifuji, > -----Original Message----- > From: YOSHIFUJI Hideaki / 吉藤英明 [mailto:[EMAIL PROTECTED] > Sent: Wednesday, November 07, 2007 10:37 AM > To: Templin, Fred L > Cc: netdev@vger.kernel.org; [EMAIL PROTECTED] > Subject: Re: [PATCH 04/05] ipv6: RFC4214 Support > > Hello. > > In article > <[EMAIL PROTECTED] > eing.com> (at Tue, 6 Nov 2007 17:16:11 -0800), "Templin, Fred > L" <[EMAIL PROTECTED]> says: > > > @@ -154,6 +155,14 @@ static struct ip_tunnel * ipip6_tunnel_l > > struct net_device *dev; > > char name[IFNAMSIZ]; > > > > +#if defined(CONFIG_IPV6_ISATAP) > > + /* ISATAP (RFC4214) - router address in daddr */ > > + if (!strncmp(parms->name, "isatap", 6)) { > > + parms->i_key = parms->iph.daddr; > > + parms->iph.daddr = remote = 0; > > + } > > +#endif > > + > > for (tp = __ipip6_bucket(parms); (t = *tp) != NULL; tp = > > &t->next) { > > if (local == t->parms.iph.saddr && remote == > > t->parms.iph.daddr) > > return t; > > I do not think it is a good idea to change the behavior based on > the interface name.
The goal was to avoid requiring changes to applications such as 'iproute2', i.e., the intention was for a standalone code insertion point within the kernel itself. What do you suggest? > > @@ -182,6 +191,11 @@ static struct ip_tunnel * ipip6_tunnel_l > > dev->init = ipip6_tunnel_init; > > nt->parms = *parms; > > > > +#if defined(CONFIG_IPV6_ISATAP) > > + if (!strncmp(dev->name, "isatap", 6)) > > + dev->priv_flags |= IFF_ISATAP; > > +#endif > > + > > ditto. Same as above, but note that the name check is confined to these two places. > > > + if (!(ipv6_addr_is_isatap(addr6)) || > > + (addr6->s6_addr32[3] != iph->saddr)) { > > +drop: > > + tunnel->stat.rx_errors++; > > you can unlock here. OK; will fix. Fred [EMAIL PROTECTED] > > + dst_release(dst); > > + kfree_skb(skb); > > + read_unlock(&ipip6_lock); > > + return 0; > > + } > > + dst_release(dst); > > + } > > +accept: > > +#endif > > --yoshfuji > - To unsubscribe from this list: send the line "unsubscribe netdev" in the body of a message to [EMAIL PROTECTED] More majordomo info at http://vger.kernel.org/majordomo-info.html