diff options
author | tmm <tmm@FreeBSD.org> | 2001-04-24 19:09:23 +0000 |
---|---|---|
committer | tmm <tmm@FreeBSD.org> | 2001-04-24 19:09:23 +0000 |
commit | 731887b731d4664fe686848ade32d74f8956d951 (patch) | |
tree | c5ddc99398f13a67f176c5b20113598b5589ff6a /sys/kern/uipc_usrreq.c | |
parent | 5bf1eebdefdaab3490e4118adc366dc27ac8b357 (diff) | |
download | FreeBSD-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/uipc_usrreq.c')
-rw-r--r-- | sys/kern/uipc_usrreq.c | 2 |
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; } |