Cyrus has a special routine that translates 8-bit (utf-8) headers in e-mails into a big X. This seems to be a known bug, but the programmers of cyrus do not even allow normal users to turn this feature on or off. I found an old patch under http://asg.web.cmu.edu/archive/message.php?mailbox=archive.info-cyrus&msg=1682 that fixes that problem, but I couldn't apply it to the current cyrus-distro. So I wrote my own patch against it and included it in the attachment. Furthermore, I added a revised ebuild script that uses the patch. The only thing missing is a fixed man-page for imapd.conf, but that is up to you. Greetings, George
Created attachment 10159 [details] updated ebuild-script for cyrus-imapd now, /etc/imapd.conf has the option allow8bitheaders: yes/no (undocumented)
Created attachment 10160 [details, diff] the required diff
Comment on attachment 10160 [details, diff] the required diff store it under files/non-ascii-header.diff
Created attachment 12000 [details, diff] diff for manpage Added a description for the new "allow8bitheaders" setting and changed the description of "reject8bit".
http://asg.web.cmu.edu/twiki/bin/view/Cyrus/WhyCyrusReject8Bit
Created attachment 17922 [details] updated ebuild Do you still care about this bug? I just upgraded to 2.1.14 and the patch almost worked... Here an updated ebuild-script... and the slightly modified patch follows
Created attachment 17923 [details, diff] Updated diff
I'm definitely interested about this patch and am ready to help you with it, if there's something I could do. I'm about to deploy Cyrus to couple of production servers but this 8-bit header thing is a show-stopper for me.
what's the status of this?
Ok, first of all, this is not a bug. As Nick's link in comment #5 states, the IMAP RFC (2060 Section 7.4.2) does not allow 8-bit characters in headers: 8-bit textual data is permitted if a [CHARSET] identifier is part of the body parameter parenthesized list for this section. Note that headers (part specifiers HEADER or MIME, or the header portion of a MESSAGE/RFC822 part), MUST be 7-bit; 8-bit characters are not permitted in headers. This is because things like searching and sorting can potentially break. Another message from the cyrus dev is here explaining this: http://asg.web.cmu.edu/archive/message.php?mailbox=archive.cyrus-devel&msg=146 Even though debian folks applied this patch (it seems) I'm not comfortable doing it in Gentoo, because we may potentially be getting bugs about random searches failing due to 8bit headers. Thoughts?
I don't see what's the problem, if this option is not turned on by default and comes with all the necessary "Enabling this can _really_ screw up things" disclaimers. Potentially nasty patches are unfortunately needed every now and then in more exotic countries, that's for sure. I for one (as a Finn) know that. :-(
*** Bug 80630 has been marked as a duplicate of this bug. ***
Note: the dup has a newer patch.
OK I'm getting old - I just provided a duplicate for this bug (including ebuild+patch) even though I'm CC'ed to this one. Anyway, it's very obvious that the CMU folks are approaching this from a very standards-compliant, yet still very academic POV, and unfortunately a very US-centric at that. Fact is that many European/Eastern folks _do_ send mail that is not RFC-whatever compliant and telling them to fix that is just totally futile (ISP's webmail etc.); you still get a 'X' in your mail, which "potentially messes up search" as well. The patch does not break anything that doesn't already break by _falsifying_ the subject; actually I'd say the 'X' is even worse because I don't have the chance of properly displaying the subject at all. But regardless of all that: like I wrote in my other bug I simply suggest an allow8bit / munge8bit USE flag and be done with it. That's what Gentoo is all about, that's why I just spent ~1h of my time on this.
I agree with Holger. Gentoo is about configuring things to your own needs, so just make this availiable to all non-US Citizens. You don't have to use it, but it doesn't break anything either. I wonder if the pound-sign is in the seven bit set? Any Englishmen reading this?
Especially as it is disable by default, one for sure should know what he's doing when using this patch.
Created attachment 52298 [details, diff] Patch for 2.2.12, store it under files/cyrus-imapd-2.2.12-8bitheader.patch Revised patch for 2.2.12
Created attachment 52299 [details] Updated ebuild for 2.2.12
Comment on attachment 52298 [details, diff] Patch for 2.2.12, store it under files/cyrus-imapd-2.2.12-8bitheader.patch when will you integrate it?
I'll take care of this. Anyway, do *NOT* post bugs you can only reproduce using this patch as we don't support third party patches. Cheers, Ferdy
Commited cyrus-imapd-2.2.12-r1 with unsupported_8bit use flag to enable the patch in #80630. Compiles for me, test it and give feedback; reopen if it fails *to compile* for you. Cheers, Ferdy
works for me on three systems (athlon, pentium-III, dual-athlon)
Reopen to fix. This is annoying :P Cheers, Ferdy
Fixed. Cheers, Ferdy
I wonder why this patch isn't included in any stable cyrus-imapd ebuilds, since this patch is very, very useful and hassle-free thing for many people.
I agree with that, it's stable as hell, and should go mainstream ASAP. BTW, I should open a new bug to propose a patch to disable sieve, too.
Hello? Anyone? cyrus-imapd-2.2.12-r4 really should be marked as stable already. Besides of this bug, there is at least one more reason for that: http://forums.gentoo.org/viewtopic-t-482096.html