summaryrefslogtreecommitdiff
path: root/kernel/module.c
diff options
context:
space:
mode:
authorRichard Guy Briggs <rgb@redhat.com>2017-05-02 10:16:04 -0400
committerPaul Moore <paul@paul-moore.com>2017-05-02 10:16:04 -0400
commitf6276ac95bde4312251535904af32b1de9d54949 (patch)
tree94826d7413f2bf9265ea6305598ef4cd8e19a1f8 /kernel/module.c
parent9aab4f4ea7a4ca80ec3e0269ce2eb71a24f6fef9 (diff)
downloadlwn-f6276ac95bde4312251535904af32b1de9d54949.tar.gz
lwn-f6276ac95bde4312251535904af32b1de9d54949.zip
audit: log module name on delete_module
When a sysadmin wishes to monitor module unloading with a syscall rule such as: -a always,exit -F arch=x86_64 -S delete_module -F key=mod-unload the SYSCALL record doesn't tell us what module was requested for unloading. Use the new KERN_MODULE auxiliary record to record it. The SYSCALL record result code will list the return code. See: https://github.com/linux-audit/audit-kernel/issues/37 https://github.com/linux-audit/audit-kernel/issues/7 https://github.com/linux-audit/audit-kernel/wiki/RFE-Module-Load-Record-Format Signed-off-by: Richard Guy Briggs <rgb@redhat.com> Acked-by: Jessica Yu <jeyu@redhat.com> Signed-off-by: Paul Moore <paul@paul-moore.com>
Diffstat (limited to 'kernel/module.c')
-rw-r--r--kernel/module.c2
1 files changed, 2 insertions, 0 deletions
diff --git a/kernel/module.c b/kernel/module.c
index 7eba6dea4f41..23224d8ba00d 100644
--- a/kernel/module.c
+++ b/kernel/module.c
@@ -947,6 +947,8 @@ SYSCALL_DEFINE2(delete_module, const char __user *, name_user,
return -EFAULT;
name[MODULE_NAME_LEN-1] = '\0';
+ audit_log_kern_module(name);
+
if (mutex_lock_interruptible(&module_mutex) != 0)
return -EINTR;