]> pilppa.org Git - linux-2.6-omap-h63xx.git/blobdiff - net/xfrm/xfrm_output.c
[IPV6]: Fix race in ipv6_flowlabel_opt() when inserting two labels
[linux-2.6-omap-h63xx.git] / net / xfrm / xfrm_output.c
index 0eb3377602e9c3c9b413072f1db6f0b5a915b8e5..f4bfd6c4565119f9f3be6cb80547922b930b4f73 100644 (file)
@@ -63,7 +63,7 @@ int xfrm_output(struct sk_buff *skb)
                                xfrm_replay_notify(x, XFRM_REPLAY_UPDATE);
                }
 
-               err = x->mode->output(x, skb);
+               err = x->outer_mode->output(x, skb);
                if (err)
                        goto error;
 
@@ -82,7 +82,7 @@ int xfrm_output(struct sk_buff *skb)
                }
                dst = skb->dst;
                x = dst->xfrm;
-       } while (x && (x->props.mode != XFRM_MODE_TUNNEL));
+       } while (x && !(x->outer_mode->flags & XFRM_MODE_FLAG_TUNNEL));
 
        err = 0;