]> git.baikalelectronics.ru Git - kernel.git/commitdiff
tipc: fix a bit overflow in tipc_crypto_key_rcv()
authorHangyu Hua <hbh25y@gmail.com>
Fri, 11 Feb 2022 04:55:10 +0000 (12:55 +0800)
committerDavid S. Miller <davem@davemloft.net>
Sun, 13 Feb 2022 12:12:25 +0000 (12:12 +0000)
msg_data_sz return a 32bit value, but size is 16bit. This may lead to a
bit overflow.

Signed-off-by: Hangyu Hua <hbh25y@gmail.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
net/tipc/crypto.c

index 9325479295b8365f3dfdcf1bdb82180ea7a6015b..f09316a9035f413dd76cc9b03d51ff560d0d6674 100644 (file)
@@ -2276,7 +2276,7 @@ static bool tipc_crypto_key_rcv(struct tipc_crypto *rx, struct tipc_msg *hdr)
        struct tipc_crypto *tx = tipc_net(rx->net)->crypto_tx;
        struct tipc_aead_key *skey = NULL;
        u16 key_gen = msg_key_gen(hdr);
-       u16 size = msg_data_sz(hdr);
+       u32 size = msg_data_sz(hdr);
        u8 *data = msg_data(hdr);
        unsigned int keylen;