projects
/
linux.git
/ commitdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
| commitdiff |
tree
raw
|
patch
| inline |
side by side
(parent:
d57da51
)
phonet: refcount leak in pep_sock_accep
author
Hangyu Hua
<hbh25y@gmail.com>
Thu, 9 Dec 2021 08:28:39 +0000
(16:28 +0800)
committer
Greg Kroah-Hartman
<gregkh@linuxfoundation.org>
Tue, 11 Jan 2022 14:35:16 +0000
(15:35 +0100)
commit
bcd0f93353326954817a4f9fa55ec57fb38acbb0
upstream.
sock_hold(sk) is invoked in pep_sock_accept(), but __sock_put(sk) is not
invoked in subsequent failure branches(pep_accept_conn() != 0).
Signed-off-by: Hangyu Hua <hbh25y@gmail.com>
Link:
https://lore.kernel.org/r/20211209082839.33985-1-hbh25y@gmail.com
Signed-off-by: Jakub Kicinski <kuba@kernel.org>
Signed-off-by: Aayush Agarwal <aayush.a.agarwal@oracle.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
net/phonet/pep.c
patch
|
blob
|
history
diff --git
a/net/phonet/pep.c
b/net/phonet/pep.c
index 72018e5e4d8efeb4bd5f601020e3f1536bd83946..65d463ad87707782a44152014fa760798554145f 100644
(file)
--- a/
net/phonet/pep.c
+++ b/
net/phonet/pep.c
@@
-868,6
+868,7
@@
static struct sock *pep_sock_accept(struct sock *sk, int flags, int *errp,
err = pep_accept_conn(newsk, skb);
if (err) {
+ __sock_put(sk);
sock_put(newsk);
newsk = NULL;
goto drop;