--- ./grsecurity/grsec_exec.c.orig 2005-02-06 21:42:11.000000000 -0500 +++ ./grsecurity/grsec_exec.c 2005-02-06 21:48:06.000000000 -0500 @@ -22,6 +22,7 @@ if (grsec_enable_execve && current->user && (atomic_read(¤t->user->processes) > current->rlim[RLIMIT_NPROC].rlim_cur) && + grsec_enable_execve_logging && !capable(CAP_SYS_ADMIN) && !capable(CAP_SYS_RESOURCE)) { gr_log_noargs(GR_DONT_AUDIT, GR_NPROC_MSG); return -EAGAIN; --- ./grsecurity/grsec_init.c.orig 2005-02-06 21:39:45.000000000 -0500 +++ ./grsecurity/grsec_init.c 2005-02-06 21:40:50.000000000 -0500 @@ -11,6 +11,7 @@ int grsec_enable_dmesg; int grsec_enable_fifo; int grsec_enable_execve; +int grsec_enable_execve_logging; int grsec_enable_execlog; int grsec_enable_signal; int grsec_enable_forkfail; @@ -154,6 +155,7 @@ #endif #ifdef CONFIG_GRKERNSEC_EXECVE grsec_enable_execve = 1; + grsec_enable_execve_logging = 1; #endif #ifdef CONFIG_GRKERNSEC_EXECLOG grsec_enable_execlog = 1; --- ./include/linux/grinternal.h.orig 2005-02-06 21:37:38.000000000 -0500 +++ ./include/linux/grinternal.h 2005-02-06 21:38:58.000000000 -0500 @@ -36,6 +36,7 @@ extern int grsec_enable_link; extern int grsec_enable_fifo; extern int grsec_enable_execve; +extern int grsec_enable_execve_logging; extern int grsec_enable_execlog; extern int grsec_enable_signal; extern int grsec_enable_forkfail; --- ./kernel/sysctl.c.orig 2005-02-06 21:32:05.000000000 -0500 +++ ./kernel/sysctl.c 2005-02-06 21:55:41.000000000 -0500 @@ -310,7 +310,7 @@ }; #ifdef CONFIG_GRKERNSEC_SYSCTL -enum {GS_LINK=1, GS_FIFO, GS_EXECVE, GS_EXECLOG, GS_SIGNAL, +enum {GS_LINK=1, GS_FIFO, GS_EXECVE, GS_EXECVE_LOGGING, GS_EXECLOG, GS_SIGNAL, GS_FORKFAIL, GS_TIME, GS_CHROOT_SHMAT, GS_CHROOT_UNIX, GS_CHROOT_MNT, GS_CHROOT_FCHDIR, GS_CHROOT_DBL, GS_CHROOT_PVT, GS_CHROOT_CD, GS_CHROOT_CM, GS_CHROOT_MK, GS_CHROOT_NI, GS_CHROOT_EXECLOG, GS_CHROOT_CAPS, @@ -333,6 +333,8 @@ #ifdef CONFIG_GRKERNSEC_EXECVE {GS_EXECVE, "execve_limiting", &grsec_enable_execve, sizeof (int), 0600, NULL, &proc_dointvec}, + {GS_EXECVE_LOGGING, "execve_limiting_logging", &grsec_enable_execve_logging, sizeof (int), + 0600, NULL, &proc_dointvec}, #endif #ifdef CONFIG_GRKERNSEC_EXECLOG {GS_EXECLOG, "exec_logging", &grsec_enable_execlog, sizeof (int),