]> granicus.if.org Git - neomutt/commitdiff
Add rfc2047_encode_envelope helper
authorKevin McCarthy <kevin@8t8.us>
Sun, 16 Dec 2018 22:23:54 +0000 (14:23 -0800)
committerRichard Russon <rich@flatcap.org>
Mon, 7 Jan 2019 15:09:41 +0000 (15:09 +0000)
Co-authored-by: Richard Russon <rich@flatcap.org>
email/rfc2047.c
email/rfc2047.h
sendlib.c

index 722c4be66e303a649e65fd1537d666305aaba74e..8b4a6ae4137835ef9988b895cf2bf81bb3e0b90f 100644 (file)
@@ -797,3 +797,20 @@ void rfc2047_decode_envelope(struct Envelope *env)
   rfc2047_decode(&env->x_label);
   rfc2047_decode(&env->subject);
 }
+
+/**
+ * rfc2047_encode_envelope - Encode the fields of an Envelope
+ * @param env Envelope
+ */
+void rfc2047_encode_envelope(struct Envelope *env)
+{
+  rfc2047_encode_addrlist(env->from, "From");
+  rfc2047_encode_addrlist(env->to, "To");
+  rfc2047_encode_addrlist(env->cc, "Cc");
+  rfc2047_encode_addrlist(env->bcc, "Bcc");
+  rfc2047_encode_addrlist(env->reply_to, "Reply-To");
+  rfc2047_encode_addrlist(env->mail_followup_to, "Mail-Followup-To");
+  rfc2047_encode_addrlist(env->sender, "Sender");
+  rfc2047_encode(&env->x_label, NULL, sizeof("X-Label:"), SendCharset);
+  rfc2047_encode(&env->subject, NULL, sizeof("Subject:"), SendCharset);
+}
index d264dbf1bbf098313736efadcb2af1dfcfde2215..0a2d29a690f661a2d927c53e9eb9935b374ab2e7 100644 (file)
@@ -34,5 +34,6 @@ void rfc2047_encode(char **pd, const char *specials, int col, const char *charse
 void rfc2047_decode_addrlist(struct Address *a);
 void rfc2047_encode_addrlist(struct Address *addr, const char *tag);
 void rfc2047_decode_envelope(struct Envelope *env);
+void rfc2047_encode_envelope(struct Envelope *env);
 
 #endif /* MUTT_EMAIL_RFC2047_H */
index 785c2d9b8a3f96d645f7fcd93ce8be3f50ddf1b4..4a3b182b7275df6b20b72d550abf1a5b0d87491a 100644 (file)
--- a/sendlib.c
+++ b/sendlib.c
@@ -2907,20 +2907,7 @@ void mutt_prepare_envelope(struct Envelope *env, bool final)
   }
 
   /* Take care of 8-bit => 7-bit conversion. */
-  rfc2047_encode_addrlist(env->to, "To");
-  rfc2047_encode_addrlist(env->cc, "Cc");
-  rfc2047_encode_addrlist(env->bcc, "Bcc");
-  rfc2047_encode_addrlist(env->from, "From");
-  rfc2047_encode_addrlist(env->mail_followup_to, "Mail-Followup-To");
-  rfc2047_encode_addrlist(env->reply_to, "Reply-To");
-
-  if (env->subject)
-#ifdef USE_NNTP
-    if (!OptNewsSend || MimeSubject)
-#endif
-    {
-      rfc2047_encode(&env->subject, NULL, sizeof("Subject:"), SendCharset);
-    }
+  rfc2047_encode_envelope(env);
   encode_headers(&env->userhdrs);
 }