Contributed by 小郭 ([email protected])
Last Update: Sat May 17 12:09:58 2003
以 mail/cyrus-imapd2-2.1.13 架設郵件伺服器,有些信件的主旨全部變成了 XXXXXX ? 這是 RFC 2047 的標準不相容 8Bit 主旨的郵件。 目前能用的辦法是將標題編碼,這是比較標準的做法, 或是修改 source code 兩個檔案 imap/lmtpengine.c 以及 imap/message.c 讓收信的 IMAPD 支援 8Bit 主旨。
--- imap/lmtpengine.c.orig Sat May 17 14:45:39 2003
+++ imap/lmtpengine.c Sat May 17 14:48:07 2003
@@ -739,6 +739,7 @@
state s = NAME_START;
int r = 0;
int reject8bit = config_getswitch("reject8bit", 0);
+ int ignore8bit = config_getswitch("ignore8bit", 0);
if (namelen == 0) {
namelen += NAMEINC;
@@ -854,7 +855,7 @@
form. */
r = IMAP_MESSAGE_CONTAINS8BIT;
goto ph_error;
- } else {
+ } else if (!ignore8bit) {
/* We have been configured to munge all mail of this
form. */
c = 'X';
--- imap/message.c.orig Fri Apr 18 06:49:49 2003
+++ imap/message.c Sat May 17 14:46:27 2003
@@ -229,6 +229,7 @@
int n;
int sawcr = 0, sawnl;
int reject8bit = config_getswitch("reject8bit", 0);
+ int ignore8bit = config_getswitch("ignore8bit", 0);
int inheader = 1, blankline = 1;
while (size) {
@@ -264,7 +265,7 @@
/* We have been configured to reject all mail of this
form. */
if (!r) r = IMAP_MESSAGE_CONTAINS8BIT;
- } else {
+ } else if (!ignore8bit) {
/* We have been configured to munge all mail of this
form. */
*p = 'X';
最後再編輯 ${PREFIX}/etc/imapd.conf 並增加一行:
ignore8bit = yes
RFC 2047 MIME (Multipurpose Internet Mail Extensions) Part Three: Message Header Extensions for Non-ASCII Text