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

Reply via email to