diff options
Diffstat (limited to 'net/ipv4/ipmr.c')
-rw-r--r-- | net/ipv4/ipmr.c | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/net/ipv4/ipmr.c b/net/ipv4/ipmr.c index 13e9dd3012b3..69dd058283eb 100644 --- a/net/ipv4/ipmr.c +++ b/net/ipv4/ipmr.c | |||
@@ -1354,7 +1354,7 @@ static int ip_mr_forward(struct sk_buff *skb, struct mfc_cache *cache, int local | |||
1354 | if (net->ipv4.vif_table[vif].dev != skb->dev) { | 1354 | if (net->ipv4.vif_table[vif].dev != skb->dev) { |
1355 | int true_vifi; | 1355 | int true_vifi; |
1356 | 1356 | ||
1357 | if (skb->rtable->fl.iif == 0) { | 1357 | if (skb_rtable(skb)->fl.iif == 0) { |
1358 | /* It is our own packet, looped back. | 1358 | /* It is our own packet, looped back. |
1359 | Very complicated situation... | 1359 | Very complicated situation... |
1360 | 1360 | ||
@@ -1430,7 +1430,7 @@ int ip_mr_input(struct sk_buff *skb) | |||
1430 | { | 1430 | { |
1431 | struct mfc_cache *cache; | 1431 | struct mfc_cache *cache; |
1432 | struct net *net = dev_net(skb->dev); | 1432 | struct net *net = dev_net(skb->dev); |
1433 | int local = skb->rtable->rt_flags&RTCF_LOCAL; | 1433 | int local = skb_rtable(skb)->rt_flags & RTCF_LOCAL; |
1434 | 1434 | ||
1435 | /* Packet is looped back after forward, it should not be | 1435 | /* Packet is looped back after forward, it should not be |
1436 | forwarded second time, but still can be delivered locally. | 1436 | forwarded second time, but still can be delivered locally. |
@@ -1646,7 +1646,7 @@ int ipmr_get_route(struct net *net, | |||
1646 | { | 1646 | { |
1647 | int err; | 1647 | int err; |
1648 | struct mfc_cache *cache; | 1648 | struct mfc_cache *cache; |
1649 | struct rtable *rt = skb->rtable; | 1649 | struct rtable *rt = skb_rtable(skb); |
1650 | 1650 | ||
1651 | read_lock(&mrt_lock); | 1651 | read_lock(&mrt_lock); |
1652 | cache = ipmr_cache_find(net, rt->rt_src, rt->rt_dst); | 1652 | cache = ipmr_cache_find(net, rt->rt_src, rt->rt_dst); |