summaryrefslogtreecommitdiff
path: root/sys/secmodel
diff options
context:
space:
mode:
authorelad <elad@NetBSD.org>2007-01-02 11:46:44 +0000
committerelad <elad@NetBSD.org>2007-01-02 11:46:44 +0000
commit9fc29b4efcd0bf4c787e91e181c4378d71e35b32 (patch)
tree8281dc69729a3e894ac041670f37edb2b5cff480 /sys/secmodel
parentd4e1860d1ab1d959f25c801ff5fdb71fe324f204 (diff)
Make the securelevel contained by not exposing the variable that keeps
it outside secmodel_bsd44_securelevel.c.
Diffstat (limited to 'sys/secmodel')
-rw-r--r--sys/secmodel/bsd44/secmodel_bsd44.c7
-rw-r--r--sys/secmodel/bsd44/secmodel_bsd44_securelevel.c7
2 files changed, 7 insertions, 7 deletions
diff --git a/sys/secmodel/bsd44/secmodel_bsd44.c b/sys/secmodel/bsd44/secmodel_bsd44.c
index 36f6be334cb..9efff0f596f 100644
--- a/sys/secmodel/bsd44/secmodel_bsd44.c
+++ b/sys/secmodel/bsd44/secmodel_bsd44.c
@@ -1,4 +1,4 @@
-/* $NetBSD: secmodel_bsd44.c,v 1.5 2006/12/31 10:36:44 elad Exp $ */
+/* $NetBSD: secmodel_bsd44.c,v 1.6 2007/01/02 11:46:44 elad Exp $ */
/*-
* Copyright (c) 2006 Elad Efrat <elad@NetBSD.org>
* All rights reserved.
@@ -30,7 +30,7 @@
*/
#include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: secmodel_bsd44.c,v 1.5 2006/12/31 10:36:44 elad Exp $");
+__KERNEL_RCSID(0, "$NetBSD: secmodel_bsd44.c,v 1.6 2007/01/02 11:46:44 elad Exp $");
#include <sys/types.h>
#include <sys/param.h>
@@ -48,7 +48,6 @@ SYSCTL_SETUP(sysctl_security_bsd44_setup,
"sysctl security bsd44 setup")
{
const struct sysctlnode *rnode;
- extern int securelevel; /* for compatibility. */
sysctl_createv(clog, 0, NULL, &rnode,
CTLFLAG_PERMANENT,
@@ -86,7 +85,7 @@ SYSCTL_SETUP(sysctl_security_bsd44_setup,
CTLFLAG_PERMANENT|CTLFLAG_READWRITE,
CTLTYPE_INT, "securelevel",
SYSCTL_DESCR("System security level"),
- secmodel_bsd44_sysctl_securelevel, 0, &securelevel, 0,
+ secmodel_bsd44_sysctl_securelevel, 0, NULL, 0,
CTL_CREATE, CTL_EOL);
sysctl_createv(clog, 0, &rnode, NULL,
diff --git a/sys/secmodel/bsd44/secmodel_bsd44_securelevel.c b/sys/secmodel/bsd44/secmodel_bsd44_securelevel.c
index 54555f0e5ed..6799f51c0ba 100644
--- a/sys/secmodel/bsd44/secmodel_bsd44_securelevel.c
+++ b/sys/secmodel/bsd44/secmodel_bsd44_securelevel.c
@@ -1,4 +1,4 @@
-/* $NetBSD: secmodel_bsd44_securelevel.c,v 1.23 2007/01/02 11:18:57 elad Exp $ */
+/* $NetBSD: secmodel_bsd44_securelevel.c,v 1.24 2007/01/02 11:46:44 elad Exp $ */
/*-
* Copyright (c) 2006 Elad Efrat <elad@NetBSD.org>
* All rights reserved.
@@ -38,7 +38,7 @@
*/
#include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: secmodel_bsd44_securelevel.c,v 1.23 2007/01/02 11:18:57 elad Exp $");
+__KERNEL_RCSID(0, "$NetBSD: secmodel_bsd44_securelevel.c,v 1.24 2007/01/02 11:46:44 elad Exp $");
#ifdef _KERNEL_OPT
#include "opt_insecure.h"
@@ -78,6 +78,7 @@ secmodel_bsd44_sysctl_securelevel(SYSCTLFN_ARGS)
if (newsecurelevel < securelevel && l && l->l_proc->p_pid != 1)
return (EPERM);
+
securelevel = newsecurelevel;
return (error);
@@ -109,7 +110,7 @@ SYSCTL_SETUP(sysctl_secmodel_bsd44_securelevel_setup,
CTLFLAG_PERMANENT|CTLFLAG_READWRITE,
CTLTYPE_INT, "securelevel",
SYSCTL_DESCR("System security level"),
- secmodel_bsd44_sysctl_securelevel, 0, &securelevel, 0,
+ secmodel_bsd44_sysctl_securelevel, 0, NULL, 0,
CTL_KERN, KERN_SECURELVL, CTL_EOL);
}