diff mbox

[net-next] xfrm: Force SA to be lookup again if SA in acquire state

Message ID 1379927905-17289-1-git-send-email-fan.du@windriver.com
State Awaiting Upstream, archived
Delegated to: David Miller
Headers show

Commit Message

fan.du Sept. 23, 2013, 9:18 a.m. UTC
If SA is in the process of acquiring, which indicates this SA is more
promising and precise than the fall back option, i.e. using wild card
source address for searching less suitable SA.

So, here bail out, and try again.

Signed-off-by: Fan Du <fan.du@windriver.com>
---
 net/xfrm/xfrm_state.c |    2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

Comments

Steffen Klassert Sept. 26, 2013, 9:03 a.m. UTC | #1
On Mon, Sep 23, 2013 at 05:18:25PM +0800, Fan Du wrote:
> If SA is in the process of acquiring, which indicates this SA is more
> promising and precise than the fall back option, i.e. using wild card
> source address for searching less suitable SA.
> 
> So, here bail out, and try again.
> 
> Signed-off-by: Fan Du <fan.du@windriver.com>

This looks ok, I'll take this into ipsec-next as soon as I can
update the tree.
--
To unsubscribe from this list: send the line "unsubscribe netdev" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Steffen Klassert Oct. 1, 2013, 11:17 a.m. UTC | #2
On Thu, Sep 26, 2013 at 11:03:01AM +0200, Steffen Klassert wrote:
> On Mon, Sep 23, 2013 at 05:18:25PM +0800, Fan Du wrote:
> > If SA is in the process of acquiring, which indicates this SA is more
> > promising and precise than the fall back option, i.e. using wild card
> > source address for searching less suitable SA.
> > 
> > So, here bail out, and try again.
> > 
> > Signed-off-by: Fan Du <fan.du@windriver.com>
> 
> This looks ok, I'll take this into ipsec-next as soon as I can
> update the tree.

Now applied to ipsec-next, thanks!
--
To unsubscribe from this list: send the line "unsubscribe netdev" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
diff mbox

Patch

diff --git a/net/xfrm/xfrm_state.c b/net/xfrm/xfrm_state.c
index b9c3f9e..e1373d5 100644
--- a/net/xfrm/xfrm_state.c
+++ b/net/xfrm/xfrm_state.c
@@ -815,7 +815,7 @@  xfrm_state_find(const xfrm_address_t *daddr, const xfrm_address_t *saddr,
 			xfrm_state_look_at(pol, x, fl, encap_family,
 					   &best, &acquire_in_progress, &error);
 	}
-	if (best)
+	if (best || acquire_in_progress)
 		goto found;
 
 	h_wildcard = xfrm_dst_hash(net, daddr, &saddr_wildcard, tmpl->reqid, encap_family);