Author: kevans Date: Mon Oct 26 17:30:17 2020 New Revision: 367060 URL: https://svnweb.freebsd.org/changeset/base/367060
Log: audit: also correctly audit linux_execve() Linux execve() gets audited as AUE_EXECVE as well, we should also interpret the return from this correctly for the same reasoning as in r367002. MFC with: r367002 Modified: head/sys/amd64/linux/linux_machdep.c head/sys/amd64/linux32/linux32_machdep.c head/sys/arm64/linux/linux_machdep.c head/sys/i386/linux/linux_machdep.c Modified: head/sys/amd64/linux/linux_machdep.c ============================================================================== --- head/sys/amd64/linux/linux_machdep.c Mon Oct 26 16:42:53 2020 (r367059) +++ head/sys/amd64/linux/linux_machdep.c Mon Oct 26 17:30:17 2020 (r367060) @@ -81,6 +81,8 @@ __FBSDID("$FreeBSD$"); #include <x86/ifunc.h> #include <x86/sysarch.h> +#include <security/audit/audit.h> + #include <amd64/linux/linux.h> #include <amd64/linux/linux_proto.h> #include <compat/linux/linux_emul.h> @@ -111,6 +113,7 @@ linux_execve(struct thread *td, struct linux_execve_ar } if (error == 0) error = linux_common_execve(td, &eargs); + AUDIT_SYSCALL_EXIT(error == EJUSTRETURN ? 0 : error, td); return (error); } Modified: head/sys/amd64/linux32/linux32_machdep.c ============================================================================== --- head/sys/amd64/linux32/linux32_machdep.c Mon Oct 26 16:42:53 2020 (r367059) +++ head/sys/amd64/linux32/linux32_machdep.c Mon Oct 26 17:30:17 2020 (r367060) @@ -69,6 +69,8 @@ __FBSDID("$FreeBSD$"); #include <vm/vm.h> #include <vm/vm_map.h> +#include <security/audit/audit.h> + #include <compat/freebsd32/freebsd32_util.h> #include <amd64/linux32/linux.h> #include <amd64/linux32/linux32_proto.h> @@ -137,6 +139,7 @@ linux_execve(struct thread *td, struct linux_execve_ar free(path, M_TEMP); if (error == 0) error = linux_common_execve(td, &eargs); + AUDIT_SYSCALL_EXIT(error == EJUSTRETURN ? 0 : error, td); return (error); } Modified: head/sys/arm64/linux/linux_machdep.c ============================================================================== --- head/sys/arm64/linux/linux_machdep.c Mon Oct 26 16:42:53 2020 (r367059) +++ head/sys/arm64/linux/linux_machdep.c Mon Oct 26 17:30:17 2020 (r367060) @@ -38,6 +38,8 @@ __FBSDID("$FreeBSD$"); #include <sys/proc.h> #include <sys/sdt.h> +#include <security/audit/audit.h> + #include <arm64/linux/linux.h> #include <arm64/linux/linux_proto.h> #include <compat/linux/linux_dtrace.h> @@ -78,6 +80,7 @@ linux_execve(struct thread *td, struct linux_execve_ar } if (error == 0) error = linux_common_execve(td, &eargs); + AUDIT_SYSCALL_EXIT(error == EJUSTRETURN ? 0 : error, td); return (error); } Modified: head/sys/i386/linux/linux_machdep.c ============================================================================== --- head/sys/i386/linux/linux_machdep.c Mon Oct 26 16:42:53 2020 (r367059) +++ head/sys/i386/linux/linux_machdep.c Mon Oct 26 17:30:17 2020 (r367060) @@ -61,6 +61,8 @@ __FBSDID("$FreeBSD$"); #include <vm/vm.h> #include <vm/vm_map.h> +#include <security/audit/audit.h> + #include <i386/linux/linux.h> #include <i386/linux/linux_proto.h> #include <compat/linux/linux_emul.h> @@ -114,6 +116,7 @@ linux_execve(struct thread *td, struct linux_execve_ar } if (error == 0) error = linux_common_execve(td, &eargs); + AUDIT_SYSCALL_EXIT(error == EJUSTRETURN ? 0 : error, td); return (error); } _______________________________________________ svn-src-all@freebsd.org mailing list https://lists.freebsd.org/mailman/listinfo/svn-src-all To unsubscribe, send any mail to "svn-src-all-unsubscr...@freebsd.org"