]> git.baikalelectronics.ru Git - kernel.git/commit
macsec: limit replay window size with XPN
authorSabrina Dubroca <sd@queasysnail.net>
Fri, 22 Jul 2022 09:16:29 +0000 (11:16 +0200)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Wed, 3 Aug 2022 10:03:50 +0000 (12:03 +0200)
commit1153f0f0931f4cf23c7967c31bf9c2c1538029d1
treeed23a5f9d367234fc81f65f248a4e9873e4db29b
parent76fb9f92bac67067a541416088cd683a3f96c36b
macsec: limit replay window size with XPN

[ Upstream commit eef13ddd2e9f7372e43a26bb1044c8fc29019afb ]

IEEE 802.1AEbw-2013 (section 10.7.8) specifies that the maximum value
of the replay window is 2^30-1, to help with recovery of the upper
bits of the PN.

To avoid leaving the existing macsec device in an inconsistent state
if this test fails during changelink, reuse the cleanup mechanism
introduced for HW offload. This wasn't needed until now because
macsec_changelink_common could not fail during changelink, as
modifying the cipher suite was not allowed.

Finally, this must happen after handling IFLA_MACSEC_CIPHER_SUITE so
that secy->xpn is set.

Fixes: bb178617ead6 ("macsec: Netlink support of XPN cipher suites (IEEE 802.1AEbw)")
Signed-off-by: Sabrina Dubroca <sd@queasysnail.net>
Signed-off-by: David S. Miller <davem@davemloft.net>
Signed-off-by: Sasha Levin <sashal@kernel.org>
drivers/net/macsec.c