aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorNicholas Ngai <nicholas@ngai.me>2021-11-30 08:48:46 -0800
committerNicholas Ngai <nicholas@ngai.me>2021-11-30 08:48:46 -0800
commit32bea29d04c24be75c3169ea6ad107e4c3828691 (patch)
tree796fe214f02e66135a195ac86c715f17ab796020
parent654c2de9843f039508d8bdf3da9173f17e02ab5b (diff)
downloadslirp-32bea29d04c24be75c3169ea6ad107e4c3828691.zip
slirp-32bea29d04c24be75c3169ea6ad107e4c3828691.tar.gz
slirp-32bea29d04c24be75c3169ea6ad107e4c3828691.tar.bz2
socket: Move closesocket(so->s_aux) to sofree
Signed-off-by: Nicholas Ngai <nicholas@ngai.me>
-rw-r--r--src/socket.c4
-rw-r--r--src/tcp_subr.c3
-rw-r--r--src/udp.c3
3 files changed, 4 insertions, 6 deletions
diff --git a/src/socket.c b/src/socket.c
index 8aa942e..f071d69 100644
--- a/src/socket.c
+++ b/src/socket.c
@@ -84,6 +84,10 @@ void sofree(struct socket *so)
{
Slirp *slirp = so->slirp;
+ if (so->s_aux != -1) {
+ closesocket(so->s_aux);
+ }
+
soqfree(so, &slirp->if_fastq);
soqfree(so, &slirp->if_batchq);
diff --git a/src/tcp_subr.c b/src/tcp_subr.c
index 8feff5b..636c447 100644
--- a/src/tcp_subr.c
+++ b/src/tcp_subr.c
@@ -339,9 +339,6 @@ struct tcpcb *tcp_close(struct tcpcb *tp)
slirp->tcp_last_so = &slirp->tcb;
so->slirp->cb->unregister_poll_fd(so->s, so->slirp->opaque);
closesocket(so->s);
- if (so->s_aux != -1) {
- closesocket(so->s_aux);
- }
sbfree(&so->so_rcv);
sbfree(&so->so_snd);
sofree(so);
diff --git a/src/udp.c b/src/udp.c
index 74013b1..2e45eb4 100644
--- a/src/udp.c
+++ b/src/udp.c
@@ -339,9 +339,6 @@ void udp_detach(struct socket *so)
{
so->slirp->cb->unregister_poll_fd(so->s, so->slirp->opaque);
closesocket(so->s);
- if (so->s_aux != -1) {
- closesocket(so->s_aux);
- }
sofree(so);
}