]> granicus.if.org Git - neomutt/commitdiff
open attachments in read-only mode
authorAntonio Radici <antonio@dyne.org>
Tue, 23 Aug 2016 18:21:37 +0000 (20:21 +0200)
committerRichard Russon <rich@flatcap.org>
Sun, 25 Jun 2017 12:41:12 +0000 (13:41 +0100)
Fixes #647
Debian BTS 528233
Mutt trac #3261

attach.c

index c026b26ee6d5ce2f9f5312c6a87a6150ff35b719..e10f0739bb5edfd82e9e67cc4826e8fadf03419e 100644 (file)
--- a/attach.c
+++ b/attach.c
@@ -414,6 +414,7 @@ int mutt_view_attachment(FILE *fp, struct Body *a, int flag, struct Header *hdr,
       FREE(&fname);
       if (mutt_save_attachment(fp, a, tempfile, 0, NULL) == -1)
         goto return_error;
+      chmod(tempfile, 0400);
     }
 
     use_pipe = rfc1524_expand_command(a, tempfile, type, command, sizeof(command));
@@ -585,7 +586,11 @@ return_error:
   if (entry)
     rfc1524_free_entry(&entry);
   if (fp && tempfile[0])
+  {
+    /* Restore write permission so mutt_unlink can open the file for writing */
+    chmod(tempfile, 0600);
     mutt_unlink(tempfile);
+  }
   else if (unlink_tempfile)
     unlink(tempfile);