Dear list,

when accepting mail in pure "local" mode (exim4 -bm) and when the
sender address is given unqualified in the mail header, exim4 tries to
qualify it with both the domain (which is fine) and the realname,
as read from the gecos field returned by getpwnam(). If this
gecos field contains 8-bit characters, exim escapes them using
the active locale (in my case, 'รค' => '=E4' with ISO8859-1 (or -15)),
but declares it to be UTF8, which is plain wrong:

] From [EMAIL PROTECTED] Mon Jul 31 21:30:27 2006
] Return-path: <[EMAIL PROTECTED]>
] Envelope-to: [EMAIL PROTECTED]
] Delivery-date: Mon, 31 Jul 2006 21:30:27 +0200
] Received: from fb3-s4.math.tu-berlin.de ([130.149.11.5] ident=Debian-exim)
]         by fb3-s7.math.tu-berlin.de with esmtps 
(TLS-1.0:RSA_AES_256_CBC_SHA:32)
]         (Exim 4.50)
]         id 1G7dT9-0007cl-5L
]         for [EMAIL PROTECTED]; Mon, 31 Jul 2006 21:30:27 +0200
] Received: from thomasbl by fb3-s4.math.tu-berlin.de with local (Exim 4.62)
]         (envelope-from <[EMAIL PROTECTED]>)
]         id 1G7dT9-00007w-1L
]         for [EMAIL PROTECTED]; Mon, 31 Jul 2006 21:30:27 +0200
] To: [EMAIL PROTECTED]
] Subject: ...
] Message-Id: <[EMAIL PROTECTED]>
] From: =?UTF-8?Q?Thomas_Bl=E4sing?= <[EMAIL PROTECTED]>
        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
] Date: Mon, 31 Jul 2006 21:30:27 +0200

The locale is en_US, but the problem seems to occur with any non-UTF-
locale (confirmed with en_IE, [EMAIL PROTECTED], de_DE).

Bug reproduction guide:
* Create a user $user with 8-bit gecos field, and do the following:
[EMAIL PROTECTED]:~> exim4 -bm -- $user
From: $user
To: $user
Date: <rfc2822-date>
Subject: locale bug

foobar
^D
[EMAIL PROTECTED]:~> (observe $MAIL)

Other methods (local-esmtp, local-bsmtp) are not affected, because
gecos-qualification is not done there.

Sorry if this has been reported before, but I couldn't find any records of it
in the list's archives.


Regards,

Jan

PS: Please CC me in replies, I'm not on the list.

Reporting system:
* Debian Linux (2.6) running Exim 4.62
* Relevant configuration options:
 qualify_domain = pool.math.tu-berlin.de
 # linux-typical:
 gecos_pattern = ^([^,:]*)
 gecos_name = $1
  All other *qualify*-options are unset.

Attachment: signature.asc
Description: Digital signature

-- 
## List details at http://www.exim.org/mailman/listinfo/exim-dev Exim details 
at http://www.exim.org/ ##

Reply via email to