fix segfault when gpg is not present.
[apps/madmutt.git] / send.c
diff --git a/send.c b/send.c
index 3bddf4e..91ed81b 100644 (file)
--- a/send.c
+++ b/send.c
@@ -19,7 +19,7 @@
 #include "alias.h"
 #include "keymap.h"
 #include "copy.h"
-#include <lib-crypt/crypt.h>
+#include "crypt.h"
 #include "mutt_idna.h"
 #include "attach.h"
 
@@ -97,7 +97,7 @@ static void append_signature (FILE * f)
     fprintf (f, "\n%s", SignOffString);
   }
 
-  if (tmpfp = mutt_open_read(NONULL(MAlias.signature), &thepid)) {
+  if ((tmpfp = mutt_open_read(NONULL(MAlias.signature), &thepid))) {
     if (option (OPTSIGDASHES))
       fputs ("\n-- \n", f);
     else if (SignOffString)
@@ -449,11 +449,6 @@ static int include_forward (CONTEXT * ctx, HEADER * cur, FILE * out)
   mutt_parse_mime_message (ctx, cur);
   mutt_message_hook (ctx, cur, M_MESSAGEHOOK);
 
-  if ((cur->security & ENCRYPT) && option (OPTFORWDECODE)) {
-    /* make sure we have the user's passphrase before proceeding... */
-    crypt_valid_passphrase (cur->security);
-  }
-
   mutt_forward_intro (out, cur);
 
   if (option (OPTFORWDECODE)) {
@@ -498,11 +493,6 @@ static int include_reply (CONTEXT * ctx, HEADER * cur, FILE * out)
   int cmflags = M_CM_PREFIX | M_CM_DECODE | M_CM_CHARCONV | M_CM_REPLYING;
   int chflags = CH_DECODE;
 
-  if ((cur->security & ENCRYPT)) {
-    /* make sure we have the user's passphrase before proceeding... */
-    crypt_valid_passphrase (cur->security);
-  }
-
   mutt_parse_mime_message (ctx, cur);
   mutt_message_hook (ctx, cur, M_MESSAGEHOOK);
 
@@ -910,15 +900,6 @@ static int generate_body (FILE * tempfp,        /* stream for outgoing message *
     else if (i == -1)
       return -1;
   }
-  else if (flags & SENDKEY) {
-    BODY *btmp;
-
-    if ((btmp = crypt_pgp_make_key_attachment (NULL)) == NULL)
-      return -1;
-
-    btmp->next = msg->content;
-    msg->content = btmp;
-  }
 
   mutt_clear_error ();
 
@@ -1220,7 +1201,7 @@ int ci_send_message (int flags, /* send mode */
     address_list_wipe(&msg->env->from);
   }
 
-  if (!(flags & (SENDKEY | SENDPOSTPONED | SENDRESEND))) {
+  if (!(flags & (SENDPOSTPONED | SENDRESEND))) {
     pbody = body_new();
     pbody->next = msg->content; /* don't kill command-line attachments */
     msg->content = pbody;
@@ -1354,8 +1335,7 @@ int ci_send_message (int flags, /* send mode */
         && generate_body (tempfp, msg, flags, ctx, cur) == -1)
       goto cleanup;
 
-    if (!(flags & SENDKEY))
-      append_signature (tempfp);
+    append_signature (tempfp);
 
     /* 
      * this wants to be done _after_ generate_body, so message-hooks
@@ -1373,12 +1353,6 @@ int ci_send_message (int flags, /* send mode */
     if (option (OPTCRYPTREPLYSIGNENCRYPTED) && cur
         && (cur->security & ENCRYPT))
       msg->security |= SIGN;
-    if (msg->security & (ENCRYPT | SIGN)) {
-      if (option (OPTPGPAUTOINLINE))
-        msg->security |= INLINE;
-      if (option (OPTPGPREPLYINLINE) && cur && (cur->security & INLINE))
-        msg->security |= INLINE;
-    }
 
     if (msg->security) {
       /* 
@@ -1430,8 +1404,7 @@ int ci_send_message (int flags, /* send mode */
       && !(flags & (SENDRESEND | SENDPOSTPONED)))
     msg->env->from->personal = m_strdup(Realname);
 
-  if (!(flags & SENDKEY))
-    m_fclose(&tempfp);
+  m_fclose(&tempfp);
 
   if (!(flags & SENDBATCH)) {
     struct stat st;
@@ -1449,11 +1422,11 @@ int ci_send_message (int flags, /* send mode */
      *    setting of $forward_edit because the user probably needs to add the
      *    recipients.
      */
-    if (!(flags & SENDKEY) &&
-        ((flags & SENDFORWARD) == 0 ||
+    if (((flags & SENDFORWARD) == 0 ||
          (option (OPTEDITHDRS) && option (OPTAUTOEDIT)) ||
          query_quadoption (OPT_FORWEDIT,
-                           _("Edit forwarded message?")) == M_YES)) {
+                           _("Edit forwarded message?")) == M_YES))
+    {
       /* If the this isn't a text message, look for a mailcap edit command */
       if (rfc1524_mailcap_isneeded(msg->content)) {
         if (!mutt_edit_attachment (msg->content))
@@ -1479,7 +1452,7 @@ int ci_send_message (int flags, /* send mode */
       mutt_message_hook (NULL, msg, M_SEND2HOOK);
     }
 
-    if (!(flags & (SENDPOSTPONED | SENDFORWARD | SENDKEY | SENDRESEND))) {
+    if (!(flags & (SENDPOSTPONED | SENDFORWARD | SENDRESEND))) {
       if (stat (msg->content->filename, &st) == 0) {
         /* if the file was not modified, bail out now */
         if (mtime == st.st_mtime && !msg->content->next &&