summaryrefslogtreecommitdiffstats
path: root/sys/kern
diff options
context:
space:
mode:
authortmm <tmm@FreeBSD.org>2001-04-24 19:09:23 +0000
committertmm <tmm@FreeBSD.org>2001-04-24 19:09:23 +0000
commit731887b731d4664fe686848ade32d74f8956d951 (patch)
treec5ddc99398f13a67f176c5b20113598b5589ff6a /sys/kern
parent5bf1eebdefdaab3490e4118adc366dc27ac8b357 (diff)
downloadFreeBSD-src-731887b731d4664fe686848ade32d74f8956d951.zip
FreeBSD-src-731887b731d4664fe686848ade32d74f8956d951.tar.gz
Change uipc_sockaddr so that a sockaddr_un without a path is returned
nam for an unbound socket instead of leaving nam untouched in that case. This way, the getsockname() output can be used to determine the address family of such sockets (AF_LOCAL). Reviewed by: iedowse Approved by: rwatson
Diffstat (limited to 'sys/kern')
-rw-r--r--sys/kern/uipc_usrreq.c2
1 files changed, 2 insertions, 0 deletions
diff --git a/sys/kern/uipc_usrreq.c b/sys/kern/uipc_usrreq.c
index de295b1..a26754c 100644
--- a/sys/kern/uipc_usrreq.c
+++ b/sys/kern/uipc_usrreq.c
@@ -420,6 +420,8 @@ uipc_sockaddr(struct socket *so, struct sockaddr **nam)
return EINVAL;
if (unp->unp_addr)
*nam = dup_sockaddr((struct sockaddr *)unp->unp_addr, 1);
+ else
+ *nam = dup_sockaddr((struct sockaddr *)&sun_noname, 1);
return 0;
}
OpenPOWER on IntegriCloud