diff options
author | 1996-04-23 15:03:52 +0000 | |
---|---|---|
committer | 1996-04-23 15:03:52 +0000 | |
commit | 55db18b28ad67a780ecf487d007fe2e2ab9bb5b7 (patch) | |
tree | 2512c71752f31d67cd3c8080942a5204a6af1185 | |
parent | fix last sync (that was because of rcs bug, at least theo said so ;) (diff) | |
download | wireguard-openbsd-55db18b28ad67a780ecf487d007fe2e2ab9bb5b7.tar.xz wireguard-openbsd-55db18b28ad67a780ecf487d007fe2e2ab9bb5b7.zip |
Allow the security level to be lowered when in security level 0
-rw-r--r-- | sys/kern/kern_sysctl.c | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/sys/kern/kern_sysctl.c b/sys/kern/kern_sysctl.c index f46b360b905..1902a35e381 100644 --- a/sys/kern/kern_sysctl.c +++ b/sys/kern/kern_sysctl.c @@ -1,4 +1,4 @@ -/* $OpenBSD: kern_sysctl.c,v 1.5 1996/04/21 22:27:10 deraadt Exp $ */ +/* $OpenBSD: kern_sysctl.c,v 1.6 1996/04/23 15:03:52 dm Exp $ */ /* $NetBSD: kern_sysctl.c,v 1.16 1996/04/12 23:21:37 thorpej Exp $ */ /*- @@ -233,7 +233,8 @@ kern_sysctl(name, namelen, oldp, oldlenp, newp, newlen, p) if ((error = sysctl_int(oldp, oldlenp, newp, newlen, &level)) || newp == NULL) return (error); - if (level < securelevel && p->p_pid != 1) + if ((securelevel > 0 || level < -1) + && level < securelevel && p->p_pid != 1) return (EPERM); securelevel = level; return (0); |