Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > linux.debian.user > #185029

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

From Darac Marjal <mailinglist@darac.org.uk>
Newsgroups linux.debian.user
Subject Re: sieve - "malformed email address"es - space at EOL?
Date 2017-08-11 12:10 +0200
Message-ID <udf3c-2bo-13@gated-at.bofh.it> (permalink)
References <ud8Eq-6A4-3@gated-at.bofh.it>
Organization linux.* mail to news gateway

Show all headers | View raw


[Multipart message — attachments visible in raw view] - view raw

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.

>
>
>2)
>The dodgiest "To:" line I have literally ever seen, as follows:
>
>To: <Undisclosed-Recipient:;>
>
>Notice the colon, AND the semi colon, in this "email address".

This is allowed by RFC 6854 (March 2013), which updates RFC5322 to allow 
"Group Syntax" in the From and Sender fields. RFC5322 already allowed 
group syntax in To, Cc, BCc etc fields. Groups consist of:

   group           =   display-name ":" [group-list] ";" [CFWS]
   group-list      =   mailbox-list / CFWS / obs-group-list

In other words, they consist of a display name, then a colon, then a 
list of mailboxes and a final semi-colon. The list of mailboxes is 
optional, so here we have a group called "Undisclosed-Recipient" with no 
members. Or, in other words, this message is not addressed to anybody 
(it's probably been blind-copied to others, though).

RFC 6854, in allowing group syntax in the From Field allows one to say 
"This message is not from anyone" or "This message is from a group of 
authors" and, in theory, should mean that no-one needs to use 
"noreply@example.org" or "directors@example.com" as a From address.

>
>Again gmail passed it right through.
>
>I can actually accept this failure of sieve to pass the email through
>- such an addy is indeed rather egregious.
>
>BUT, it would be nice to have sieve actuallly OUTPUT the actual
>problematic email address, and to this end, does anyone know some
>magical incantation to add to sieve, so I can see all problematic
>(and only the problematic) lines of incoming emails, as "error
>output" by sieve to the cmd line?

This depends on your implementation of sieve. Dovecot's implementation, 
Pigeonhole, will log to ~/.dovecot.sieve.log by default. 

>
>Manually reducing the lines being processed by sieve, running sieve
>each time, till I finally figured out exactly which lines of which
>emails is causing the problem, is quite the biatch TBH :)
>
>
>TIA,
>Zen
>

-- 
For more information, please reread.

Back to linux.debian.user | Previous | Next — Previous in thread | Next in thread | Find similar | Unroll thread


Thread

sieve - "malformed email address"es - space at EOL? Zenaan Harkness <zenaan@freedbms.net> - 2017-08-11 05:20 +0200
  Re: sieve - "malformed email address"es - space at EOL? Darac Marjal <mailinglist@darac.org.uk> - 2017-08-11 12:10 +0200
    Re: sieve - "malformed email address"es - space at EOL? Zenaan Harkness <zenaan@freedbms.net> - 2017-08-11 13:50 +0200
      Re: sieve - "malformed email address"es - space at EOL? David Wright <deblis@lionunicorn.co.uk> - 2017-08-11 15:30 +0200
        Re: sieve - "malformed email address"es - space at EOL? Zenaan Harkness <zenaan@freedbms.net> - 2017-08-11 15:40 +0200

csiph-web