Message ID | 9df1a85dd34faf5377ee67598c76d39db32c699e.1619886329.git.aclaudi@redhat.com |
---|---|
State | New |
Headers | show |
Series | None | expand |
diff --git a/tipc/misc.c b/tipc/misc.c index 1daf3072..909975d8 100644 --- a/tipc/misc.c +++ b/tipc/misc.c @@ -113,6 +113,9 @@ int str2key(char *str, struct tipc_aead_key *key) } } + if (len > TIPC_AEAD_KEYLEN_MAX) + return -1; + /* Obtain key: */ if (!ishex) { key->keylen = len;
tipc segfaults when called with an abnormally long key: $ tipc node set key 0123456789abcdef0123456789abcdef0123456789abcdef *** buffer overflow detected ***: terminated Fix this returning an error if key length is longer than TIPC_AEAD_KEYLEN_MAX. Fixes: 24bee3bf9752 ("tipc: add new commands to set TIPC AEAD key") Signed-off-by: Andrea Claudi <aclaudi@redhat.com> --- tipc/misc.c | 3 +++ 1 file changed, 3 insertions(+)