Subject: request for clarification "MUST drop source routes"

From: Keith Grennan <[email-masked]>
Date: 25 Apr 2003 14:13:17 -0700

Hi,

I was wondering if someone could expand on the following:

All tests against envelopes MUST drop source routes.

What is a "source route" in this context and how does one drop it?

Thanks,
Keith

---

From: Philip Guenther <[email-masked]>
Date: Fri, 25 Apr 2003 15:03:36 -0700

>What is a "source route" in this context and how does one drop it?

These are described in rfc2821.  An example would be:
	<@foo.com,@bar.com:[email-masked]>

The "@foo.com,@bar.com:" part is a source route.  The Sieve rfc is just
saying that tests must act as if the address didn't include the source
route when determining whether they match.  So, if the above address
occured in the envelope 'to', then the test

	envelope :all :contains "to" "foo.com"

must fail, while the test

	envelope :all :is "[email-masked]"

must succeed.

Philip Guenther
[email-masked]

---

From: Jutta Degener <[email-masked]>
Date: Fri, 25 Apr 2003 15:55:52 -0700

On Fri, Apr 25, 2003 at 03:03:36PM -0700, Philip Guenther explains:
> route when determining whether they match.

Hm!  Now that you mention it, the fact that RFC 3028 says that about
_envelope_ addresses only and not about _all_ e-mail addresses (that is,
also the ones used with "address") seems like an omission to me.

The text about the "address" test excludes comments and groups from the
comparison, but doesn't mention source routes:

#  The address primitive never acts on the phrase part of an email
#  address, nor on comments within that address.  It also never acts on
#  group names, although it does act on the addresses within the group
#  construct.

Source routes are part of the RFC 2822 "obs-angle-addr" nonterminal,
and RFC 2822 asks that they be ignored:

#  When interpreting addresses, the route portion SHOULD be ignored.

Is there any reason not to always throw out the source route?

Jutta