* please see the file GPL in the top level source directory.
*/
-#if HAVE_CONFIG_H
-# include "config.h"
-#endif
-
#include <lib-lib/lib-lib.h>
#include <lib-mime/mime.h>
+#include <lib-sys/unix.h>
#include <lib-ui/curses.h>
#include <lib-ui/enter.h>
#include <lib-ui/menu.h>
-#include "mutt.h"
#include "recvattach.h"
#include "pgp.h"
#include "pager.h"
#include "sort.h"
-
-#include <string.h>
-#include <ctype.h>
-#include <stdlib.h>
-#include <unistd.h>
-#include <sys/stat.h>
-#include <sys/wait.h>
-
-#include <locale.h>
-
struct pgp_cache {
char *what;
char *dflt;
case OP_VERIFY_KEY:
- mutt_mktemp (tempfile);
if ((devnull = fopen ("/dev/null", "w")) == NULL) { /* __FOPEN_CHECKED__ */
mutt_perror (_("Can't open /dev/null"));
break;
}
- if ((fp = safe_fopen (tempfile, "w")) == NULL) {
- fclose (devnull);
+
+ fp = m_tempfile (tempfile, sizeof(tempfile), NONULL(Tempdir), NULL);
+ if (!fp) {
+ m_fclose(&devnull);
mutt_perror (_("Can't create temporary file"));
break;
mutt_perror (_("Can't create filter"));
unlink (tempfile);
- fclose (fp);
- fclose (devnull);
+ m_fclose(&fp);
+ m_fclose(&devnull);
}
mutt_wait_filter (thepid);
- fclose (fp);
- fclose (devnull);
+ m_fclose(&fp);
+ m_fclose(&devnull);
mutt_clear_error ();
snprintf (cmd, sizeof (cmd), _("Key ID: 0x%s"),
pgp_keyid (pgp_principal_key
pgp_free_key (&key);
if (!tempf) {
- mutt_mktemp (tempfb);
+ tempfp = m_tempfile (tempfb, sizeof(tempfb), NONULL(Tempdir), NULL);
tempf = tempfb;
+ } else {
+ tempfp = safe_fopen(tempf, "a");
}
- if ((tempfp = safe_fopen (tempf, tempf == tempfb ? "w" : "a")) == NULL) {
+ if (!tempfp) {
mutt_perror (_("Can't create temporary file"));
-
return NULL;
}
if ((devnull = fopen ("/dev/null", "w")) == NULL) { /* __FOPEN_CHECKED__ */
mutt_perror (_("Can't open /dev/null"));
- fclose (tempfp);
+ m_fclose(&tempfp);
if (tempf == tempfb)
unlink (tempf);
return NULL;
mutt_perror (_("Can't create filter"));
unlink (tempf);
- fclose (tempfp);
- fclose (devnull);
+ m_fclose(&tempfp);
+ m_fclose(&devnull);
return NULL;
}
mutt_wait_filter (thepid);
- fclose (tempfp);
- fclose (devnull);
+ m_fclose(&tempfp);
+ m_fclose(&devnull);
att = body_new();
att->filename = m_strdup(tempf);
return NULL;
}
-pgp_key_t pgp_getkeybystr (char *p, short abilities, pgp_ring_t keyring)
+pgp_key_t pgp_getkeybystr (const char *p, short abilities, pgp_ring_t keyring)
{
string_list_t *hints = NULL;
pgp_key_t keys;