[EXIM] Exim accepting addresses it cannot then parse

Top Page
Delete this message
Reply to this message
Author: Nigel Metheringham
Date:  
To: Philip Hazel
CC: exim-users
New-Topics: Re: [EXIM] Exim accepting addresses it cannot then parse - PATCH
Subject: [EXIM] Exim accepting addresses it cannot then parse
Philip,

I believe I raised something like this before, but it has returned to bite
me....

Some people are managing to (attempt to) send to addresses surrounded by 
quotes - for example
    'fred@???'


If you try this in an SMTP transaction you get
rcpt to: <'fred@???'>
250 Cannot check <'fred@???'> at this time - accepted
unverified
as against
rcpt to: <fred@???>
250 <fred@???> verified

The message then sticks in the queue, generating delayed messages, until
it later dies....

It looks to me as though this is not a syntactically correct address -
just looking at the last part means that you have an invalid character as
part of your domain OR I suppose you could argue that its an unqualified
local part but that doesn't seem to match any RFCs I know of.

So I guess this should be punted in the initial address check - or
possibly dequoted (which I guess you could do in a rewrite rule) -
although that seems to be guessing at the correct form of an invalid
address - a procedure that works OK most of the time until it gets the
chance to really drop you in it....

BTW debug shows (excerpted):-
  address 'fred@???'
    local_part='fred domain=theplanet.net'
    domain is not local

>>>>>>>>>>>>>>>>>>>>>>>>

  routing 'fred@???', domain theplanet.net'
  ...
  smtprelay_router router skipped: domain mismatch
  lookuphost router called for 'fred@???'
    dns lookup: route_domain = theplanet.net'
  DNS lookup of theplanet.net' (MX) gave TRY_AGAIN


    Nigel.
-- 
[ Nigel.Metheringham@???   -  Systems Software Engineer ]
[ Tel : +44 113 207 6112                   Fax : +44 113 234 6065 ]
[      Real life is but a pale imitation of a Dilbert strip       ]




--
*** Exim information can be found at http://www.exim.org/ ***