diff options
author | Julian Anastasov <ja@ssi.bg> | 2014-04-28 10:51:56 +0300 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2014-04-28 14:47:03 -0400 |
commit | e374c618b1465f0292047a9f4c244bd71ab5f1f0 (patch) | |
tree | b6eab50bf0d9bf655128edf7f13c5359c806a215 /net/ipv6/ip6mr.c | |
parent | 8c2eab9097dba50bcd73ed4632baccc3f34857f9 (diff) | |
download | op-kernel-dev-e374c618b1465f0292047a9f4c244bd71ab5f1f0.zip op-kernel-dev-e374c618b1465f0292047a9f4c244bd71ab5f1f0.tar.gz |
net: ipv6: more places need LOOPBACK_IFINDEX for flowi6_iif
To properly match iif in ip rules we have to provide
LOOPBACK_IFINDEX in flowi6_iif, not 0. Some ip6mr_fib_lookup
and fib6_rule_lookup callers need such fix.
Signed-off-by: Julian Anastasov <ja@ssi.bg>
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'net/ipv6/ip6mr.c')
-rw-r--r-- | net/ipv6/ip6mr.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/net/ipv6/ip6mr.c b/net/ipv6/ip6mr.c index 8659067..8250474 100644 --- a/net/ipv6/ip6mr.c +++ b/net/ipv6/ip6mr.c @@ -1633,7 +1633,7 @@ struct sock *mroute6_socket(struct net *net, struct sk_buff *skb) { struct mr6_table *mrt; struct flowi6 fl6 = { - .flowi6_iif = skb->skb_iif, + .flowi6_iif = skb->skb_iif ? : LOOPBACK_IFINDEX, .flowi6_oif = skb->dev->ifindex, .flowi6_mark = skb->mark, }; |