DragonFlyBSD Kernel Audit
DF-2927 / fix.diff
← back to finding ↓ download raw
diff --git a/sys/kern/subr_module.c b/sys/kern/subr_module.c
index 231aabae..a56b024d 100644
--- a/sys/kern/subr_module.c
+++ b/sys/kern/subr_module.c
@@ -28,6 +28,7 @@
 
 #include <sys/param.h>
 #include <sys/systm.h>
+#include <sys/caps.h>
 #include <sys/linker.h>
 #include <sys/sbuf.h>
 #include <sys/sysctl.h>
@@ -432,6 +433,9 @@ sysctl_preload_dump(SYSCTL_HANDLER_ARGS)
     struct sbuf sb;
     int error;
 
+    error = caps_priv_check_td(req->td, SYSCAP_NODEBUG_UNPRIV);
+    if (error)
+	return (error);
     if (preload_metadata == NULL)
 	return (EINVAL);