aboutsummaryrefslogtreecommitdiffstats
path: root/net/ipv4/icmp.c
diff options
context:
space:
mode:
Diffstat (limited to 'net/ipv4/icmp.c')
-rw-r--r--net/ipv4/icmp.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/net/ipv4/icmp.c b/net/ipv4/icmp.c
index 53a890b605fc..691146abde2d 100644
--- a/net/ipv4/icmp.c
+++ b/net/ipv4/icmp.c
@@ -479,7 +479,7 @@ static struct rtable *icmp_route_lookup(struct net *net,
479 fl4->flowi4_proto = IPPROTO_ICMP; 479 fl4->flowi4_proto = IPPROTO_ICMP;
480 fl4->fl4_icmp_type = type; 480 fl4->fl4_icmp_type = type;
481 fl4->fl4_icmp_code = code; 481 fl4->fl4_icmp_code = code;
482 fl4->flowi4_oif = l3mdev_master_ifindex(skb_in->dev); 482 fl4->flowi4_oif = l3mdev_master_ifindex(skb_dst(skb_in)->dev);
483 483
484 security_skb_classify_flow(skb_in, flowi4_to_flowi(fl4)); 484 security_skb_classify_flow(skb_in, flowi4_to_flowi(fl4));
485 rt = __ip_route_output_key_hash(net, fl4, 485 rt = __ip_route_output_key_hash(net, fl4,
@@ -504,7 +504,7 @@ static struct rtable *icmp_route_lookup(struct net *net,
504 if (err) 504 if (err)
505 goto relookup_failed; 505 goto relookup_failed;
506 506
507 if (inet_addr_type_dev_table(net, skb_in->dev, 507 if (inet_addr_type_dev_table(net, skb_dst(skb_in)->dev,
508 fl4_dec.saddr) == RTN_LOCAL) { 508 fl4_dec.saddr) == RTN_LOCAL) {
509 rt2 = __ip_route_output_key(net, &fl4_dec); 509 rt2 = __ip_route_output_key(net, &fl4_dec);
510 if (IS_ERR(rt2)) 510 if (IS_ERR(rt2))