linux-kernel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* RE: [PATCH] audit: always follow va_copy() with va_end()
@ 2012-01-09  0:53 Eric Paris
  2012-01-09  0:56 ` Al Viro
  2012-01-09  2:09 ` Xi Wang
  0 siblings, 2 replies; 4+ messages in thread
From: Eric Paris @ 2012-01-09  0:53 UTC (permalink / raw)
  To: torvalds, jj; +Cc: linux-kernel, akpm, viro

[-- Attachment #1: Type: text/plain, Size: 1801 bytes --]

This one was committed to my audit tree which al promised to pull all of my audit tree into the vfs tree for 3.3, so if you want to take it Linus, you can add my ack as the maintainer. I'd expect to see it from Al early this week. Can't say anything about SCSI though...


-----Original Message-----
From: Jesper Juhl [jj@chaosbits.net]
Received: Sunday, 08 Jan 2012, 4:44pm
To: Linus Torvalds [torvalds@linux-foundation.org]
CC: Linux Kernel Mailing List [linux-kernel@vger.kernel.org]; Andrew Morton [akpm@linux-foundation.org]; Al Viro [viro@zeniv.linux.org.uk]; Eric Paris [eparis@redhat.com]
Subject: [PATCH] audit: always follow va_copy() with va_end()


A call to va_copy() should always be followed by a call to va_end() in the
same function.  In kernel/autit.c::audit_log_vformat() this is not always
done.  This patch makes sure va_end() is always called.

Signed-off-by: Jesper Juhl <jj@chaosbits.net>
Cc: Al Viro <viro@zeniv.linux.org.uk>
Cc: Eric Paris <eparis@redhat.com>
Cc: Andrew Morton <akpm@linux-foundation.org>
---
 kernel/audit.c |    5 +++--
 1 files changed, 3 insertions(+), 2 deletions(-)

diff --git a/kernel/audit.c b/kernel/audit.c
index 09fae26..2c1d6ab 100644
--- a/kernel/audit.c
+++ b/kernel/audit.c
@@ -1260,12 +1260,13 @@ static void audit_log_vformat(struct audit_buffer *ab, const char *fmt,
 		avail = audit_expand(ab,
 			max_t(unsigned, AUDIT_BUFSIZ, 1+len-avail));
 		if (!avail)
-			goto out;
+			goto out_va_end;
 		len = vsnprintf(skb_tail_pointer(skb), avail, fmt, args2);
 	}
-	va_end(args2);
 	if (len > 0)
 		skb_put(skb, len);
+out_va_end:
+	va_end(args2);
 out:
 	return;
 }
-- 
1.7.8.1


-- 
Jesper Juhl <jj@chaosbits.net>       http://www.chaosbits.net/
Don't top-post http://www.catb.org/jargon/html/T/top-post.html
Plain text mails only, please.


^ permalink raw reply related	[flat|nested] 4+ messages in thread

* Re: [PATCH] audit: always follow va_copy() with va_end()
  2012-01-09  0:53 [PATCH] audit: always follow va_copy() with va_end() Eric Paris
@ 2012-01-09  0:56 ` Al Viro
  2012-01-09  2:09 ` Xi Wang
  1 sibling, 0 replies; 4+ messages in thread
From: Al Viro @ 2012-01-09  0:56 UTC (permalink / raw)
  To: Eric Paris; +Cc: torvalds, jj, linux-kernel, akpm

On Sun, Jan 08, 2012 at 07:53:51PM -0500, Eric Paris wrote:
> This one was committed to my audit tree which al promised to pull all of my audit tree into the vfs tree for 3.3, so if you want to take it Linus, you can add my ack as the maintainer. I'd expect to see it from Al early this week. Can't say anything about SCSI though...

s/vfs/recreated audit/; should've done that a month or so ago.  Will do
tonight...

^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: [PATCH] audit: always follow va_copy() with va_end()
  2012-01-09  0:53 [PATCH] audit: always follow va_copy() with va_end() Eric Paris
  2012-01-09  0:56 ` Al Viro
@ 2012-01-09  2:09 ` Xi Wang
  1 sibling, 0 replies; 4+ messages in thread
From: Xi Wang @ 2012-01-09  2:09 UTC (permalink / raw)
  To: Eric Paris; +Cc: torvalds, jj, linux-kernel, akpm, viro

On Jan 8, 2012, at 7:53 PM, Eric Paris wrote:
> This one was committed to my audit tree which al promised to pull all of my audit tree into the vfs tree for 3.3, so if you want to take it Linus, you can add my ack as the maintainer. I'd expect to see it from Al early this week. Can't say anything about SCSI though...

Could you please also take a look at another simple audit fix or
should I resend the patch again?  Thanks a lot.

https://lkml.org/lkml/2011/12/20/379

^ permalink raw reply	[flat|nested] 4+ messages in thread

* [PATCH] audit: always follow va_copy() with va_end()
  2012-01-08 21:35   ` Jesper Juhl
@ 2012-01-08 21:44     ` Jesper Juhl
  0 siblings, 0 replies; 4+ messages in thread
From: Jesper Juhl @ 2012-01-08 21:44 UTC (permalink / raw)
  To: Linus Torvalds
  Cc: Linux Kernel Mailing List, Andrew Morton, Al Viro, Eric Paris

A call to va_copy() should always be followed by a call to va_end() in the
same function.  In kernel/autit.c::audit_log_vformat() this is not always
done.  This patch makes sure va_end() is always called.

Signed-off-by: Jesper Juhl <jj@chaosbits.net>
Cc: Al Viro <viro@zeniv.linux.org.uk>
Cc: Eric Paris <eparis@redhat.com>
Cc: Andrew Morton <akpm@linux-foundation.org>
---
 kernel/audit.c |    5 +++--
 1 files changed, 3 insertions(+), 2 deletions(-)

diff --git a/kernel/audit.c b/kernel/audit.c
index 09fae26..2c1d6ab 100644
--- a/kernel/audit.c
+++ b/kernel/audit.c
@@ -1260,12 +1260,13 @@ static void audit_log_vformat(struct audit_buffer *ab, const char *fmt,
 		avail = audit_expand(ab,
 			max_t(unsigned, AUDIT_BUFSIZ, 1+len-avail));
 		if (!avail)
-			goto out;
+			goto out_va_end;
 		len = vsnprintf(skb_tail_pointer(skb), avail, fmt, args2);
 	}
-	va_end(args2);
 	if (len > 0)
 		skb_put(skb, len);
+out_va_end:
+	va_end(args2);
 out:
 	return;
 }
-- 
1.7.8.1


-- 
Jesper Juhl <jj@chaosbits.net>       http://www.chaosbits.net/
Don't top-post http://www.catb.org/jargon/html/T/top-post.html
Plain text mails only, please.


^ permalink raw reply related	[flat|nested] 4+ messages in thread

end of thread, other threads:[~2012-01-09  2:09 UTC | newest]

Thread overview: 4+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2012-01-09  0:53 [PATCH] audit: always follow va_copy() with va_end() Eric Paris
2012-01-09  0:56 ` Al Viro
2012-01-09  2:09 ` Xi Wang
  -- strict thread matches above, loose matches on Subject: below --
2012-01-08 19:51 Please merge two small bug fix patches from linux-next Jesper Juhl
2012-01-08 21:26 ` Linus Torvalds
2012-01-08 21:35   ` Jesper Juhl
2012-01-08 21:44     ` [PATCH] audit: always follow va_copy() with va_end() Jesper Juhl

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).