Use m_tempfile instead of mutt_mktemp
authorJulien Danjou <julien@danjou.info>
Fri, 24 Nov 2006 22:29:14 +0000 (23:29 +0100)
committerPierre Habouzit <madcoder@debian.org>
Fri, 24 Nov 2006 22:38:40 +0000 (23:38 +0100)
Signed-off-by: Julien Danjou <julien@danjou.info>
Signed-off-by: Pierre Habouzit <madcoder@debian.org>
lib-crypt/pgp.c

index ab978d0..8b53ffa 100644 (file)
@@ -266,8 +266,8 @@ int pgp_application_pgp_handler (BODY * m, STATE * s)
       have_any_sigs = have_any_sigs || (clearsign && (s->flags & M_VERIFY));
 
       /* Copy PGP material to temporary file */
-      mutt_mktemp (tmpfname);
-      if ((tmpfp = safe_fopen (tmpfname, "w+")) == NULL) {
+      tmpfp = m_tempfile(tmpfname, sizeof(tmpfname), NONULL(Tempdir), NULL);
+      if (tmpfp == NULL) {
         mutt_perror (tmpfname);
         return (-1);
       }
@@ -295,9 +295,9 @@ int pgp_application_pgp_handler (BODY * m, STATE * s)
 
       /* Invoke PGP if needed */
       if (!clearsign || (s->flags & M_VERIFY)) {
-        mutt_mktemp (outfile);
-        if ((pgpout = safe_fopen (outfile, "w+")) == NULL) {
-          mutt_perror (tmpfname);
+        pgpout = m_tempfile(outfile, sizeof(outfile), NONULL(Tempdir), NULL);
+        if (pgpout == NULL) {
+          mutt_perror (outfile);
           return (-1);
         }
 
@@ -547,8 +547,8 @@ int pgp_verify_one (BODY * sigbdy, STATE * s, const char *tempfile)
   mutt_copy_bytes (s->fpin, fp, sigbdy->length);
   fclose (fp);
 
-  mutt_mktemp (pgperrfile);
-  if (!(pgperr = safe_fopen (pgperrfile, "w+"))) {
+  pgperr = m_tempfile(pgperrfile, sizeof(pgperrfile), NONULL(Tempdir), NULL);
+  if (pgperr == NULL) {
     mutt_perror (pgperrfile);
     unlink (sigfile);
     return -1;
@@ -593,8 +593,8 @@ static void pgp_extract_keys_from_attachment (FILE * fp, BODY * top)
   FILE *tempfp;
   char tempfname[_POSIX_PATH_MAX];
 
-  mutt_mktemp (tempfname);
-  if (!(tempfp = safe_fopen (tempfname, "w"))) {
+  tempfp = m_tempfile(tempfname, sizeof(tempfname), NONULL(Tempdir), NULL);
+  if (tempfp == NULL) {
     mutt_perror (tempfname);
     return;
   }
@@ -648,15 +648,15 @@ BODY *pgp_decrypt_part (BODY * a, STATE * s, FILE * fpout, BODY * p)
   pid_t thepid;
   int rv;
 
-  mutt_mktemp (pgperrfile);
-  if ((pgperr = safe_fopen (pgperrfile, "w+")) == NULL) {
+  pgperr = m_tempfile(pgperrfile, sizeof(pgperrfile), NONULL(Tempdir), NULL);
+  if (pgperr == NULL) {
     mutt_perror (pgperrfile);
     return NULL;
   }
   unlink (pgperrfile);
 
-  mutt_mktemp (pgptmpfile);
-  if ((pgptmp = safe_fopen (pgptmpfile, "w")) == NULL) {
+  pgptmp = m_tempfile(pgptmpfile, sizeof(pgptmpfile), NONULL(Tempdir), NULL);
+  if (pgptmp == NULL) {
     mutt_perror (pgptmpfile);
     fclose (pgperr);
     return NULL;
@@ -756,8 +756,8 @@ int pgp_decrypt_mime (FILE * fpin, FILE ** fpout, BODY * b, BODY ** cur)
 
   p_clear(&s, 1);
   s.fpin = fpin;
-  mutt_mktemp (tempfile);
-  if ((*fpout = safe_fopen (tempfile, "w+")) == NULL) {
+  *fpout = m_tempfile(tempfile, sizeof(tempfile), NONULL(Tempdir), NULL);
+  if (*fpout == NULL) {
     mutt_perror (tempfile);
     return (-1);
   }
@@ -797,8 +797,8 @@ int pgp_encrypted_handler (BODY * a, STATE * s)
    */
   a = a->next;
 
-  mutt_mktemp (tempfile);
-  if ((fpout = safe_fopen (tempfile, "w+")) == NULL) {
+  fpout = m_tempfile(tempfile, sizeof(tempfile), NONULL(Tempdir), NULL);
+  if (fpout == NULL) {
     if (s->flags & M_DISPLAY)
       state_attach_puts (_
                          ("[-- Error: could not create temporary file! --]\n"),
@@ -867,13 +867,13 @@ BODY *pgp_sign_message (BODY * a)
 
   convert_to_7bit (a);          /* Signed data _must_ be in 7-bit format. */
 
-  mutt_mktemp (sigfile);
-  if ((fp = safe_fopen (sigfile, "w")) == NULL) {
+  fp = m_tempfile(sigfile, sizeof(sigfile), NONULL(Tempdir), NULL);
+  if (fp == NULL) {
     return (NULL);
   }
 
-  mutt_mktemp (signedfile);
-  if ((sfp = safe_fopen (signedfile, "w")) == NULL) {
+  sfp = m_tempfile(signedfile, sizeof(signedfile), NONULL(Tempdir), NULL);
+  if (sfp == NULL) {
     mutt_perror (signedfile);
     fclose (fp);
     unlink (sigfile);
@@ -1113,27 +1113,28 @@ BODY *pgp_encrypt_message (BODY * a, char *keylist, int sign)
   int empty = 0;
   pid_t thepid;
 
-  mutt_mktemp (tempfile);
-  if ((fpout = safe_fopen (tempfile, "w+")) == NULL) {
+  fpout = m_tempfile(tempfile, sizeof(tempfile), NONULL(Tempdir), NULL);
+  if (fpout == NULL) {
     mutt_perror (tempfile);
     return (NULL);
   }
 
-  mutt_mktemp (pgperrfile);
-  if ((pgperr = safe_fopen (pgperrfile, "w+")) == NULL) {
+  pgperr = m_tempfile(pgperrfile, sizeof(pgperrfile), NONULL(Tempdir), NULL);
+  if (pgperr == NULL) {
     mutt_perror (pgperrfile);
-    unlink (tempfile);
     fclose (fpout);
+    unlink (tempfile);
     return NULL;
   }
   unlink (pgperrfile);
 
-  mutt_mktemp (pgpinfile);
-  if ((fptmp = safe_fopen (pgpinfile, "w")) == NULL) {
+  fptmp = m_tempfile(pgpinfile, sizeof(pgpinfile), NONULL(Tempdir), NULL);
+  if (fptmp == NULL) {
     mutt_perror (pgpinfile);
-    unlink (tempfile);
     fclose (fpout);
+    unlink (tempfile);
     fclose (pgperr);
+    unlink (pgperrfile);
     return NULL;
   }
 
@@ -1251,8 +1252,8 @@ BODY *pgp_traditional_encryptsign (BODY * a, int flags, char *keylist)
     return NULL;
   }
 
-  mutt_mktemp (pgpinfile);
-  if ((pgpin = safe_fopen (pgpinfile, "w")) == NULL) {
+  pgpin = m_tempfile(pgpinfile, sizeof(pgpinfile), NONULL(Tempdir), NULL);
+  if (pgpin == NULL) {
     mutt_perror (pgpinfile);
     fclose (fp);
     return NULL;
@@ -1292,11 +1293,11 @@ BODY *pgp_traditional_encryptsign (BODY * a, int flags, char *keylist)
   safe_fclose (&fp);
   fclose (pgpin);
 
-  mutt_mktemp (pgpoutfile);
-  mutt_mktemp (pgperrfile);
-  if ((pgpout = safe_fopen (pgpoutfile, "w+")) == NULL ||
-      (pgperr = safe_fopen (pgperrfile, "w+")) == NULL) {
+  pgpout = m_tempfile(pgpoutfile, sizeof(pgpoutfile), NONULL(Tempdir), NULL);
+  pgperr = m_tempfile(pgperrfile, sizeof(pgperrfile), NONULL(Tempdir), NULL);
+  if (pgpout == NULL || pgperr == NULL) {
     mutt_perror (pgpout ? pgperrfile : pgpoutfile);
+    fclose (pgpin);
     unlink (pgpinfile);
     if (pgpout) {
       fclose (pgpout);