diff --git a/net/ipv4/route.c b/net/ipv4/route.c index 5b1050a..f509f7b 100644 --- a/net/ipv4/route.c +++ b/net/ipv4/route.c @@ -2139,9 +2139,12 @@ static int ip_route_input_slow(struct sk_buff *skb, __be32 daddr, __be32 saddr, if (res.type == RTN_LOCAL) { int result; + int mark = 0; + if (sysctl_mark_validate_source) + mark = skb->mark; result = fib_validate_source(saddr, daddr, tos, net->loopback_dev->ifindex, - dev, &spec_dst, &itag, skb->mark); + dev, &spec_dst, &itag, mark); if (result < 0) goto martian_source; if (result)