Tim Waugh 230343
diff -up foomatic-filters-4.0.8/foomaticrip.c.CVE-2011-2924 foomatic-filters-4.0.8/foomaticrip.c
Tim Waugh 230343
--- foomatic-filters-4.0.8/foomaticrip.c.CVE-2011-2924	2011-08-18 16:27:57.277636643 +0100
Tim Waugh 230343
+++ foomatic-filters-4.0.8/foomaticrip.c	2011-08-18 16:33:37.680136675 +0100
Tim Waugh 230343
@@ -1188,9 +1188,13 @@ int main(int argc, char** argv)
Tim Waugh 230343
     if (arglist_remove_flag(arglist, "--debug"))
Tim Waugh 230343
         debug = 1;
Tim Waugh 230343
 
Tim Waugh 230343
-    if (debug)
Tim Waugh 230343
-        logh = fopen(LOG_FILE ".log", "w"); /* insecure, use for debugging only */
Tim Waugh 230343
-    else if (quiet && !verbose)
Tim Waugh 230343
+    if (debug) {
Tim Waugh 230343
+	int fd = mkstemp (LOG_FILE "-XXXXXX.log");
Tim Waugh 230343
+	if (fd != -1)
Tim Waugh 230343
+	    logh = fdopen(fd, "w");
Tim Waugh 230343
+	else
Tim Waugh 230343
+	    logh = stderr;
Tim Waugh 230343
+    } else if (quiet && !verbose)
Tim Waugh 230343
         logh = NULL; /* Quiet mode, do not log */
Tim Waugh 230343
     else
Tim Waugh 230343
         logh = stderr; /* Default: log to stderr */
Tim Waugh ffe393
diff -up foomatic-filters-4.0.8/renderer.c.CVE-2011-2924 foomatic-filters-4.0.8/renderer.c
Tim Waugh ffe393
--- foomatic-filters-4.0.8/renderer.c.CVE-2011-2924	2011-07-25 10:50:57.000000000 +0100
Tim Waugh 230343
+++ foomatic-filters-4.0.8/renderer.c	2011-08-18 14:36:14.120153309 +0100
Tim Waugh ffe393
@@ -434,7 +434,7 @@ int exec_kid3(FILE *in, FILE *out, void 
Tim Waugh ffe393
         }
Tim Waugh ffe393
 
Tim Waugh ffe393
         /* Save the data supposed to be fed into the renderer also into a file*/
Tim Waugh ffe393
-        dstrprepend(commandline, "tee -a " LOG_FILE ".ps | ( ");
Tim Waugh ffe393
+        dstrprepend(commandline, "tee $(mktemp " LOG_FILE "-XXXXXX.ps) | ( ");
Tim Waugh ffe393
         dstrcat(commandline, ")");
Tim Waugh ffe393
     }
Tim Waugh ffe393