diff options
Diffstat (limited to 'net/ipv6/xfrm6_output.c')
-rw-r--r-- | net/ipv6/xfrm6_output.c | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/net/ipv6/xfrm6_output.c b/net/ipv6/xfrm6_output.c index 6d111743e508..26f18869f77b 100644 --- a/net/ipv6/xfrm6_output.c +++ b/net/ipv6/xfrm6_output.c | |||
@@ -47,7 +47,7 @@ static int xfrm6_output_one(struct sk_buff *skb) | |||
47 | goto error_nolock; | 47 | goto error_nolock; |
48 | } | 48 | } |
49 | 49 | ||
50 | if (x->props.mode) { | 50 | if (x->props.mode == XFRM_MODE_TUNNEL) { |
51 | err = xfrm6_tunnel_check_size(skb); | 51 | err = xfrm6_tunnel_check_size(skb); |
52 | if (err) | 52 | if (err) |
53 | goto error_nolock; | 53 | goto error_nolock; |
@@ -80,7 +80,7 @@ static int xfrm6_output_one(struct sk_buff *skb) | |||
80 | } | 80 | } |
81 | dst = skb->dst; | 81 | dst = skb->dst; |
82 | x = dst->xfrm; | 82 | x = dst->xfrm; |
83 | } while (x && !x->props.mode); | 83 | } while (x && (x->props.mode != XFRM_MODE_TUNNEL)); |
84 | 84 | ||
85 | IP6CB(skb)->flags |= IP6SKB_XFRM_TRANSFORMED; | 85 | IP6CB(skb)->flags |= IP6SKB_XFRM_TRANSFORMED; |
86 | err = 0; | 86 | err = 0; |