This commit was manufactured by cvs2svn to create tag
[linux-2.6.git] / net / ipv4 / xfrm4_state.c
index b28a388..ed6dbef 100644 (file)
@@ -11,7 +11,7 @@
 #include <linux/pfkeyv2.h>
 #include <linux/ipsec.h>
 
-static struct xfrm_state_afinfo xfrm4_state_afinfo;
+extern struct xfrm_state_afinfo xfrm4_state_afinfo;
 
 static void
 __xfrm4_init_tempsel(struct xfrm_state *x, struct flowi *fl,
@@ -74,8 +74,11 @@ __xfrm4_find_acq(u8 mode, u32 reqid, u8 proto,
                    proto == x->id.proto &&
                    saddr->a4 == x->props.saddr.a4 &&
                    reqid == x->props.reqid &&
-                   x->km.state == XFRM_STATE_ACQ &&
-                   !x->id.spi) {
+                   x->km.state == XFRM_STATE_ACQ) {
+                           if (!x0)
+                                   x0 = x;
+                           if (x->id.spi)
+                                   continue;
                            x0 = x;
                            break;
                    }