From fbe33ac7260b607563f1036821da74685bdbef4e Mon Sep 17 00:00:00 2001 From: Peter Zijlstra Date: Sat, 28 Jul 2007 00:55:18 +0200 Subject: [PATCH] --- yaml --- r: 63111 b: refs/heads/master c: 040b3a2df2dd26c3e401823f3b0ce3fe99e966c5 h: refs/heads/master i: 63109: aea1b4e4c7ab5d4b9234fd065b2db8f4be75e034 63107: e7cb4fb8474e76a18b1558d1dcf06c1ee9022d38 63103: fce669c40e0e724d39ebb98175631d2f308e5420 v: v3 --- [refs] | 2 +- trunk/kernel/auditsc.c | 6 ++++-- 2 files changed, 5 insertions(+), 3 deletions(-) diff --git a/[refs] b/[refs] index a10ec8744e15..e67e33babd24 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: 0af3678f7c5872836d1cc8d7c659abd62c3c5ae7 +refs/heads/master: 040b3a2df2dd26c3e401823f3b0ce3fe99e966c5 diff --git a/trunk/kernel/auditsc.c b/trunk/kernel/auditsc.c index bde1124d5908..a777d3761416 100644 --- a/trunk/kernel/auditsc.c +++ b/trunk/kernel/auditsc.c @@ -824,12 +824,14 @@ static void audit_log_execve_info(struct audit_buffer *ab, { int i; long len, ret; - const char __user *p = (const char __user *)axi->mm->arg_start; + const char __user *p; char *buf; if (axi->mm != current->mm) return; /* execve failed, no additional info */ + p = (const char __user *)axi->mm->arg_start; + for (i = 0; i < axi->argc; i++, p += len) { len = strnlen_user(p, MAX_ARG_STRLEN); /* @@ -855,7 +857,7 @@ static void audit_log_execve_info(struct audit_buffer *ab, * copied them here, and the mm hasn't been exposed to user- * space yet. */ - if (!ret) { + if (ret) { WARN_ON(1); send_sig(SIGKILL, current, 0); }