1999-06-21 19:41:32 +00:00

36 lines
795 B
Plaintext

*** xip/xippkt.c-orig Mon Jun 21 13:37:43 1999
--- xip/xippkt.c Mon Jun 21 13:51:12 1999
***************
*** 962,967 ****
--- 962,979 ----
#define TMP_TEMPLATE "/tmp/xipXXXXXX"
strcpy(fnamebuf,TMP_TEMPLATE);
+
+ #ifdef HAVE_MKDTEMP
+ #define TMP_FILENAME "XXXXXXXXXX"
+
+ /* Wrap the unsafe mktemp() below. */
+ if ((fname = mkdtemp(fnamebuf)) == NULL)
+ return (-ERR_XIP_SUBROUTINE);
+
+ strcat(fnamebuf, "/");
+ strcat(fnamebuf, TMP_FILENAME);
+ #endif
+
if ((fname = mktemp(fnamebuf)) == NULL)
return (-ERR_XIP_SUBROUTINE);
if ((status = pkt_save_raw(xmd->xp->pkt,
***************
*** 1023,1028 ****
--- 1035,1043 ----
status = 0;
end:
unlink(fname);
+ #ifdef HAVE_MKDTEMP
+ rmdir(dirname(fname));
+ #endif
return (status);
}