diff options
| author | Garrett D'Amore <garrett@damore.org> | 2023-04-23 17:10:33 -0700 |
|---|---|---|
| committer | Garrett D'Amore <garrett@damore.org> | 2023-04-23 17:10:33 -0700 |
| commit | d38e633c2514463bb1f2e1f020f79429ca844730 (patch) | |
| tree | 45e71ce997cd8e90e0c352323bc6b7ac8cfe0dc5 /src/core/sockimpl.h | |
| parent | 8bd3733fc234e9677068cfb4f2b50a35e4413eeb (diff) | |
| download | nng-d38e633c2514463bb1f2e1f020f79429ca844730.tar.gz nng-d38e633c2514463bb1f2e1f020f79429ca844730.tar.bz2 nng-d38e633c2514463bb1f2e1f020f79429ca844730.zip | |
fixes #1657 Use after free in listener (data race)
Diffstat (limited to 'src/core/sockimpl.h')
| -rw-r--r-- | src/core/sockimpl.h | 7 |
1 files changed, 4 insertions, 3 deletions
diff --git a/src/core/sockimpl.h b/src/core/sockimpl.h index 83cbb877..9734d94a 100644 --- a/src/core/sockimpl.h +++ b/src/core/sockimpl.h @@ -18,7 +18,7 @@ struct nni_dialer { nni_sp_dialer_ops d_ops; // transport ops nni_sp_tran *d_tran; // transport pointer - void *d_data; // transport private + void *d_data; // transport private uint32_t d_id; // endpoint id nni_list_node d_node; // per socket list nni_sock *d_sock; @@ -123,8 +123,9 @@ struct nni_pipe { #endif }; -extern int nni_sock_add_dialer(nni_sock *, nni_dialer *); -extern int nni_sock_add_listener(nni_sock *, nni_listener *); +extern int nni_sock_add_dialer(nni_sock *, nni_dialer *); +extern int nni_sock_add_listener(nni_sock *, nni_listener *); +extern void nni_sock_remove_listener(nni_listener *); extern void nni_dialer_add_pipe(nni_dialer *, void *); extern void nni_dialer_shutdown(nni_dialer *); |
