Remove RCS keywords, since they no longer work after git migration.
[mmh] / uip / rcvstore.c
index 4e14afb..3131076 100644 (file)
@@ -2,8 +2,6 @@
 /*
  * rcvstore.c -- asynchronously add mail to a folder
  *
- * $Id$
- *
  * This code is Copyright (c) 2002, by the authors of nmh.  See the
  * COPYRIGHT file in the root directory of the nmh distribution for
  * complete copyright information.
@@ -48,6 +46,7 @@ static struct swit switches[] = {
  */
 static char *tmpfilenam = NULL;
 
+static void unlink_done(int) NORETURN;
 
 int
 main (int argc, char **argv)
@@ -60,6 +59,8 @@ main (int argc, char **argv)
     struct msgs *mp;
     struct stat st;
 
+    done=unlink_done;
+
 #ifdef LOCALE
     setlocale(LC_ALL, "");
 #endif
@@ -170,9 +171,10 @@ main (int argc, char **argv)
     SIGNAL (SIGTERM, SIG_IGN);
 
     /* create a temporary file */
-    tmpfilenam = m_scratch ("", invo_name);
-    if ((fd = creat (tmpfilenam, m_gmprot ())) == NOTOK)
-       adios (tmpfilenam, "unable to create");
+    tmpfilenam = m_mktemp (invo_name, &fd, NULL);
+    if (tmpfilenam == NULL) {
+       adios ("rcvstore", "unable to create temporary file");
+    }
     chmod (tmpfilenam, m_gmprot());
 
     /* copy the message from stdin into temp file */
@@ -222,17 +224,17 @@ main (int argc, char **argv)
     unlink (tmpfilenam);       /* remove temporary file                  */
     tmpfilenam = NULL;
 
-    return done (0);
+    done (0);
+    return 1;
 }
 
 /*
  * Clean up and exit
  */
-int
-done(int status)
+static void
+unlink_done(int status)
 {
     if (tmpfilenam && *tmpfilenam)
        unlink (tmpfilenam);
     exit (status);
-    return 1;  /* dead code to satisfy the compiler */
 }