On Wed, Nov 21, 2018 at 01:24:25PM +0100, Pablo Neira Ayuso wrote:
> On Wed, Nov 21, 2018 at 12:17:50PM +0100, Alin Nastac wrote:
> > When ip6_route_me_harder is invoked, it resets outgoing interface of:
> >   - link-local scoped packets sent by neighbor discovery
> >   - multicast packets sent by MLD host
> >   - multicast packets send by MLD proxy daemon that sets outgoing
> >     interface through IPV6_PKTINFO ipi6_ifindex
> > 
> > Link-local and multicast packets must keep their original oif after
> > ip6_route_me_harder is called.
> 
> Please, resubmit including your Signed-off-by tag.

Or I can append it here, but I need your consent, thanks.

> > ---
> >  net/ipv6/netfilter.c | 3 ++-
> >  1 file changed, 2 insertions(+), 1 deletion(-)
> > 
> > diff --git a/net/ipv6/netfilter.c b/net/ipv6/netfilter.c
> > index 5ae8e1c..8b075f0 100644
> > --- a/net/ipv6/netfilter.c
> > +++ b/net/ipv6/netfilter.c
> > @@ -24,7 +24,8 @@ int ip6_route_me_harder(struct net *net, struct sk_buff 
> > *skb)
> >     unsigned int hh_len;
> >     struct dst_entry *dst;
> >     struct flowi6 fl6 = {
> > -           .flowi6_oif = sk ? sk->sk_bound_dev_if : 0,
> > +           .flowi6_oif = sk && sk->sk_bound_dev_if ? sk->sk_bound_dev_if :
> > +                   rt6_need_strict(&iph->daddr) ? 
> > skb_dst(skb)->dev->ifindex : 0,
> >             .flowi6_mark = skb->mark,
> >             .flowi6_uid = sock_net_uid(net, sk),
> >             .daddr = iph->daddr,
> > -- 
> > 2.7.4
> > 

Reply via email to