diff options
| author | Craig Gallek <kraig@google.com> | 2016-01-19 14:27:08 -0500 |
|---|---|---|
| committer | Bruno Martins <bgcngm@gmail.com> | 2022-10-28 15:39:24 +0100 |
| commit | 245ee3c907953449f9b399b440e682561c55fefe (patch) | |
| tree | 18f29a8e1dbf293244b7f47b4755603fc2629a92 /include/net | |
| parent | 113fb209854a4a7ee69a704600d1274ea3daeb01 (diff) | |
soreuseport: fix NULL ptr dereference SO_REUSEPORT after bind
Marc Dionne discovered a NULL pointer dereference when setting
SO_REUSEPORT on a socket after it is bound.
This patch removes the assumption that at least one socket in the
reuseport group is bound with the SO_REUSEPORT option before other
bind calls occur.
Fixes: e32ea7e74727 ("soreuseport: fast reuseport UDP socket selection")
Reported-by: Marc Dionne <marc.c.dionne@gmail.com>
Signed-off-by: Craig Gallek <kraig@google.com>
Tested-by: Marc Dionne <marc.dionne@auristor.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Change-Id: Ie9c2cb3dfae4bf97e3e83756c09a3ed607bcf6f7
Diffstat (limited to 'include/net')
| -rw-r--r-- | include/net/sock_reuseport.h | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/include/net/sock_reuseport.h b/include/net/sock_reuseport.h index 7dda3d7adba8..aecd30308d50 100644 --- a/include/net/sock_reuseport.h +++ b/include/net/sock_reuseport.h @@ -16,7 +16,7 @@ struct sock_reuseport { }; extern int reuseport_alloc(struct sock *sk); -extern int reuseport_add_sock(struct sock *sk, const struct sock *sk2); +extern int reuseport_add_sock(struct sock *sk, struct sock *sk2); extern void reuseport_detach_sock(struct sock *sk); extern struct sock *reuseport_select_sock(struct sock *sk, u32 hash, |
