3
0
mirror of https://git.kernel.org/pub/scm/network/wireless/iwd.git synced 2024-11-22 06:29:23 +01:00

netdev: Support more IGTK cipher suites

This commit is contained in:
Denis Kenzior 2022-10-21 13:41:42 -05:00
parent 17131c860a
commit d1acc80331

View File

@ -1674,7 +1674,7 @@ static void netdev_set_igtk(struct handshake_state *hs, uint16_t key_index,
{ {
struct netdev_handshake_state *nhs = struct netdev_handshake_state *nhs =
l_container_of(hs, struct netdev_handshake_state, super); l_container_of(hs, struct netdev_handshake_state, super);
uint8_t igtk_buf[16]; uint8_t igtk_buf[32];
struct netdev *netdev = nhs->netdev; struct netdev *netdev = nhs->netdev;
struct l_genl_msg *msg; struct l_genl_msg *msg;
@ -1690,7 +1690,10 @@ static void netdev_set_igtk(struct handshake_state *hs, uint16_t key_index,
switch (cipher) { switch (cipher) {
case CRYPTO_CIPHER_BIP_CMAC: case CRYPTO_CIPHER_BIP_CMAC:
memcpy(igtk_buf, igtk, 16); case CRYPTO_CIPHER_BIP_GMAC:
case CRYPTO_CIPHER_BIP_GMAC_256:
case CRYPTO_CIPHER_BIP_CMAC_256:
memcpy(igtk_buf, igtk, igtk_len);
break; break;
default: default:
l_error("Unexpected cipher: %x", cipher); l_error("Unexpected cipher: %x", cipher);