X-Git-Url: https://err.no/cgi-bin/gitweb.cgi?a=blobdiff_plain;f=fs%2Fexec.c;h=0b88bf646143c983a36309c3d5f425dcff7ec841;hb=e6022603b9aa7d61d20b392e69edcdbbc1789969;hp=3a79d97ac234422c353ad6c37ab973d3363471bd;hpb=7b7e394185014e0f3bd8989cac937003f20ef9ce;p=linux-2.6 diff --git a/fs/exec.c b/fs/exec.c index 3a79d97ac2..0b88bf6461 100644 --- a/fs/exec.c +++ b/fs/exec.c @@ -49,6 +49,7 @@ #include #include #include +#include #include #include @@ -865,7 +866,6 @@ int flush_old_exec(struct linux_binprm * bprm) bprm->mm = NULL; /* We're using it now */ /* This is the point of no return */ - steal_locks(files); put_files_struct(files); current->sas_ss_sp = current->sas_ss_size = 0; @@ -1085,6 +1085,11 @@ int search_binary_handler(struct linux_binprm *bprm,struct pt_regs *regs) /* kernel module loader fixup */ /* so we don't try to load run modprobe in kernel space. */ set_fs(USER_DS); + + retval = audit_bprm(bprm); + if (retval) + return retval; + retval = -ENOENT; for (try=0; try<2; try++) { read_lock(&binfmt_lock);