]> err.no Git - linux-2.6/blobdiff - net/ipv4/ah4.c
Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/avi/kvm
[linux-2.6] / net / ipv4 / ah4.c
index ebcc797e1c13d2d0530b387cb6fdfec6b8abd253..7a23e59c374a3491c802e83f45638c82e6b2a64a 100644 (file)
@@ -181,9 +181,9 @@ static int ah_input(struct xfrm_state *x, struct sk_buff *skb)
                }
        }
        ((struct iphdr*)work_buf)->protocol = ah->nexthdr;
-       skb->nh.raw += ah_hlen;
+       skb->network_header += ah_hlen;
        memcpy(skb_network_header(skb), work_buf, ihl);
-       skb->h.raw = skb->nh.raw;
+       skb->transport_header = skb->network_header;
        __skb_pull(skb, ah_hlen + ihl);
 
        return 0;
@@ -198,8 +198,8 @@ static void ah4_err(struct sk_buff *skb, u32 info)
        struct ip_auth_hdr *ah = (struct ip_auth_hdr*)(skb->data+(iph->ihl<<2));
        struct xfrm_state *x;
 
-       if (skb->h.icmph->type != ICMP_DEST_UNREACH ||
-           skb->h.icmph->code != ICMP_FRAG_NEEDED)
+       if (icmp_hdr(skb)->type != ICMP_DEST_UNREACH ||
+           icmp_hdr(skb)->code != ICMP_FRAG_NEEDED)
                return;
 
        x = xfrm_state_lookup((xfrm_address_t *)&iph->daddr, ah->spi, IPPROTO_AH, AF_INET);
@@ -339,3 +339,4 @@ static void __exit ah4_fini(void)
 module_init(ah4_init);
 module_exit(ah4_fini);
 MODULE_LICENSE("GPL");
+MODULE_ALIAS_XFRM_TYPE(AF_INET, XFRM_PROTO_AH);