diff --git a/sys/kern/uipc_syscalls.c b/sys/kern/uipc_syscalls.c --- a/sys/kern/uipc_syscalls.c +++ b/sys/kern/uipc_syscalls.c @@ -1392,9 +1392,7 @@ return (error); so = fp->f_data; *sa = NULL; - CURVNET_SET(so->so_vnet); - error = so->so_proto->pr_sockaddr(so, sa); - CURVNET_RESTORE(); + error = sogetsockaddr(so, sa); if (error != 0) goto bad; if (*sa == NULL) diff --git a/sys/rpc/rpc_generic.c b/sys/rpc/rpc_generic.c --- a/sys/rpc/rpc_generic.c +++ b/sys/rpc/rpc_generic.c @@ -194,9 +194,7 @@ struct sockopt opt; int error; - CURVNET_SET(so->so_vnet); - error = so->so_proto->pr_sockaddr(so, &sa); - CURVNET_RESTORE(); + error = sogetsockaddr(so, &sa); if (error) return 0; @@ -707,9 +705,7 @@ struct sockaddr *sa; int error, bound; - CURVNET_SET(so->so_vnet); - error = so->so_proto->pr_sockaddr(so, &sa); - CURVNET_RESTORE(); + error = sogetsockaddr(so, &sa); if (error) return (0); @@ -797,9 +793,7 @@ socklen_t salen; if (sa == NULL) { - CURVNET_SET(so->so_vnet); - error = so->so_proto->pr_sockaddr(so, &sa); - CURVNET_RESTORE(); + error = sogetsockaddr(so, &sa); if (error) return (error); freesa = TRUE; diff --git a/sys/rpc/svc_dg.c b/sys/rpc/svc_dg.c --- a/sys/rpc/svc_dg.c +++ b/sys/rpc/svc_dg.c @@ -126,9 +126,7 @@ xprt->xp_p2 = NULL; xprt->xp_ops = &svc_dg_ops; - CURVNET_SET(so->so_vnet); - error = so->so_proto->pr_sockaddr(so, &sa); - CURVNET_RESTORE(); + error = sogetsockaddr(so, &sa); if (error) goto freedata; diff --git a/sys/rpc/svc_vc.c b/sys/rpc/svc_vc.c --- a/sys/rpc/svc_vc.c +++ b/sys/rpc/svc_vc.c @@ -177,9 +177,7 @@ xprt->xp_p2 = NULL; xprt->xp_ops = &svc_vc_rendezvous_ops; - CURVNET_SET(so->so_vnet); - error = so->so_proto->pr_sockaddr(so, &sa); - CURVNET_RESTORE(); + error = sogetsockaddr(so, &sa); if (error) { goto cleanup_svc_vc_create; } @@ -261,9 +259,7 @@ memcpy(&xprt->xp_rtaddr, raddr, raddr->sa_len); - CURVNET_SET(so->so_vnet); - error = so->so_proto->pr_sockaddr(so, &sa); - CURVNET_RESTORE(); + error = sogetsockaddr(so, &sa); if (error) goto cleanup_svc_vc_create;