If a malformed packet is received there may not be enough data
to pull.  This isn't a problem in practice because the caller
has already done xfrm_parse_spi which in effect does the same
thing.
Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
Acked-by: Steffen Klassert <steffen.klassert@secunet.com>
Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
        int err = -ENOMEM;
        struct ip_comp_hdr *ipch;
 
+       if (!pskb_may_pull(skb, sizeof(*ipch)))
+               return -EINVAL;
+
        if (skb_linearize_cow(skb))
                goto out;