Skip site navigation (1)Skip section navigation (2)
Date:      Sun, 12 Jul 2020 15:57:29 +0000 (UTC)
From:      Rick Macklem <rmacklem@FreeBSD.org>
To:        src-committers@freebsd.org, svn-src-projects@freebsd.org
Subject:   svn commit: r363131 - projects/nfs-over-tls/sys/rpc
Message-ID:  <202007121557.06CFvTpD050444@repo.freebsd.org>

next in thread | raw e-mail | index | archive | help
Author: rmacklem
Date: Sun Jul 12 15:57:29 2020
New Revision: 363131
URL: https://svnweb.freebsd.org/changeset/base/363131

Log:
  Slight code cleanup in svc_vc_destroy_common(). No change in semantics.

Modified:
  projects/nfs-over-tls/sys/rpc/svc_vc.c

Modified: projects/nfs-over-tls/sys/rpc/svc_vc.c
==============================================================================
--- projects/nfs-over-tls/sys/rpc/svc_vc.c	Sun Jul 12 14:57:29 2020	(r363130)
+++ projects/nfs-over-tls/sys/rpc/svc_vc.c	Sun Jul 12 15:57:29 2020	(r363131)
@@ -456,27 +456,25 @@ svc_vc_destroy_common(SVCXPRT *xprt)
 
 	if (xprt->xp_socket) {
 		if ((xprt->xp_tls & (RPCTLS_FLAGS_HANDSHAKE |
-		    RPCTLS_FLAGS_HANDSHFAIL)) == 0)
-			(void)soclose(xprt->xp_socket);
-		else if ((xprt->xp_tls & RPCTLS_FLAGS_HANDSHAKE) != 0) {
-			/*
-			 * If the upcall fails, the socket has
-			 * probably been closed via the rpctlssd
-			 * daemon having crashed or been
-			 * restarted, so just ignore returned stat.
-			 */
-			stat = rpctls_srv_disconnect(xprt->xp_sslsec,
-			    xprt->xp_sslusec, xprt->xp_sslrefno,
-			    &reterr);
-		}
-		if ((xprt->xp_tls & (RPCTLS_FLAGS_HANDSHAKE |
 		    RPCTLS_FLAGS_HANDSHFAIL)) != 0) {
+			if ((xprt->xp_tls & RPCTLS_FLAGS_HANDSHAKE) != 0) {
+				/*
+				 * If the upcall fails, the socket has
+				 * probably been closed via the rpctlssd
+				 * daemon having crashed or been
+				 * restarted, so just ignore returned stat.
+				 */
+				stat = rpctls_srv_disconnect(xprt->xp_sslsec,
+				    xprt->xp_sslusec, xprt->xp_sslrefno,
+				    &reterr);
+			}
 			/* Must sorele() to get rid of reference. */
 			CURVNET_SET(xprt->xp_socket->so_vnet);
 			SOCK_LOCK(xprt->xp_socket);
 			sorele(xprt->xp_socket);
 			CURVNET_RESTORE();
-		}
+		} else
+			(void)soclose(xprt->xp_socket);
 	}
 
 	if (xprt->xp_netid)



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?202007121557.06CFvTpD050444>