diff options
author | Kuniyuki Iwashima <kuniyu@google.com> | 2025-07-04 06:23:52 +0000 |
---|---|---|
committer | Jakub Kicinski <kuba@kernel.org> | 2025-07-09 17:52:26 -0700 |
commit | 62dba28275a9a3104d4e33595c7b3328d4032d8d (patch) | |
tree | 95e7b3f7a457c709fa0a5fe5f540a15f6914143a /net/lapb/lapb_timer.c | |
parent | 706cc36477139c1616a9b2b96610a8bb520b7119 (diff) |
atm: clip: Fix memory leak of struct clip_vcc.
ioctl(ATMARP_MKIP) allocates struct clip_vcc and set it to
vcc->user_back.
The code assumes that vcc_destroy_socket() passes NULL skb
to vcc->push() when the socket is close()d, and then clip_push()
frees clip_vcc.
However, ioctl(ATMARPD_CTRL) sets NULL to vcc->push() in
atm_init_atmarp(), resulting in memory leak.
Let's serialise two ioctl() by lock_sock() and check vcc->push()
in atm_init_atmarp() to prevent memleak.
Fixes: 1da177e4c3f4 ("Linux-2.6.12-rc2")
Signed-off-by: Kuniyuki Iwashima <kuniyu@google.com>
Reviewed-by: Simon Horman <horms@kernel.org>
Link: https://patch.msgid.link/20250704062416.1613927-3-kuniyu@google.com
Signed-off-by: Jakub Kicinski <kuba@kernel.org>
Diffstat (limited to 'net/lapb/lapb_timer.c')
0 files changed, 0 insertions, 0 deletions