Re: [Exim] Problem with non ASCII caracters

トップ ページ
このメッセージを削除
このメッセージに返信
著者: Phil Pennock
日付:  
To: Torsten Mueller
CC: exim-users@exim.org
題目: Re: [Exim] Problem with non ASCII caracters
--
On 2001-12-24 at 07:18 +0100, Torsten Mueller wrote:
> I use exim 3.31 with mysql support ("virtual hosts"
> support).
>
> The problem:
> If someone sends mail to info@??? the mail goes
> correct to the
> spoolfile /var/spool/mail/domain.de/info
>
> but:
> mail to infó@domain.de goes to the spoolfile
> /var/spool/mail/domain.de/infó
>
> note: there doesn't exists an account infó (don't know if
> you can see the "ó", it's
> an french o i think).
>
> In my opinion it's a mysql problem, cause mysql should say :
> user infó doesn't exist.


In my opinion it's a problem in several places, since that's an illegal
construction.

Extracting from the relevant RFCs:

-----------------------------< cut here >-------------------------------
RFC 2821 (SMTP):
Mailbox = Local-part "@" Domain

Local-part = Dot-string / Quoted-string
; MAY be case-sensitive

Dot-string = Atom *("." Atom)

Atom = 1*atext

Quoted-string = DQUOTE *qcontent DQUOTE

-----------------------------< cut here >-------------------------------

and:

-----------------------------< cut here >-------------------------------
RFC 2822 (Internet Message Format)

 atext  =  ALPHA / DIGIT / ; Any character except controls,
           "!" / "#" /     ;  SP, and specials.
           "$" / "%" /     ;  Used for atoms
           "&" / "'" /
           "*" / "+" /
           "-" / "/" /
           "=" / "?" /
           "^" / "_" /
           "`" / "{" /
           "|" / "}" /
           "~"


 qcontent  =       qtext / quoted-pair


 qtext     =       NO-WS-CTL /     ; Non white space controls
                   %d33 /          ; The rest of the US-ASCII
                   %d35-91 /       ;  characters not including "\"
                   %d93-126        ;  or the quote character


-----------------------------< cut here >-------------------------------

There is no way that the ó should be appearing on the left-hand side of
an email address (and, for that matter, the right-hand side).

You could regexp-match this with a condition when directing it. You
could get mysql to refuse it.

You could offer Philip Hazel much beer to implement a
local_part_charset_pedantic option. :^)
--
I don't suffer from insanity. I enjoy every minute of it.
--
[ Content of type application/pgp-signature deleted ]
--