]> www.infradead.org Git - users/jedix/linux-maple.git/commit
net: inet: do not leave a dangling sk pointer in inet_create()
authorIgnat Korchagin <ignat@cloudflare.com>
Mon, 14 Oct 2024 15:38:05 +0000 (16:38 +0100)
committerJakub Kicinski <kuba@kernel.org>
Wed, 16 Oct 2024 01:43:08 +0000 (18:43 -0700)
commit9365fa510c6f82e3aa550a09d0c5c6b44dbc78ff
treeea9673ee720b6ae92b1c4a47edb8236f74ca97d0
parentb4fcd63f6ef79c73cafae8cf4a114def5fc3d80d
net: inet: do not leave a dangling sk pointer in inet_create()

sock_init_data() attaches the allocated sk object to the provided sock
object. If inet_create() fails later, the sk object is freed, but the
sock object retains the dangling pointer, which may create use-after-free
later.

Clear the sk pointer in the sock object on error.

Signed-off-by: Ignat Korchagin <ignat@cloudflare.com>
Reviewed-by: Kuniyuki Iwashima <kuniyu@amazon.com>
Reviewed-by: Eric Dumazet <edumazet@google.com>
Link: https://patch.msgid.link/20241014153808.51894-7-ignat@cloudflare.com
Signed-off-by: Jakub Kicinski <kuba@kernel.org>
net/ipv4/af_inet.c