[XFRM]: Fix missing protocol comparison of larval SAs.
authorJoy Latten <latten@austin.ibm.com>
Tue, 13 Mar 2007 00:14:07 +0000 (17:14 -0700)
committerDavid S. Miller <davem@davemloft.net>
Tue, 13 Mar 2007 00:14:07 +0000 (17:14 -0700)
commit75e252d981c0e80c14ce90df246e9b1300474c4f
tree668f2df92fb85e17574a1fbdf34062539eff69d7
parentce0ecd594d78710422599918a608e96dd1ee6024
[XFRM]: Fix missing protocol comparison of larval SAs.

I noticed that in xfrm_state_add we look for the larval SA in a few
places without checking for protocol match. So when using both
AH and ESP, whichever one gets added first, deletes the larval SA.
It seems AH always gets added first and ESP is always the larval
SA's protocol since the xfrm->tmpl has it first. Thus causing the
additional km_query()

Adding the check eliminates accidental double SA creation.

Signed-off-by: Joy Latten <latten@austin.ibm.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
net/xfrm/xfrm_state.c