diff options
Diffstat (limited to 'net/ipv6/ipcomp6.c')
-rw-r--r-- | net/ipv6/ipcomp6.c | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/net/ipv6/ipcomp6.c b/net/ipv6/ipcomp6.c index 71a14c09975c..87e6407ebf97 100644 --- a/net/ipv6/ipcomp6.c +++ b/net/ipv6/ipcomp6.c | |||
@@ -128,7 +128,10 @@ static int ipcomp6_output(struct xfrm_state *x, struct sk_buff *skb) | |||
128 | u8 *start, *scratch; | 128 | u8 *start, *scratch; |
129 | struct crypto_comp *tfm; | 129 | struct crypto_comp *tfm; |
130 | int cpu; | 130 | int cpu; |
131 | int hdr_len = skb_transport_offset(skb); | 131 | int hdr_len; |
132 | |||
133 | skb_push(skb, -skb_network_offset(skb)); | ||
134 | hdr_len = skb_transport_offset(skb); | ||
132 | 135 | ||
133 | /* check whether datagram len is larger than threshold */ | 136 | /* check whether datagram len is larger than threshold */ |
134 | if ((skb->len - hdr_len) < ipcd->threshold) { | 137 | if ((skb->len - hdr_len) < ipcd->threshold) { |