]> git.kernelconcepts.de Git - karo-tx-linux.git/blobdiff - net/ipv4/ah4.c
ah: Read nexthdr value before overwriting it in ahash input callback.
[karo-tx-linux.git] / net / ipv4 / ah4.c
index 33ca18603e3bdb73bb762355d97e226fbc6fa311..c7056b2e831f6d107c3d1aaa993b3b2b6b23f2d1 100644 (file)
@@ -262,12 +262,12 @@ static void ah_input_done(struct crypto_async_request *base, int err)
        if (err)
                goto out;
 
+       err = ah->nexthdr;
+
        skb->network_header += ah_hlen;
        memcpy(skb_network_header(skb), work_iph, ihl);
        __skb_pull(skb, ah_hlen + ihl);
        skb_set_transport_header(skb, -ihl);
-
-       err = ah->nexthdr;
 out:
        kfree(AH_SKB_CB(skb)->tmp);
        xfrm_input_resume(skb, err);