Ticket #1421 (new enhancement)

Opened 6 years ago

Last modified 3 years ago

Mutt generates base64 in Subject

Reported by: vincent@vinc17.org Assigned to: mutt-dev
Priority: minor Milestone:
Component: mutt Version: 1.5.2i
Keywords: Cc:

Description

Package: mutt
Version: mutt-1.0.1i-6
Severity: normal

-- Please type your report below this line

Mutt generates base64 in the Subject header field:

Subject: Re: [RA2002] Corrections =?iso-8859-1?Q?ap?=
	=?iso-8859-1?B?cuhz?= la relecture

where the decoded subject is:

  Re: [RA2002] Corrections après la relecture

Just for an accented character, this is not a good idea, in particular
because some old mailers don't support base64 in headers. Some other
mailers forward messages in the body with headers undecoded, and base64
makes things worse for the user who tries to read. When there isn't a
big size difference between QP and base64 (which would always be the
case in French, for instance), Mutt should use QP.

-- System Information
System Version: Linux greux.loria.fr 2.2.17 #13 SMP Tue Dec 12 15:26:51 MET 2000 i686 unknown
RPM Packager: Red Hat, Inc. <http://bugzilla.redhat.com/bugzilla>
RedHat Release: Red Hat Linux release 6.2 (Zoot)

-- Build environment information

(Note: This is the build environment installed on the system
muttbug is run on.  Information may or may not match the environment
used to build mutt.)

- gcc version information
ccache gcc
Reading specs from /users/spaces/logiciels/gcc-3.0/linux/lib/gcc-lib/i686-pc-linux-gnu/3.0/specs
Configured with: ../gcc-3.0/configure --prefix=/users/spaces/logiciels/gcc-3.0 --exec-prefix=/users/spaces/logiciels/gcc-3.0/linux
Thread model: single
gcc version 3.0

- CFLAGS
-Wall -pedantic -g -O2

-- Mutt Version Information

Mutt 1.5.2i (2002-12-06)
Copyright (C) 1996-2002 Michael R. Elkins and others.
Mutt comes with ABSOLUTELY NO WARRANTY; for details type `mutt -vv'.
Mutt is free software, and you are welcome to redistribute it
under certain conditions; type `mutt -vv' for details.

System: Linux 2.2.17 (i686) [using ncurses 5.2]
Compile options:
-DOMAIN
-DEBUG
+HOMESPOOL  -USE_SETGID  +USE_DOTLOCK  -DL_STANDALONE  
+USE_FCNTL  -USE_FLOCK
+USE_POP  +USE_IMAP  -USE_GSS  +USE_SSL  -USE_SASL  -USE_SASL2  
+HAVE_REGCOMP  -USE_GNU_REGEX  
+HAVE_COLOR  +HAVE_START_COLOR  +HAVE_TYPEAHEAD  +HAVE_BKGDSET  
+HAVE_CURS_SET  +HAVE_META  +HAVE_RESIZETERM  
+HAVE_PGP  +HAVE_SMIME  -BUFFY_SIZE -EXACT_ADDRESS  -SUN_ATTACHMENT  
+ENABLE_NLS  +LOCALES_HACK  -HAVE_WC_FUNCS  +HAVE_LANGINFO_CODESET  +HAVE_LANGINFO_YESEXPR  
+HAVE_ICONV  -ICONV_NONTRANS  +HAVE_GETSID  +HAVE_GETADDRINFO  
ISPELL="/users/spaces/logiciels/ispell/linux/bin/ispell"
SENDMAIL="/usr/sbin/sendmail"
MAILPATH="mailbox"
PKGDATADIR="/users/spaces/lefevre/share/mutt"
SYSCONFDIR="/users/spaces/lefevre/etc"
EXECSHELL="/bin/sh"
-MIXMASTER
To contact the developers, please mail to <mutt-dev@mutt.org>.
To report a bug, please use the flea(1) utility.

patch-1.3.24.ats.parent_match.1
patch-1.5.1.vl.savehist.1


>How-To-Repeat:
>Fix:

Change History

2002-12-13 05:38:33 changed by vincent@vinc17.org

Package: mutt
Version: mutt-1.0.1i-6
Severity: normal

-- Please type your report below this line

Mutt generates base64 in the Subject header field:

Subject: Re: [RA2002] Corrections =?iso-8859-1?Q?ap?=
	=?iso-8859-1?B?cuhz?= la relecture

where the decoded subject is:

 Re: [RA2002] Corrections après la relecture

Just for an accented character, this is not a good idea, in particular
because some old mailers don't support base64 in headers. Some other
mailers forward messages in the body with headers undecoded, and base64
makes things worse for the user who tries to read. When there isn't a
big size difference between QP and base64 (which would always be the
case in French, for instance), Mutt should use QP.

-- System Information
System Version: Linux greux.loria.fr 2.2.17 #13 SMP Tue Dec 12 15:26:51 MET 2000 i686 unknown
RPM Packager: Red Hat, Inc. <http://bugzilla.redhat.com/bugzilla>
RedHat Release: Red Hat Linux release 6.2 (Zoot)

-- Build environment information

(Note: This is the build environment installed on the system
muttbug is run on.  Information may or may not match the environment
used to build mutt.)

- gcc version information
ccache gcc
Reading specs from /users/spaces/logiciels/gcc-3.0/linux/lib/gcc-lib/i686-pc-linux-gnu/3.0/specs
Configured with: ../gcc-3.0/configure --prefix=/users/spaces/logiciels/gcc-3.0 --exec-prefix=/users/spaces/logiciels/gcc-3.0/linux
Thread model: single
gcc version 3.0

- CFLAGS
-Wall -pedantic -g -O2

-- Mutt Version Information

Mutt 1.5.2i (2002-12-06)
Copyright (C) 1996-2002 Michael R. Elkins and others.
Mutt comes with ABSOLUTELY NO WARRANTY; for details type `mutt -vv'.
Mutt is free software, and you are welcome to redistribute it
under certain conditions; type `mutt -vv' for details.

System: Linux 2.2.17 (i686) [using ncurses 5.2]
Compile options:
-DOMAIN
-DEBUG
+HOMESPOOL  -USE_SETGID  +USE_DOTLOCK  -DL_STANDALONE  
+USE_FCNTL  -USE_FLOCK
+USE_POP  +USE_IMAP  -USE_GSS  +USE_SSL  -USE_SASL  -USE_SASL2  
+HAVE_REGCOMP  -USE_GNU_REGEX  
+HAVE_COLOR  +HAVE_START_COLOR  +HAVE_TYPEAHEAD  +HAVE_BKGDSET  
+HAVE_CURS_SET  +HAVE_META  +HAVE_RESIZETERM  
+HAVE_PGP  +HAVE_SMIME  -BUFFY_SIZE -EXACT_ADDRESS  -SUN_ATTACHMENT  
+ENABLE_NLS  +LOCALES_HACK  -HAVE_WC_FUNCS  +HAVE_LANGINFO_CODESET  +HAVE_LANGINFO_YESEXPR  
+HAVE_ICONV  -ICONV_NONTRANS  +HAVE_GETSID  +HAVE_GETADDRINFO  
ISPELL="/users/spaces/logiciels/ispell/linux/bin/ispell"
SENDMAIL="/usr/sbin/sendmail"
MAILPATH="mailbox"
PKGDATADIR="/users/spaces/lefevre/share/mutt"
SYSCONFDIR="/users/spaces/lefevre/etc"
EXECSHELL="/bin/sh"
-MIXMASTER
To contact the developers, please mail to <mutt-dev@mutt.org>.
To report a bug, please use the flea(1) utility.

patch-1.3.24.ats.parent_match.1
patch-1.5.1.vl.savehist.1

2002-12-19 04:45:00 changed by Edmund GRIMLEY EVANS <edmundo@rano.org>

vincent@vinc17.org <vincent@vinc17.org>:

> Just for an accented character, this is not a good idea, in particular
> because some old mailers don't support base64 in headers. Some other
> mailers forward messages in the body with headers undecoded, and base64
> makes things worse for the user who tries to read. When there isn't a
> big size difference between QP and base64 (which would always be the
> case in French, for instance), Mutt should use QP.

It's line 281 in rfc2047.c, if you want to change it to something like

#define BIAS_AGAINST_B 3
 if (len_b + BIAS_AGAINST_B < len_q && len_b <= ENCWORD_LEN_MAX)

for example, but it hardly seems worth changing. Are there really
programs that understand RFC 2047 but only the Q encoding?

Edmund

2002-12-19 13:11:00 changed by Vincent Lefevre <vincent@vinc17.org>

On Wed, Dec 18, 2002 at 20:45:00 +0000, Edmund GRIMLEY EVANS wrote:
> It's line 281 in rfc2047.c, if you want to change it to something like
> 
> #define BIAS_AGAINST_B 3
>   if (len_b + BIAS_AGAINST_B < len_q && len_b <= ENCWORD_LEN_MAX)
> 
> for example, but it hardly seems worth changing. Are there really
> programs that understand RFC 2047 but only the Q encoding?

At least Pluto under RISC OS (but perhaps under some conditions,
so it may be a bug, in fact).

But I've also seen complaints on a French newsgroup, I don't know for
which software (but it could be a news-only software):

 Message-ID: <3c72b217@neottia.net>

-- 
Vincent Lefèvre <vincent@vinc17.org> - Web: <http://www.vinc17.org/> - 100%
validated (X)HTML - Acorn Risc PC, Yellow Pig 17, Championnat International
des Jeux Mathématiques et Logiques, TETRHEX, etc.
Work: CR INRIA - computer arithmetic / SPACES project at LORIA

2005-09-05 05:53:41 changed by brendan

Refile as change-request.