diff options
author | Peter Wemm <peter@FreeBSD.org> | 1996-05-31 08:04:12 +0000 |
---|---|---|
committer | Peter Wemm <peter@FreeBSD.org> | 1996-05-31 08:04:12 +0000 |
commit | 32e3836bbead76fe97457fcbe355cf30756a881c (patch) | |
tree | 3aa354281e943b5f880b2143f1798837b543e65b | |
parent | 49e0e08d6d745a04d7aeae56096fbc5e60baf8b0 (diff) |
Notes
-rw-r--r-- | sys/kern/kern_exec.c | 8 | ||||
-rw-r--r-- | sys/kern/kern_sysctl.c | 25 | ||||
-rw-r--r-- | sys/kern/uipc_socket.c | 13 | ||||
-rw-r--r-- | sys/kern/uipc_socket2.c | 5 |
4 files changed, 42 insertions, 9 deletions
diff --git a/sys/kern/kern_exec.c b/sys/kern/kern_exec.c index 2b1287528ff95..b8b0f0ab0109d 100644 --- a/sys/kern/kern_exec.c +++ b/sys/kern/kern_exec.c @@ -23,7 +23,7 @@ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * - * $Id: kern_exec.c,v 1.21.4.2 1996/02/22 19:20:47 peter Exp $ + * $Id: kern_exec.c,v 1.21.4.3 1996/04/08 01:28:09 davidg Exp $ */ #include <sys/param.h> @@ -52,6 +52,12 @@ int *exec_copyout_strings __P((struct image_params *)); static int exec_check_permissions(struct image_params *); /* + * Exported to userland via sysctl.. + */ +int exec_ps_strings = PS_STRINGS; +int exec_usrstack = USRSTACK; + +/* * execsw_set is constructed for us by the linker. Each of the items * is a pointer to a `const struct execsw', hence the double pointer here. */ diff --git a/sys/kern/kern_sysctl.c b/sys/kern/kern_sysctl.c index e0b93423aab30..d1109e22d8b42 100644 --- a/sys/kern/kern_sysctl.c +++ b/sys/kern/kern_sysctl.c @@ -34,7 +34,7 @@ * SUCH DAMAGE. * * @(#)kern_sysctl.c 8.4 (Berkeley) 4/14/94 - * $Id: kern_sysctl.c,v 1.25.4.3 1996/02/22 19:22:30 peter Exp $ + * $Id: kern_sysctl.c,v 1.25.4.4 1996/05/30 01:24:41 davidg Exp $ */ /* @@ -178,6 +178,11 @@ char kernelname[MAXPATHLEN] = "/kernel"; /* XXX bloat */ extern int vfs_update_wakeup; extern int vfs_update_interval; extern int osreldate; +extern int exec_ps_strings; +extern int exec_usrstack; +extern int somaxconn; +extern u_long sb_max; +extern u_long sb_efficiency; /* * kernel related system variables. @@ -192,7 +197,7 @@ kern_sysctl(name, namelen, oldp, oldlenp, newp, newlen, p) size_t newlen; struct proc *p; { - int error, level, inthostid; + int error, level, inthostid, intsb_max, intsb_efficiency; dev_t ndumpdev; /* all sysctl names at this level are terminal */ @@ -305,6 +310,22 @@ kern_sysctl(name, namelen, oldp, oldlenp, newp, newlen, p) error = setdumpdev(ndumpdev); } return error; + case KERN_SOMAXCONN: + return(sysctl_int(oldp, oldlenp, newp, newlen, &somaxconn)); + case KERN_MAXSOCKBUF: + intsb_max = sb_max; /* XXX assumes sizeof long <= sizeof int */ + error = sysctl_int(oldp, oldlenp, newp, newlen, &intsb_max); + sb_max = intsb_max; + return (error); + case KERN_PS_STRINGS: + return(sysctl_int(oldp, oldlenp, newp, newlen, &exec_ps_strings)); + case KERN_USRSTACK: + return(sysctl_int(oldp, oldlenp, newp, newlen, &exec_usrstack)); + case KERN_SOCKBUF_WASTE: + intsb_efficiency = sb_efficiency; /* XXX assumes sizeof long <= sizeof int */ + error = sysctl_int(oldp, oldlenp, newp, newlen, &intsb_efficiency); + sb_efficiency = intsb_efficiency; + return (error); default: return (EOPNOTSUPP); } diff --git a/sys/kern/uipc_socket.c b/sys/kern/uipc_socket.c index dfbd37939b6ae..297f816eb2561 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.11 1995/08/25 20:27:46 bde Exp $ + * $Id: uipc_socket.c,v 1.10.4.1 1995/09/12 08:29:56 davidg Exp $ */ #include <sys/param.h> @@ -49,6 +49,11 @@ #include <sys/signalvar.h> /* + * Exported to userland via sysctl + */ +int somaxconn = SOMAXCONN; + +/* * Socket operation routines. * These routines are called by the routines in * sys_socket.c or from a system process, and @@ -125,9 +130,9 @@ solisten(so, backlog) } if (so->so_q == 0) so->so_options |= SO_ACCEPTCONN; - if (backlog < 0) - backlog = 0; - so->so_qlimit = min(backlog, SOMAXCONN); + if (backlog < 0 || backlog > somaxconn) + backlog = somaxconn; + so->so_qlimit = backlog; splx(s); return (0); } diff --git a/sys/kern/uipc_socket2.c b/sys/kern/uipc_socket2.c index 2a6351f418da6..614fe78c009f5 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.5 1995/05/30 08:06:22 rgrimes Exp $ + * $Id: uipc_socket2.c,v 1.5.4.1 1996/02/16 19:04:52 davidg Exp $ */ #include <sys/param.h> @@ -56,9 +56,10 @@ char netio[] = "netio"; char netcon[] = "netcon"; char netcls[] = "netcls"; +/* these two are sysctl visible */ u_long sb_max = SB_MAX; /* patchable */ -static u_long sb_efficiency = 8; /* parameter for sbreserve() */ +u_long sb_efficiency = 8; /* parameter for sbreserve() */ /* * Procedures to manipulate state flags of socket |