summaryrefslogtreecommitdiff
path: root/sys/net/if.c
diff options
context:
space:
mode:
authorThordur I. Bjornsson <thib@cvs.openbsd.org>2008-05-23 15:51:13 +0000
committerThordur I. Bjornsson <thib@cvs.openbsd.org>2008-05-23 15:51:13 +0000
commit114f984d932b1f6810293178a80279f30cd2bd27 (patch)
tree1a1f583d1f42425cfd75dad816a48f3121aff8d0 /sys/net/if.c
parentb9a20684fa94a5082c8e1df0b6f92099a2f7cb63 (diff)
Deal with the situation when TCP nfs mounts timeout and processes
get hung in nfs_reconnect() because they do not have the proper privilages to bind to a socket, by adding a struct proc * argument to sobind() (and the *_usrreq() routines, and finally in{6}_pcbbind) and do the sobind() with proc0 in nfs_connect. OK markus@, blambert@. "go ahead" deraadt@. Fixes an issue reported by bernd@ (Tested by bernd@). Fixes PR5135 too.
Diffstat (limited to 'sys/net/if.c')
-rw-r--r--sys/net/if.c6
1 files changed, 3 insertions, 3 deletions
diff --git a/sys/net/if.c b/sys/net/if.c
index 2d226cc12d4..37638c8bcb8 100644
--- a/sys/net/if.c
+++ b/sys/net/if.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: if.c,v 1.170 2008/05/07 05:51:12 mpf Exp $ */
+/* $OpenBSD: if.c,v 1.171 2008/05/23 15:51:12 thib Exp $ */
/* $NetBSD: if.c,v 1.35 1996/05/07 05:26:04 thorpej Exp $ */
/*
@@ -1421,7 +1421,7 @@ ifioctl(struct socket *so, u_long cmd, caddr_t data, struct proc *p)
#if !defined(COMPAT_43) && !defined(COMPAT_LINUX) && !defined(COMPAT_SVR4)
error = ((*so->so_proto->pr_usrreq)(so, PRU_CONTROL,
(struct mbuf *) cmd, (struct mbuf *) data,
- (struct mbuf *) ifp));
+ (struct mbuf *) ifp, p));
#else
{
u_long ocmd = cmd;
@@ -1461,7 +1461,7 @@ ifioctl(struct socket *so, u_long cmd, caddr_t data, struct proc *p)
}
error = ((*so->so_proto->pr_usrreq)(so, PRU_CONTROL,
(struct mbuf *) cmd, (struct mbuf *) data,
- (struct mbuf *) ifp));
+ (struct mbuf *) ifp, p));
switch (ocmd) {
case OSIOCGIFADDR: