X-Git-Url: http://git.madism.org/?p=apps%2Fmadmutt.git;a=blobdiff_plain;f=commands.c;h=34de35e590817169d966a18a2794debe64ab7135;hp=3a53ac7006f1e11947dbbddc343c713a4144bc26;hb=d5d56308b49c3f157a17125415312f0c13e1e25b;hpb=238b70e39b78f585c586bd51aef41988b3cc73d1 diff --git a/commands.c b/commands.c index 3a53ac7..34de35e 100644 --- a/commands.c +++ b/commands.c @@ -17,26 +17,25 @@ #include #include +#include + #include "mutt.h" #include "enter.h" #include "recvattach.h" #include "mutt_curses.h" #include "mutt_menu.h" -#include "mime.h" #include "sort.h" #include "copy.h" #include "mx.h" #include "pager.h" -#include "mutt_crypt.h" +#include #include "mutt_idna.h" #include "rfc1524.h" #include #include #include -#ifdef USE_IMAP -#include "imap.h" -#endif +#include #ifdef BUFFY_SIZE #include "buffy.h" @@ -53,8 +52,6 @@ #include #include -extern char *ReleaseDate; - /* The folder the user last saved to. Used by ci_save_message() */ static char LastSaveFolder[_POSIX_PATH_MAX] = ""; @@ -109,7 +106,7 @@ int mutt_display_message (HEADER * cur) if (res != -1) { /* see if crytpo is needed for this message. if so, we should exit curses */ - if (WithCrypto && cur->security) { + if (cur->security) { if (cur->security & ENCRYPT) { if (cur->security & APPLICATION_SMIME) crypt_smime_getkeys (cur->env); @@ -174,21 +171,18 @@ int mutt_display_message (HEADER * cur) safe_fclose (&fpfilterout); /* XXX - check result? */ - if (WithCrypto) { - /* update crypto information for this message */ - cur->security &= ~(GOODSIGN|BADSIGN); - cur->security |= crypt_query (cur->content); + /* update crypto information for this message */ + cur->security &= ~(GOODSIGN|BADSIGN); + cur->security |= crypt_query (cur->content); - /* Remove color cache for this message, in case there - are color patterns for both ~g and ~V */ - cur->pair = 0; - } + /* Remove color cache for this message, in case there + are color patterns for both ~g and ~V */ + cur->pair = 0; if (builtin) { pager_t info; - if (WithCrypto - && (cur->security & APPLICATION_SMIME) && (cmflags & M_CM_VERIFY)) { + if ((cur->security & APPLICATION_SMIME) && (cmflags & M_CM_VERIFY)) { if (cur->security & GOODSIGN) { if (!crypt_smime_verify_sender (cur)) mutt_message (_("S/MIME signature successfully verified.")); @@ -202,8 +196,7 @@ int mutt_display_message (HEADER * cur) mutt_error (_("S/MIME signature could NOT be verified.")); } - if (WithCrypto - && (cur->security & APPLICATION_PGP) && (cmflags & M_CM_VERIFY)) { + if ((cur->security & APPLICATION_PGP) && (cmflags & M_CM_VERIFY)) { if (cur->security & GOODSIGN) mutt_message (_("PGP signature successfully verified.")); else if (cur->security & PARTSIGN) @@ -245,7 +238,7 @@ void ci_bounce_message (HEADER * h, int *redraw) { char prompt[SHORT_STRING]; char buf[HUGE_STRING] = { 0 }; - ADDRESS *adr = NULL; + address_t *adr = NULL; char *err = NULL; int rc; @@ -275,7 +268,7 @@ void ci_bounce_message (HEADER * h, int *redraw) if (mutt_addrlist_to_idna (adr, &err) < 0) { mutt_error (_("Bad IDN: '%s'"), err); p_delete(&err); - rfc822_free_address (&adr); + address_delete (&adr); return; } @@ -296,7 +289,7 @@ void ci_bounce_message (HEADER * h, int *redraw) } if (query_quadoption (OPT_BOUNCE, prompt) != M_YES) { - rfc822_free_address (&adr); + address_delete (&adr); CLEARLINE (LINES - 1); mutt_message (h ? _("Message not bounced.") : _("Messages not bounced.")); return; @@ -305,7 +298,7 @@ void ci_bounce_message (HEADER * h, int *redraw) CLEARLINE (LINES - 1); rc = mutt_bounce_message (NULL, h, adr); - rfc822_free_address (&adr); + address_delete (&adr); /* If no error, or background, display message. */ if ((rc == 0) || (rc == S_BKG)) mutt_message (h ? _("Message bounced.") : _("Messages bounced.")); @@ -335,7 +328,7 @@ static void pipe_msg (HEADER * h, FILE * fp, int decode, int print) pipe_set_flags (decode, print, &cmflags, &chflags); - if (WithCrypto && decode && h->security & ENCRYPT) { + if (decode && h->security & ENCRYPT) { if (!crypt_valid_passphrase (h->security)) return; endwin (); @@ -368,7 +361,7 @@ static int _mutt_pipe_message(HEADER * h, char *cmd, int decode, int print, mutt_message_hook (Context, h, M_MESSAGEHOOK); - if (WithCrypto && decode) { + if (decode) { mutt_parse_mime_message (Context, h); if (h->security & ENCRYPT && !crypt_valid_passphrase (h->security)) return 1; @@ -387,7 +380,7 @@ static int _mutt_pipe_message(HEADER * h, char *cmd, int decode, int print, } else { /* handle tagged messages */ - if (WithCrypto && decode) { + if (decode) { for (i = 0; i < Context->vcount; i++) if (Context->hdrs[Context->v2r[i]]->tagged) { mutt_message_hook (Context, Context->hdrs[Context->v2r[i]], @@ -597,7 +590,7 @@ void mutt_display_address (ENVELOPE * env) { const char *pfx = NULL; char buf[SHORT_STRING]; - ADDRESS *adr = NULL; + address_t *adr = NULL; adr = mutt_get_address(env, &pfx); @@ -622,17 +615,14 @@ static void set_copy_flags (HEADER * hdr, int decode, int decrypt, *cmflags = 0; *chflags = CH_UPDATE_LEN; - if (WithCrypto && !decode && decrypt && (hdr->security & ENCRYPT)) { - if ((WithCrypto & APPLICATION_PGP) - && mutt_is_multipart_encrypted (hdr->content)) { + if (!decode && decrypt && (hdr->security & ENCRYPT)) { + if (mutt_is_multipart_encrypted (hdr->content)) { *chflags = CH_NONEWLINE | CH_XMIT | CH_MIME; *cmflags = M_CM_DECODE_PGP; } - else if ((WithCrypto & APPLICATION_PGP) - && mutt_is_application_pgp (hdr->content) & ENCRYPT) + else if (mutt_is_application_pgp (hdr->content) & ENCRYPT) decode = 1; - else if ((WithCrypto & APPLICATION_SMIME) - && mutt_is_application_smime (hdr->content) & ENCRYPT) { + else if (mutt_is_application_smime (hdr->content) & ENCRYPT) { *chflags = CH_NONEWLINE | CH_XMIT | CH_MIME; *cmflags = M_CM_DECODE_SMIME; } @@ -703,10 +693,8 @@ int mutt_save_message (HEADER * h, int delete, if (h) { - if (WithCrypto) { - need_passphrase = h->security & ENCRYPT; - app = h->security; - } + need_passphrase = h->security & ENCRYPT; + app = h->security; mutt_message_hook (Context, h, M_MESSAGEHOOK); mutt_default_save (buf, sizeof (buf), h); } @@ -724,10 +712,8 @@ int mutt_save_message (HEADER * h, int delete, if (h) { mutt_message_hook (Context, h, M_MESSAGEHOOK); mutt_default_save (buf, sizeof (buf), h); - if (WithCrypto) { - need_passphrase = h->security & ENCRYPT; - app = h->security; - } + need_passphrase = h->security & ENCRYPT; + app = h->security; h = NULL; } } @@ -760,13 +746,12 @@ int mutt_save_message (HEADER * h, int delete, if (mutt_save_confirm (buf, &st) != 0) return -1; - if (WithCrypto && need_passphrase && (decode || decrypt) + if (need_passphrase && (decode || decrypt) && !crypt_valid_passphrase (app)) return -1; mutt_message (_("Copying to %s..."), buf); -#ifdef USE_IMAP if (Context->magic == M_IMAP && !(decode || decrypt) && mx_get_magic (buf) == M_IMAP) { switch (imap_copy_messages (Context, h, buf, delete)) { /* success */ @@ -781,7 +766,6 @@ int mutt_save_message (HEADER * h, int delete, return -1; } } -#endif if (mx_open_mailbox (buf, M_APPEND, &ctx) != NULL) { if (h) { @@ -860,7 +844,7 @@ void mutt_edit_content_type (HEADER * h, BODY * b, FILE * fp) for (p = b->parameter; p; p = p->next) { l = m_strlen(buf); - rfc822_cat (tmp, sizeof (tmp), p->value, MimeSpecials); + rfc822_strcpy(tmp, sizeof(tmp), p->value, MimeSpecials); snprintf (buf + l, sizeof (buf) - l, "; %s=%s", p->attribute, tmp); } } @@ -870,7 +854,7 @@ void mutt_edit_content_type (HEADER * h, BODY * b, FILE * fp) return; /* clean up previous junk */ - mutt_free_parameter (&b->parameter); + parameter_delete(&b->parameter); p_delete(&b->subtype); mutt_parse_content_type (buf, b); @@ -911,13 +895,13 @@ void mutt_edit_content_type (HEADER * h, BODY * b, FILE * fp) mutt_free_body (&b->parts); if (!mutt_is_message_type (b->type, b->subtype) && b->hdr) { b->hdr->content = NULL; - mutt_free_header (&b->hdr); + header_delete(&b->hdr); } if (fp && (is_multipart (b) || mutt_is_message_type (b->type, b->subtype))) mutt_parse_part (fp, b); - if (WithCrypto && h) { + if (h) { if (h->content == b) h->security = 0;