From: Bill Joy Date: Fri, 20 Nov 1981 17:19:22 +0000 (-0800) Subject: ssocketaddr X-Git-Tag: BSD-4_1_snap-Snapshot-Development~484 X-Git-Url: https://git.subgeniuskitty.com/unix-history/.git/commitdiff_plain/a3076b07eb658c6492c11e733de4de9fd8c5f479?hp=d8bd11cdfa6e860c94e9d770ce34f090072505ba ssocketaddr SCCS-vsn: sys/kern/uipc_syscalls.c 4.6 --- diff --git a/usr/src/sys/kern/uipc_syscalls.c b/usr/src/sys/kern/uipc_syscalls.c index 592771ab51..3e0ff00a69 100644 --- a/usr/src/sys/kern/uipc_syscalls.c +++ b/usr/src/sys/kern/uipc_syscalls.c @@ -1,4 +1,4 @@ -/* uipc_syscalls.c 4.5 81/11/20 */ +/* uipc_syscalls.c 4.6 81/11/20 */ #include "../h/param.h" #include "../h/systm.h" @@ -352,3 +352,24 @@ COUNT(SRECEIVE); if (uap->asa) (void) copyout((caddr_t)&sa, (caddr_t)uap->asa, sizeof (sa)); } + +/* + * Get socket address. + */ +ssocketaddr() +{ + register struct a { + int fdes; + struct sockaddr *asa; + } *uap = (struct a *)u.u_ap; + register struct file *fp; +COUNT(SSOCKETADDR); + + fp = getf(uap->fdes); + if (fp == 0) + return; + if ((fp->f_flag & FSOCKET) == 0) { + u.u_error = ENOTSOCK; + return; + } + copyout(fp->f_socket->f_