]> git.baikalelectronics.ru Git - kernel.git/commit
xfrm: Don't allow esn with disabled anti replay detection
authorSteffen Klassert <steffen.klassert@secunet.com>
Mon, 9 May 2011 19:43:05 +0000 (19:43 +0000)
committerDavid S. Miller <davem@davemloft.net>
Tue, 10 May 2011 22:03:34 +0000 (15:03 -0700)
commit42e0f649be60e1608dd56d1695003eaeb8d8e636
tree22d71ef353fe4e2f94a5c83e9b15e7bfa420e5df
parent8beba04d4cbde648f00b0a199a8d2ebd849b205b
xfrm: Don't allow esn with disabled anti replay detection

Unlike the standard case, disabled anti replay detection needs some
nontrivial extra treatment on ESN. RFC 4303 states:

Note: If a receiver chooses to not enable anti-replay for an SA, then
the receiver SHOULD NOT negotiate ESN in an SA management protocol.
Use of ESN creates a need for the receiver to manage the anti-replay
window (in order to determine the correct value for the high-order
bits of the ESN, which are employed in the ICV computation), which is
generally contrary to the notion of disabling anti-replay for an SA.

So return an error if an ESN state with disabled anti replay detection
is inserted for now and add the extra treatment later if we need it.

Signed-off-by: Steffen Klassert <steffen.klassert@secunet.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
net/xfrm/xfrm_replay.c