From 57d4c9f154cacd5d0dcc2f45033d784b3e0b6734 Mon Sep 17 00:00:00 2001 From: "Luke T. Shumaker" Date: Tue, 4 Feb 2025 09:05:14 -0700 Subject: lib9p: Test that we can do clean shutdown --- libhw/host_net.c | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) (limited to 'libhw/host_net.c') diff --git a/libhw/host_net.c b/libhw/host_net.c index d5a5ad5..bf79480 100644 --- a/libhw/host_net.c +++ b/libhw/host_net.c @@ -190,6 +190,9 @@ static implements_net_stream_conn *hostnet_tcplist_accept(implements_net_stream_ if (RUN_PTHREAD(hostnet_pthread_accept, &args)) return NULL; + if (ret_connfd < 0) + return NULL; + listener->active_conn.vtable = &hostnet_tcp_conn_vtable; listener->active_conn.fd = ret_connfd; listener->active_conn.read_deadline_ns = 0; @@ -203,7 +206,7 @@ static int hostnet_tcplist_close(implements_net_stream_listener *_listener) { VCALL_SELF(struct hostnet_tcp_listener, implements_net_stream_listener, _listener); assert(listener); - return hostnet_map_negerrno(close(listener->fd) ? -errno : 0, OP_NONE); + return hostnet_map_negerrno(shutdown(listener->fd, SHUT_RDWR) ? -errno : 0, OP_NONE); } /* TCP read() *****************************************************************/ -- cgit v1.2.3-2-g168b