]> code.citadel.org Git - citadel.git/blobdiff - citadel/tools.c
* Numerous warning fixes and cleanups for compile on Linux for IBM S/390
[citadel.git] / citadel / tools.c
index d9bdb8991dbd922bac0b7408c2d0cd0797d5c8f8..049987bd4ea4f901b1aee0561059b68fbac2c1e9 100644 (file)
@@ -10,6 +10,8 @@
 #endif
 
 #include "sysdep.h"
+#include <stdlib.h>
+#include <unistd.h>
 #include <stdio.h>
 #include <stdlib.h>
 #include <ctype.h>
@@ -634,3 +636,33 @@ void urlesc(char *outbuf, char *strbuf)
 }
 
 
+/*
+ * Citadelian replacement for tmpnam()
+ */
+char *CtdlTempFileName(char *prefix1, int prefix2) {
+       static int seq = 0;
+       static char buf[SIZ];
+
+       sprintf(buf, "/tmp/Citadel-%s-%d-%04x-%04x",
+               prefix1,
+               prefix2,
+               (int)getpid(),
+               ++seq
+       );
+       
+       return(buf);
+}
+
+
+/*
+ * Citadelian replacement for tmpfile()
+ */
+FILE *CtdlTempFile(void) {
+       char filename[SIZ];
+       FILE *fp;
+
+       strcpy(filename, tmpnam(NULL));
+       fp = fopen(filename, "w+b");
+       unlink(filename);
+       return(fp);
+}