Hi,
I have written another patch for this problem.
This one changes the behavior of mutt:
- no longer send bcc header to MTA
- save bcc header if write_bcc is true
The patch should apply to an unpacked 1.5.19-4 package.
regards
Stefan
diff --git a/debian/patches/debian-specific/Muttrc
b/debian/patches/debian-specific/Muttrc
index bc8db21..747feb2 100644
--- a/debian/patches/debian-specific/Muttrc
+++ b/debian/patches/debian-specific/Muttrc
@@ -3,9 +3,11 @@
* 2009-01-15 myon: refreshed for mutt-1.5.19; drop our list of ignored headers
in favor of upstream's new unignore list
---- a/doc/Muttrc.head
-+++ b/doc/Muttrc.head
-@@ -12,6 +12,32 @@ unignore from: subject to cc date x-mail
+Index: mutt-1.5.19/doc/Muttrc.head
+===================================================================
+--- mutt-1.5.19.orig/doc/Muttrc.head 2009-05-28 17:55:09.165491420 +0200
++++ mutt-1.5.19/doc/Muttrc.head 2009-05-28 18:02:57.960620539 +0200
+@@ -12,6 +12,31 @@
# Display the fields in this order
hdr_order date from to cc subject
@@ -24,9 +26,8 @@
+# Specifies how to sort messages in the index menu.
+set sort=threads
+
-+# Uncomment if your MTA does not strip Bcc: headers.
-+# (exim4 and postfix strip them, exim(3) does not.)
-+#unset write_bcc
++# Do not write out Bcc headers
++unset write_bcc
+# Postfix and qmail use Delivered-To for detecting loops
+unset bounce_delivered
+
@@ -38,7 +39,7 @@
# imitate the old search-body function
macro index \eb "<search>~b " "search in message bodies"
-@@ -23,7 +49,7 @@ macro index,pager,attach,compose \cb "\
+@@ -23,7 +48,7 @@
"call urlview to extract URLs out of a message"
# Show documentation when pressing F1
@@ -47,7 +48,7 @@
# show the incoming mailboxes list (just like "mutt -y") and back when
pressing "y"
macro index,pager y "<change-folder>?<toggle-mailboxes>" "show incoming
mailboxes list"
-@@ -35,7 +61,7 @@ bind browser y exit
+@@ -35,7 +60,7 @@
# append-hook \\.gz$ "gzip -c %t >> %f"
# If Mutt is unable to determine your site's domain name correctly, you can
@@ -56,7 +57,7 @@
#
# set hostname=cs.hmc.edu
-@@ -101,6 +127,9 @@ attachments +I text/plain
+@@ -101,6 +126,9 @@
attachments -A message/external-body
attachments -I message/external-body
diff --git a/debian/patches/debian-specific/document_debian_defaults
b/debian/patches/debian-specific/document_debian_defaults
index 523c928..d9e6b4e 100644
--- a/debian/patches/debian-specific/document_debian_defaults
+++ b/debian/patches/debian-specific/document_debian_defaults
@@ -64,13 +64,3 @@ only on Debian systems
*/
{ "sort_alias", DT_SORT|DT_SORT_ALIAS, R_NONE, UL &SortAlias,
SORT_ALIAS },
/*
-@@ -3306,6 +3325,9 @@ struct option_t MuttVars[] = {
- ** is set to deliver directly via SMTP (see $$smtp_url), this
- ** option does nothing: mutt will never write out the ``Bcc:'' header
- ** in this case.
-+ ** .pp
-+ ** \fBNote:\fP On Debian systems, exim4 and postfix strip BCC headers by
-+ ** default. The above warning applies to exim3 users, see /etc/Muttrc.
- */
- {"xterm_icon", DT_STR, R_BOTH, UL &XtermIcon, UL "M%?n?AIL&ail?"},
- /*
diff --git a/debian/patches/debian-specific/write_bcc
b/debian/patches/debian-specific/write_bcc
new file mode 100644
index 0000000..065c0dd
--- /dev/null
+++ b/debian/patches/debian-specific/write_bcc
@@ -0,0 +1,93 @@
+Index: sid/headers.c
+===================================================================
+--- sid.orig/headers.c 2009-05-29 15:04:39.637022493 +0200
++++ sid/headers.c 2009-05-29 15:07:13.507355422 +0200
+@@ -52,7 +52,7 @@
+ }
+
+ mutt_env_to_local (msg->env);
+- mutt_write_rfc822_header (ofp, msg->env, NULL, 1, 0);
++ mutt_write_rfc822_header (ofp, msg->env, NULL, 1, 0, 1);
+ fputc ('\n', ofp); /* tie off the header. */
+
+ /* now copy the body of the message. */
+Index: sid/init.h
+===================================================================
+--- sid.orig/init.h 2009-05-29 15:07:12.851444777 +0200
++++ sid/init.h 2009-05-29 15:07:13.551485408 +0200
+@@ -3323,11 +3323,9 @@
+ { "write_bcc", DT_BOOL, R_NONE, OPTWRITEBCC, 1},
+ /*
+ ** .pp
+- ** Controls whether mutt writes out the ``Bcc:'' header when preparing
+- ** messages to be sent. Exim users may wish to unset this. If mutt
+- ** is set to deliver directly via SMTP (see $$smtp_url), this
+- ** option does nothing: mutt will never write out the ``Bcc:'' header
+- ** in this case.
++ ** Controls whether mutt writes out the Bcc header when saving
++ ** messages to FCC. Bcc headers will never be written to a message
++ ** when sending it.
+ */
+ {"xterm_icon", DT_STR, R_BOTH, UL &XtermIcon, UL "M%?n?AIL&ail?"},
+ /*
+Index: sid/protos.h
+===================================================================
+--- sid.orig/protos.h 2009-05-29 15:04:41.661333753 +0200
++++ sid/protos.h 2009-05-29 15:07:13.555496690 +0200
+@@ -372,7 +372,7 @@
+ int mutt_write_mime_body (BODY *, FILE *);
+ int mutt_write_mime_header (BODY *, FILE *);
+ int mutt_write_one_header (FILE *fp, const char *tag, const char *value,
const char *pfx, int wraplen);
+-int mutt_write_rfc822_header (FILE *, ENVELOPE *, BODY *, int, int);
++int mutt_write_rfc822_header (FILE *, ENVELOPE *, BODY *, int, int, int);
+ void mutt_write_references (LIST *, FILE *, int);
+ int mutt_yesorno (const char *, int);
+ void mutt_set_header_color(CONTEXT *, HEADER *);
+Index: sid/send.c
+===================================================================
+--- sid.orig/send.c 2009-05-29 15:04:41.729554764 +0200
++++ sid/send.c 2009-05-29 15:07:13.559504909 +0200
+@@ -983,10 +983,10 @@
+ unset_option (OPTWRITEBCC);
+ #endif
+ #ifdef MIXMASTER
+- mutt_write_rfc822_header (tempfp, msg->env, msg->content, 0, msg->chain ? 1
: 0);
++ mutt_write_rfc822_header (tempfp, msg->env, msg->content, 0, msg->chain ? 1
: 0, 0);
+ #endif
+ #ifndef MIXMASTER
+- mutt_write_rfc822_header (tempfp, msg->env, msg->content, 0, 0);
++ mutt_write_rfc822_header (tempfp, msg->env, msg->content, 0, 0, 0);
+ #endif
+ #ifdef USE_SMTP
+ if (old_write_bcc)
+Index: sid/sendlib.c
+===================================================================
+--- sid.orig/sendlib.c 2009-05-29 15:04:41.745604595 +0200
++++ sid/sendlib.c 2009-05-29 15:07:13.567526225 +0200
+@@ -1741,7 +1741,7 @@
+
+
+ int mutt_write_rfc822_header (FILE *fp, ENVELOPE *env, BODY *attach,
+- int mode, int privacy)
++ int mode, int privacy, int should_write_bcc)
+ {
+ char buffer[LONG_STRING];
+ char *p, *q;
+@@ -1784,7 +1784,7 @@
+ else if (mode > 0)
+ fputs ("Cc: \n", fp);
+
+- if (env->bcc)
++ if (env->bcc && should_write_bcc)
+ {
+ if(mode != 0 || option(OPTWRITEBCC))
+ {
+@@ -2507,7 +2507,7 @@
+ /* post == 1 => postpone message. Set mode = -1 in
mutt_write_rfc822_header()
+ * post == 0 => Normal mode. Set mode = 0 in mutt_write_rfc822_header()
+ * */
+- mutt_write_rfc822_header (msg->fp, hdr->env, hdr->content, post ? -post :
0, 0);
++ mutt_write_rfc822_header (msg->fp, hdr->env, hdr->content, post ? -post :
0, 0, 1);
+
+ /* (postponment) if this was a reply of some sort, <msgid> contians the
+ * Message-ID: of message replied to. Save it using a special X-Mutt-
diff --git a/debian/patches/series b/debian/patches/series
index c5d2112..af3953f 100644
--- a/debian/patches/series
+++ b/debian/patches/series
@@ -43,6 +43,8 @@ misc/hyphen-as-minus.patch
misc/manpage-typos.patch
misc/smime_keys-manpage.patch
+debian-specific/write_bcc
+
mutt.org
# extra patches for mutt-patched
mutt-patched/sidebar-compat-revert.debian