Nico Golde:
authornion <nion@e385b8ad-14ed-0310-8656-cc95a2468c6d>
Tue, 31 May 2005 13:39:54 +0000 (13:39 +0000)
committernion <nion@e385b8ad-14ed-0310-8656-cc95a2468c6d>
Tue, 31 May 2005 13:39:54 +0000 (13:39 +0000)
- secured temporary file creation

git-svn-id: svn://svn.berlios.de/mutt-ng/trunk@307 e385b8ad-14ed-0310-8656-cc95a2468c6d

muttlib.c

index a6ee522..f4b5e27 100644 (file)
--- a/muttlib.c
+++ b/muttlib.c
@@ -647,8 +647,10 @@ void mutt_free_envelope (ENVELOPE ** p)
 
 void _mutt_mktemp (char *s, const char *src, int line)
 {
-  snprintf (s, _POSIX_PATH_MAX, "%s/muttng-%s-%d-%d-%d", NONULL (Tempdir),
-            NONULL (Hostname), (int) getuid (), (int) getpid (), Counter++);
+
+  snprintf (s, _POSIX_PATH_MAX, "%s/muttng-%s-%d-%d-%d-%x", NONULL (Tempdir),
+            NONULL (Hostname), (int) getuid (), (int) getpid (), Counter++, 
+            (unsigned int) rand());
   debug_print (1, ("%s:%d: mutt_mktemp returns \"%s\".\n", src, line, s));
   unlink (s);
 }