Blob Blame History Raw
diff -up linux-2.6.32.noarch/fs/exec.c.orig linux-2.6.32.noarch/fs/exec.c
--- linux-2.6.32.noarch/fs/exec.c.orig	2010-02-22 12:40:06.000000000 -0500
+++ linux-2.6.32.noarch/fs/exec.c	2010-02-22 12:48:34.000000000 -0500
@@ -1973,8 +1973,9 @@ void do_coredump(long signr, int exit_co
 	/*
 	 * Dont allow local users get cute and trick others to coredump
 	 * into their pre-created files:
+	 * Note this isn't relevant to pipes
 	 */
-	if (inode->i_uid != current_fsuid())
+	if (!ispipe && (inode->i_uid != current_fsuid()))
 		goto close_fail;
 	if (!cprm.file->f_op)
 		goto close_fail;