Hello, While testing <create-alias> recoding, I noticed a bug in the IDN code, where conversion between IDN and display was unwantedly sensible to charset-hooks. Example: When user has "charset-hook . euc-jp", because he receives many mails containing EUC-JP charset with various wrong MIME labels, a domain "xn--ren-dma.org" is displayed "ren?«±.org" instead of the correct "rené.org". And when he enters "rené.org", it's idnized to wrong "xn--ren-c03j.org". Exact wrongs depend on $charset. I believe that such conversions, between constant "utf-8" and the $charset provided by user, both under full control, should not be subject to charset-hooks. It's not needed (any corrections can be done directly on $charset, or indirectly thru iconv-hooks), and can create unwanted interferences in some perfectly sensible setups. Charset-hooking iso-8859-1 to whatever else intends to correct wrong MIME charset=iso-8859-1 labels; It should not break any operations in an already correct iso-8859-1 $charset. Should be subject to charset-hooks *only* uncertain fromcodes coming from the wild Internet. The attached patch-1.5.12.ab.M_ICONV_HOOK_sanitize.1 corrects this by removing M_ICONV_HOOK_{FROM,TO} flags usage from IDN, PGP, and GPGME code, where not appropriate. It also removes completely the M_ICONV_HOOK_TO symbol and depending code, because charset-hooking a tocode is never wanted. It adds comments about role of flag M_ICONV_HOOK_FROM, and its misleading name (ICONV_HOOK, when it exclusively triggers charset-hooks), hoping less misusage in the future. And while at it, the patch corrects a typo and normalizes casing of some constant charset names. This patch applies after patch-1.5.12.msyk.iconvhook.1-ab (collisions in comments otherwise). Bye! Alain. -- Mutt compressed folders tip for stable archive timestamp: | open-hook \\.gz$ "gzip -cd '%f' > '%t' ; ret=$? ; touch --no-create --reference='%f' '%t' ; exit \$ret" | close-hook \\.gz$ "gzip -c '%t' > '%f' ; ret=$? ; touch --no-create --reference='%t' '%f' ; exit \$ret" | append-hook \\.gz$ "gzip -c '%t' >> '%f'"
Attachment:
patch-1.5.12.ab.M_ICONV_HOOK_sanitize.1.gz
Description: application/gunzip