diff options
author | guido <guido@FreeBSD.org> | 1998-03-01 19:39:29 +0000 |
---|---|---|
committer | guido <guido@FreeBSD.org> | 1998-03-01 19:39:29 +0000 |
commit | 406aea3e09766ad7004a2dd800fe137e6769b856 (patch) | |
tree | ce9fb746d367948f2fceb3f21525c91848a3bfa2 /sys/kern | |
parent | 94eab2321526272010f40a6aba888228d177a5ff (diff) | |
download | FreeBSD-src-406aea3e09766ad7004a2dd800fe137e6769b856.zip FreeBSD-src-406aea3e09766ad7004a2dd800fe137e6769b856.tar.gz |
Make sure that you can only bind a more specific address when it is
done by the same uid.
Obtained from: OpenBSD
Diffstat (limited to 'sys/kern')
-rw-r--r-- | sys/kern/uipc_sockbuf.c | 3 | ||||
-rw-r--r-- | sys/kern/uipc_socket.c | 3 | ||||
-rw-r--r-- | sys/kern/uipc_socket2.c | 3 |
3 files changed, 6 insertions, 3 deletions
diff --git a/sys/kern/uipc_sockbuf.c b/sys/kern/uipc_sockbuf.c index 5598081..997442d 100644 --- a/sys/kern/uipc_sockbuf.c +++ b/sys/kern/uipc_sockbuf.c @@ -31,7 +31,7 @@ * SUCH DAMAGE. * * @(#)uipc_socket2.c 8.1 (Berkeley) 6/10/93 - * $Id: uipc_socket2.c,v 1.29 1997/09/04 17:39:16 tegge Exp $ + * $Id: uipc_socket2.c,v 1.30 1997/09/07 16:53:48 bde Exp $ */ #include <sys/param.h> @@ -213,6 +213,7 @@ sonewconn(head, connstatus) so->so_proto = head->so_proto; so->so_timeo = head->so_timeo; so->so_pgid = head->so_pgid; + so->so_uid = head->so_uid; (void) soreserve(so, head->so_snd.sb_hiwat, head->so_rcv.sb_hiwat); if ((*so->so_proto->pr_usrreqs->pru_attach)(so, 0, NULL)) { diff --git a/sys/kern/uipc_socket.c b/sys/kern/uipc_socket.c index 72897db..4debb5f 100644 --- a/sys/kern/uipc_socket.c +++ b/sys/kern/uipc_socket.c @@ -31,7 +31,7 @@ * SUCH DAMAGE. * * @(#)uipc_socket.c 8.3 (Berkeley) 4/15/94 - * $Id: uipc_socket.c,v 1.36 1998/02/06 12:13:28 eivind Exp $ + * $Id: uipc_socket.c,v 1.37 1998/02/19 19:38:20 fenner Exp $ */ #include <sys/param.h> @@ -93,6 +93,7 @@ socreate(dom, aso, type, proto, p) TAILQ_INIT(&so->so_incomp); TAILQ_INIT(&so->so_comp); so->so_type = type; + so->so_uid = p->p_ucred->cr_uid;; so->so_proto = prp; error = (*prp->pr_usrreqs->pru_attach)(so, proto, p); if (error) { diff --git a/sys/kern/uipc_socket2.c b/sys/kern/uipc_socket2.c index 5598081..997442d 100644 --- a/sys/kern/uipc_socket2.c +++ b/sys/kern/uipc_socket2.c @@ -31,7 +31,7 @@ * SUCH DAMAGE. * * @(#)uipc_socket2.c 8.1 (Berkeley) 6/10/93 - * $Id: uipc_socket2.c,v 1.29 1997/09/04 17:39:16 tegge Exp $ + * $Id: uipc_socket2.c,v 1.30 1997/09/07 16:53:48 bde Exp $ */ #include <sys/param.h> @@ -213,6 +213,7 @@ sonewconn(head, connstatus) so->so_proto = head->so_proto; so->so_timeo = head->so_timeo; so->so_pgid = head->so_pgid; + so->so_uid = head->so_uid; (void) soreserve(so, head->so_snd.sb_hiwat, head->so_rcv.sb_hiwat); if ((*so->so_proto->pr_usrreqs->pru_attach)(so, 0, NULL)) { |