aboutsummaryrefslogtreecommitdiffstats
path: root/sys/openbsd
diff options
context:
space:
mode:
authorAnton Lindqvist <anton@basename.se>2020-12-01 19:30:50 +0100
committerDmitry Vyukov <dvyukov@google.com>2020-12-02 08:20:40 +0100
commit2d2eca8c9d942abab8bfb28cd4a068ef1b7e1189 (patch)
tree24e05cf320f0541c8c2e1b4249b817650aaf7271 /sys/openbsd
parentc42a35e9053074ec924558e4aa4077ac0d86cfff (diff)
sys/openbsd: neutralize sysctl kern.witness
Do not fiddle with witness since we explicit values as part of the kernel configuration in dashboard/config/openbsd.
Diffstat (limited to 'sys/openbsd')
-rw-r--r--sys/openbsd/init.go7
-rw-r--r--sys/openbsd/init_test.go5
2 files changed, 12 insertions, 0 deletions
diff --git a/sys/openbsd/init.go b/sys/openbsd/init.go
index c72a80931..e90ffb115 100644
--- a/sys/openbsd/init.go
+++ b/sys/openbsd/init.go
@@ -20,6 +20,7 @@ func InitTarget(target *prog.Target) {
DIOCKILLSTATES: target.GetConst("DIOCKILLSTATES"),
KERN_MAXCLUSTERS: target.GetConst("KERN_MAXCLUSTERS"),
KERN_MAXTHREAD: target.GetConst("KERN_MAXTHREAD"),
+ KERN_WITNESS: target.GetConst("KERN_WITNESS"),
S_IFCHR: target.GetConst("S_IFCHR"),
S_IFMT: target.GetConst("S_IFMT"),
MCL_FUTURE: target.GetConst("MCL_FUTURE"),
@@ -40,6 +41,7 @@ type arch struct {
DIOCKILLSTATES uint64
KERN_MAXCLUSTERS uint64
KERN_MAXTHREAD uint64
+ KERN_WITNESS uint64
S_IFCHR uint64
S_IFMT uint64
MCL_FUTURE uint64
@@ -247,6 +249,11 @@ func (arch *arch) neutralizeSysctlKern(mib []*prog.ConstArg) bool {
return true
}
+ if len(mib) >= 2 &&
+ mib[0].Val == arch.CTL_KERN && mib[1].Val == arch.KERN_WITNESS {
+ return true
+ }
+
return false
}
diff --git a/sys/openbsd/init_test.go b/sys/openbsd/init_test.go
index 3a6c2c14c..2a9ed640c 100644
--- a/sys/openbsd/init_test.go
+++ b/sys/openbsd/init_test.go
@@ -94,6 +94,11 @@ func TestNeutralize(t *testing.T) {
Out: `sysctl$kern(&(0x7f0000000300)={0x0}, 0x0, 0x0, 0x0, &(0x7f0000000300)="ff0380c5", 0x4)`,
},
{
+ // Test for sysctl kern.witness.
+ In: `sysctl$kern(&(0x7f0000000300)={0x1, 0x3c}, 0x2, 0x0, 0x0, &(0x7f0000000300)="ff0380c5", 0x4)`,
+ Out: `sysctl$kern(&(0x7f0000000300)={0x0}, 0x0, 0x0, 0x0, &(0x7f0000000300)="ff0380c5", 0x4)`,
+ },
+ {
In: `clock_settime(0x0, &(0x7f0000cc0ff0)={0x0, 0x0})`,
Out: `clock_settime(0xffffffffffffffff, &(0x7f0000cc0ff0))`,
},