X-Git-Url: http://git.madism.org/?p=apps%2Fmadmutt.git;a=blobdiff_plain;f=lib-crypt%2Fpgp.c;h=3dd37d5589c7e29aebd7aefc6b97d373ceb29f19;hp=3c3e0f7bd43412c8e8c57b1543a003effa6523a7;hb=0ff1c0b36260c231b7d63ffc88646505e0ea11de;hpb=928ca0d87eb15bfa4c150abdadadaf3b177f95bd diff --git a/lib-crypt/pgp.c b/lib-crypt/pgp.c index 3c3e0f7..3dd37d5 100644 --- a/lib-crypt/pgp.c +++ b/lib-crypt/pgp.c @@ -454,6 +454,7 @@ static int pgp_check_traditional_one_body (FILE * fp, BODY * b, char tempfile[_POSIX_PATH_MAX]; char buf[HUGE_STRING]; FILE *tfp; + int tempfd; short sgn = 0; short enc = 0; @@ -465,13 +466,14 @@ static int pgp_check_traditional_one_body (FILE * fp, BODY * b, if (tagged_only && !b->tagged) return 0; - mutt_mktemp (tempfile); - if (mutt_decode_save_attachment (fp, b, tempfile, 0, 0) != 0) { + tempfd = m_tempfd(tempfile, sizeof(tempfile), NONULL(Tempdir), NULL); + + if (mutt_decode_save_attachment (fp, b, tempfd, 0) != 0) { unlink (tempfile); return 0; } - if ((tfp = fopen (tempfile, "r")) == NULL) { + if ((tfp = fdopen (tempfd, "r")) == NULL) { unlink (tempfile); return 0; } @@ -695,7 +697,7 @@ BODY *pgp_decrypt_part (BODY * a, STATE * s, FILE * fpout, BODY * p) while (fgets (buf, sizeof (buf) - 1, pgpout) != NULL) { len = m_strlen(buf); if (len > 1 && buf[len - 2] == '\r') - strcpy (buf + len - 2, "\n"); /* __STRCPY_CHECKED__ */ + m_strcpy(buf + len - 2, len - 2, "\n"); fputs (buf, fpout); } @@ -1022,8 +1024,7 @@ char *pgp_findKeys (address_t * to, address_t * cc, address_t * bcc) last = &((*last)->next); } - if (fqdn) - rfc822_qualify (tmp, fqdn); + rfc822_qualify (tmp, fqdn); address_list_uniq(tmp); @@ -1048,8 +1049,7 @@ char *pgp_findKeys (address_t * to, address_t * cc, address_t * bcc) /* check for e-mail address */ if ((t = strchr (keyID, '@')) && (addr = rfc822_parse_adrlist (NULL, keyID))) { - if (fqdn) - rfc822_qualify (addr, fqdn); + rfc822_qualify (addr, fqdn); q = addr; } else @@ -1087,7 +1087,7 @@ char *pgp_findKeys (address_t * to, address_t * cc, address_t * bcc) bypass_selection: keylist_size += m_strlen(keyID) + 4; p_realloc(&keylist, keylist_size); - sprintf (keylist + keylist_used, "%s0x%s", keylist_used ? " " : "", /* __SPRINTF_CHECKED__ */ + sprintf (keylist + keylist_used, "%s0x%s", keylist_used ? " " : "", keyID); keylist_used = m_strlen(keylist); @@ -1388,7 +1388,7 @@ BODY *pgp_traditional_encryptsign (BODY * a, int flags, char *keylist) int pgp_send_menu (HEADER * msg, int *redraw) { pgp_key_t p; - char input_signas[SHORT_STRING]; + char input_signas[STRING]; char prompt[LONG_STRING];