net: skb->rtable accessor
[safe/jmp/linux-2.6] / net / ipv4 / ipmr.c
index 13e9dd3..69dd058 100644 (file)
@@ -1354,7 +1354,7 @@ static int ip_mr_forward(struct sk_buff *skb, struct mfc_cache *cache, int local
        if (net->ipv4.vif_table[vif].dev != skb->dev) {
                int true_vifi;
 
-               if (skb->rtable->fl.iif == 0) {
+               if (skb_rtable(skb)->fl.iif == 0) {
                        /* It is our own packet, looped back.
                           Very complicated situation...
 
@@ -1430,7 +1430,7 @@ int ip_mr_input(struct sk_buff *skb)
 {
        struct mfc_cache *cache;
        struct net *net = dev_net(skb->dev);
-       int local = skb->rtable->rt_flags&RTCF_LOCAL;
+       int local = skb_rtable(skb)->rt_flags & RTCF_LOCAL;
 
        /* Packet is looped back after forward, it should not be
           forwarded second time, but still can be delivered locally.
@@ -1646,7 +1646,7 @@ int ipmr_get_route(struct net *net,
 {
        int err;
        struct mfc_cache *cache;
-       struct rtable *rt = skb->rtable;
+       struct rtable *rt = skb_rtable(skb);
 
        read_lock(&mrt_lock);
        cache = ipmr_cache_find(net, rt->rt_src, rt->rt_dst);