unsigned int thoff;
        struct iphdr *iph;
 
-       if (!pskb_may_pull(skb, sizeof(*iph)))
+       if (!pskb_network_may_pull(skb, sizeof(*iph)))
                return false;
 
        iph = ip_hdr(skb);
        if (iph->ttl <= 1)
                return false;
 
-       if (!pskb_may_pull(skb, iph->protocol == IPPROTO_TCP ?
-                          thoff + sizeof(struct tcphdr) :
-                          thoff + sizeof(*ports)))
+       if (!pskb_network_may_pull(skb, iph->protocol == IPPROTO_TCP ?
+                                       thoff + sizeof(struct tcphdr) :
+                                       thoff + sizeof(*ports)))
                return false;
 
        iph = ip_hdr(skb);
        struct ipv6hdr *ip6h;
        unsigned int thoff;
 
-       if (!pskb_may_pull(skb, sizeof(*ip6h)))
+       if (!pskb_network_may_pull(skb, sizeof(*ip6h)))
                return false;
 
        ip6h = ipv6_hdr(skb);
                return false;
 
        thoff = sizeof(*ip6h);
-       if (!pskb_may_pull(skb, ip6h->nexthdr == IPPROTO_TCP ?
-                          thoff + sizeof(struct tcphdr) :
-                          thoff + sizeof(*ports)))
+       if (!pskb_network_may_pull(skb, ip6h->nexthdr == IPPROTO_TCP ?
+                                       thoff + sizeof(struct tcphdr) :
+                                       thoff + sizeof(*ports)))
                return false;
 
        ip6h = ipv6_hdr(skb);