[kernel] r14109 - in dists/sid/linux-2.6/debian: . patches/bugfix/all patches/series

Dann Frazier dannf at alioth.debian.org
Fri Aug 14 23:47:03 UTC 2009


Author: dannf
Date: Fri Aug 14 23:47:02 2009
New Revision: 14109

Log:
flat: fix uninitialized ptr with shared libs

Added:
   dists/sid/linux-2.6/debian/patches/bugfix/all/flat-fix-uninitialized-ptr-with-shared-libs.patch
Modified:
   dists/sid/linux-2.6/debian/changelog
   dists/sid/linux-2.6/debian/patches/series/6

Modified: dists/sid/linux-2.6/debian/changelog
==============================================================================
--- dists/sid/linux-2.6/debian/changelog	Fri Aug 14 22:08:17 2009	(r14108)
+++ dists/sid/linux-2.6/debian/changelog	Fri Aug 14 23:47:02 2009	(r14109)
@@ -5,6 +5,7 @@
 
   [ dann frazier ]
   * Make sock_sendpage() use kernel_sendpage() (CVE-2009-2692)
+  * flat: fix uninitialized ptr with shared libs
 
  -- Bastian Blank <waldi at debian.org>  Fri, 14 Aug 2009 23:50:45 +0200
 

Added: dists/sid/linux-2.6/debian/patches/bugfix/all/flat-fix-uninitialized-ptr-with-shared-libs.patch
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ dists/sid/linux-2.6/debian/patches/bugfix/all/flat-fix-uninitialized-ptr-with-shared-libs.patch	Fri Aug 14 23:47:02 2009	(r14109)
@@ -0,0 +1,49 @@
+commit 3440625d78711bee41a84cf29c3d8c579b522666
+Author: Linus Torvalds <torvalds at linux-foundation.org>
+Date:   Thu Aug 6 15:09:34 2009 -0700
+
+    flat: fix uninitialized ptr with shared libs
+    
+    The new credentials code broke load_flat_shared_library() as it now uses
+    an uninitialized cred pointer.
+    
+    Reported-by: Bernd Schmidt <bernds_cb1 at t-online.de>
+    Tested-by: Bernd Schmidt <bernds_cb1 at t-online.de>
+    Cc: Mike Frysinger <vapier at gentoo.org>
+    Cc: David Howells <dhowells at redhat.com>
+    Cc: <stable at kernel.org>
+    Signed-off-by: Andrew Morton <akpm at linux-foundation.org>
+    Signed-off-by: Linus Torvalds <torvalds at linux-foundation.org>
+
+diff --git a/fs/binfmt_flat.c b/fs/binfmt_flat.c
+index 697f6b5..e92f229 100644
+--- a/fs/binfmt_flat.c
++++ b/fs/binfmt_flat.c
+@@ -828,15 +828,22 @@ static int load_flat_shared_library(int id, struct lib_info *libs)
+ 	if (IS_ERR(bprm.file))
+ 		return res;
+ 
++	bprm.cred = prepare_exec_creds();
++	res = -ENOMEM;
++	if (!bprm.cred)
++		goto out;
++
+ 	res = prepare_binprm(&bprm);
+ 
+ 	if (res <= (unsigned long)-4096)
+ 		res = load_flat_file(&bprm, libs, id, NULL);
+-	if (bprm.file) {
+-		allow_write_access(bprm.file);
+-		fput(bprm.file);
+-		bprm.file = NULL;
+-	}
++
++	abort_creds(bprm.cred);
++
++out:
++	allow_write_access(bprm.file);
++	fput(bprm.file);
++
+ 	return(res);
+ }
+ 

Modified: dists/sid/linux-2.6/debian/patches/series/6
==============================================================================
--- dists/sid/linux-2.6/debian/patches/series/6	Fri Aug 14 22:08:17 2009	(r14108)
+++ dists/sid/linux-2.6/debian/patches/series/6	Fri Aug 14 23:47:02 2009	(r14109)
@@ -1 +1,2 @@
 + bugfix/all/make-sock_sendpage-use-kernel_sendpage.patch
++ bugfix/all/flat-fix-uninitialized-ptr-with-shared-libs.patch



More information about the Kernel-svn-changes mailing list