ipv4: mask tos for input route
authorJulian Anastasov <ja@ssi.bg>
Sun, 26 Feb 2017 15:14:35 +0000 (17:14 +0200)
committerBen Hutchings <ben@decadent.org.uk>
Mon, 5 Jun 2017 20:17:17 +0000 (21:17 +0100)
commit 6e28099d38c0e50d62c1afc054e37e573adf3d21 upstream.

Restore the lost masking of TOS in input route code to
allow ip rules to match it properly.

Problem [1] noticed by Shmulik Ladkani <shmulik.ladkani@gmail.com>

[1] http://marc.info/?t=137331755300040&r=1&w=2

Fixes: 89aef8921bfb ("ipv4: Delete routing cache.")
Signed-off-by: Julian Anastasov <ja@ssi.bg>
Signed-off-by: David S. Miller <davem@davemloft.net>
Signed-off-by: Ben Hutchings <ben@decadent.org.uk>
net/ipv4/route.c

index 77bf6bde38ccbde365824d5b2248c72abcdfb584..b8dc5d8cdedfcf9e863f8b6ea479ac0e0a2b47bc 100644 (file)
@@ -1879,6 +1879,7 @@ int ip_route_input_noref(struct sk_buff *skb, __be32 daddr, __be32 saddr,
 {
        int res;
 
+       tos &= IPTOS_RT_MASK;
        rcu_read_lock();
 
        /* Multicast recognition logic is moved from route cache to here.