From: "Curtis" on
Oops... that was embarrassing... my message was missing a subject. (fixed)

-----Original Message-----
From: Curtis [mailto:postfixuser(a)isparks.com]
Sent: Friday, April 16, 2010 4:05 PM
To: 'postfix-users(a)postfix.org'
Subject:

I apologize if this is answered in the documention. but I'm having trouble
finding where the "ENVELOPE RECORDS" section of the postcat output is
described.

Most particularly, I'm concerned about the following three fields:

named_attribute: dsn_orig_rcpt=rfc822;email(a)example.com
original_recipient: email(a)example.com
recipient: email(a)example.com

Would it be safe to say that all local recipients of the message will be
found in the "recipient:" field? (Repeated for each recipient?)

Thanks,

Curtis

From: Wietse Venema on
Curtis:
> Oops... that was embarrassing... my message was missing a subject. (fixed)
>
> I apologize if this is answered in the documention. but I'm having trouble
> finding where the "ENVELOPE RECORDS" section of the postcat output is
> described.

It's not documented, because there is no promise that it will work
the same way in a future Postfix version.

However, the names of the records give a hint.

> Most particularly, I'm concerned about the following three fields:
>
> named_attribute: dsn_orig_rcpt=rfc822;email(a)example.com
> original_recipient: email(a)example.com
> recipient: email(a)example.com
>
> Would it be safe to say that all local recipients of the message will be
> found in the "recipient:" field? (Repeated for each recipient?)

That's how Postfix works at the moment, but there is no promise
that it will always work that way.

Only behavior in the documentation has the promise that it will
work that way in future Postfix versions. This promise comes at
the cost of considerable effort when Postfix internals are changed.

Wietse

From: "Curtis" on
> -----Original Message-----
> From: owner-postfix-users(a)postfix.org [mailto:owner-postfix-
> users(a)postfix.org] On Behalf Of Wietse Venema
> Sent: Friday, April 16, 2010 5:04 PM
> To: Postfix users
> Subject: Re: postcat ENVELOPE RECORDS output?
>
> Curtis:
> > Oops... that was embarrassing... my message was missing a subject.
> (fixed)
> >
> > I apologize if this is answered in the documention. but I'm having
> trouble
> > finding where the "ENVELOPE RECORDS" section of the postcat output is
> > described.
>
> It's not documented, because there is no promise that it will work
> the same way in a future Postfix version.
>
> However, the names of the records give a hint.
>
> > Most particularly, I'm concerned about the following three fields:
> >
> > named_attribute: dsn_orig_rcpt=rfc822;email(a)example.com
> > original_recipient: email(a)example.com
> > recipient: email(a)example.com
> >
> > Would it be safe to say that all local recipients of the message will
> be
> > found in the "recipient:" field? (Repeated for each recipient?)
>
> That's how Postfix works at the moment, but there is no promise
> that it will always work that way.
>
> Only behavior in the documentation has the promise that it will
> work that way in future Postfix versions. This promise comes at
> the cost of considerable effort when Postfix internals are changed.
>
> Wietse

Wietse, your commitment to keeping future Postfix versions consistent with
past documentation is amazing. And yes, we will definitely be extremely
careful about upgrading to new versions of Postfix.

Thanks for your quick response.

Curtis

From: "Curtis" on
>It's not documented, because there is no promise that it will work
>the same way in a future Postfix version.
>
>However, the names of the records give a hint.
>
>> Most particularly, I'm concerned about the following three fields:
>>
>> named_attribute: dsn_orig_rcpt=rfc822;email(a)example.com
>> original_recipient: email(a)example.com
>> recipient: email(a)example.com
>>
>> Would it be safe to say that all local recipients of the message will be
>> found in the "recipient:" field? (Repeated for each recipient?)
>
>That's how Postfix works at the moment, but there is no promise
>that it will always work that way.

A quick follow up on this. The field I was actually looking for turned out
to be "original_recipient:". Just in case anybody else goes through this,
let me document what I've learned about these three fields:

>> named_attribute: dsn_orig_rcpt=rfc822;email(a)example.com

Well, I'm not really sure where this value comes from, but it can not be
used as a reliable way to determine who the local recipient is. Sometimes
it contains a non-local list address.

>> original_recipient: email(a)example.com

This one appears to be the actual local recipient that was probably captured
during the smtp session.

>> recipient: email(a)example.com

This value is what appears to be what postfix translated the address to
after it accepted the message. For example, if you use virtual_alias_maps
to alias one address to another, then it will contain the target email
address.

Again, as Wietse would say, these values are not guaranteed to work this way
in future versions of Postfix. In fact, they may not even work this way in
the current version. I'm using version 2.5.6.

Thanks,

Curtis

From: mouss on
Curtis a �crit :
>> It's not documented, because there is no promise that it will work
>> the same way in a future Postfix version.
>>
>> However, the names of the records give a hint.
>>
>>> Most particularly, I'm concerned about the following three fields:
>>>
>>> named_attribute: dsn_orig_rcpt=rfc822;email(a)example.com
>>> original_recipient: email(a)example.com
>>> recipient: email(a)example.com
>>>
>>> Would it be safe to say that all local recipients of the message will be
>>> found in the "recipient:" field? (Repeated for each recipient?)
>> That's how Postfix works at the moment, but there is no promise
>> that it will always work that way.
>
> A quick follow up on this. The field I was actually looking for turned out
> to be "original_recipient:". Just in case anybody else goes through this,
> let me document what I've learned about these three fields:
>
>>> named_attribute: dsn_orig_rcpt=rfc822;email(a)example.com
>
> Well, I'm not really sure where this value comes from,

as the name suggests, this is found in a DSN attribute. DSN (Delivery
Status Notification) is described in the corresponding RFCs.

> but it can not be
> used as a reliable way to determine who the local recipient is. Sometimes
> it contains a non-local list address.
>
>>> original_recipient: email(a)example.com
>
> This one appears to be the actual local recipient that was probably captured
> during the smtp session.
>
>>> recipient: email(a)example.com
>
> This value is what appears to be what postfix translated the address to
> after it accepted the message. For example, if you use virtual_alias_maps
> to alias one address to another, then it will contain the target email
> address.
>
> Again, as Wietse would say, these values are not guaranteed to work this way
> in future versions of Postfix. In fact, they may not even work this way in
> the current version. I'm using version 2.5.6.
>
> Thanks,
>
> Curtis
>
>