freebsd-src/sys/rpc/rpcsec_tls
Rick Macklem 2420e64c46 rpctls_impl.c: Fix handling of hung rpc tls daemon
Commit 26ee059392 replaced soshutdown()
with soclose() for the case where the RPC TLS
daemon has not removed the socket from the RB
tree during an upcall.

It turns out that soshutdown() is needed for the
"else" case, which is the case that occurs when the
daemon is stuck in SSL_accept() or SSL_connect().

This patch adds a soshutdown() call to this else case,
which unsticks the daemon when the other end does
not do the actual TLS handshake. This can occur if
the daemon is not running at the other end.

Reviewed by:	glebius
Differential Revision:	https://reviews.freebsd.org/D51083
Fixes:	26ee059392 ("rpctls_impl.c: Fix handling of socket for daemon failure")
2025-07-18 11:27:50 -07:00
..
auth_tls.c xdr: provide x_putmbuf method for kernel XDR 2025-02-01 01:00:25 -08:00
rpctls_impl.c rpctls_impl.c: Fix handling of hung rpc tls daemon 2025-07-18 11:27:50 -07:00
rpctlscd.x rpcsec_tls/client: API refactoring between kernel and rpc.tlsclntd(8) 2025-02-01 01:00:27 -08:00
rpctlssd.x rpcsec_tls/server: API refactoring between kernel and rpc.tlsservd(8) 2025-02-01 01:00:27 -08:00