[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: sieve - "malformed email address"es - space at EOL?



On Fri 11 Aug 2017 at 21:41:02 (+1000), Zenaan Harkness wrote:
> On Fri, Aug 11, 2017 at 11:03:20AM +0100, Darac Marjal wrote:
> > On Fri, Aug 11, 2017 at 01:14:21PM +1000, Zenaan Harkness wrote:
> > > Any sieve gurus?
> > > 
> > > (YES, I finally made it off of procmail, and sieve is AWEsome in
> > > comparison - oh happy days :)
> > > 
> > > So two sieve failures (dodgy incoming emails got through gmail)
> > > exposed themselves in relation to sieve in the last few days as
> > > follows:
> > > 
> > > 
> > > 1)
> > > The first is simply a "superfluous" space char at the end of the line
> > > on the "From:" line, as follows (ignore leading spaces):
> > > 
> > >   From: "EFA" <memberadmin@efa.org.au>⋅
> > > 
> > > Note the deceptively cheeky little space char at the end of the line
> > > - and yes, either EFA or some middle man has a dodgy MUA/ mail
> > > processing agent.
> > > 
> > > QUESTION:
> > > Why is a single space at this EOL, so malformed as to cause sieve to
> > > spit the dummy with an error?
> > 
> > According to RFC5322 (which obsoleted RFC2822, which obsoleted RFC822), the from field is defined as:
> > 
> >   from            =   "From:" mailbox-list CRLF
> >   mailbox-list    =   (mailbox *("," mailbox)) / obs-mbox-list
> >   mailbox         =   name-addr / addr-spec
> >   name-addr       =   [display-name] angle-addr
> >   angle-addr      =   [CFWS] "<" addr-spec ">" [CFWS] /
> >                       obs-angle-addr
> >   obs-mbox-list   =   *([CFWS] ",") mailbox *("," [mailbox / CFWS])
> > 
> > (addr-spec is an email address). So, the simplest parsing of that line is as a single mailbox where display-name is
> > EFA (That is, display-name is actually ' "EFA" ', but the spaces are optional whitespace within the quoted-string and
> > the quotes delimit the content), and the remainder is an angle-addr. Angle-addr DOES, as you can see, allow for CFWS
> > (Comment and/or Folding White Space) after the closing angle bracket.
> > 
> > So, I would say that the From header *is* RFC compliant and you should consider raising a bug.
> 
> Thank you.
> 
> That's "fully guru, man, fully guru!" :D

I'm having a little difficulty following this conversation,
particularly the bit about a "deceptively cheeky little space char".
I don't see a space at the end, but this character "⋅", ie

Character   ⋅
Character name	DOT OPERATOR
Hex code point 	22C5
Decimal code point	8901
Hex UTF-8 bytes 	E2 8B 85
Octal UTF-8 bytes 	342 213 205
UTF-8 bytes as Latin-1 characters bytes		â <8B> <85> 

so I have to ask whether you're reading this line in a font that is
lacking this character or makes it too small to see. I'm reading and
replying variously in neep, hack and h16 (all of these are monospace)
which all show it clearly as a centred dot (not easily distinguishable
from MIDDLE DOT, code point 00b7).

Cheers,
David.


Reply to: