Mercurial > dovecot > original-hg > dovecot-1.2
changeset 8538:19e05e1bcb5c HEAD
deliver: If -a parameter isn't given, fallback to Envelope-To: header and user@hostname.
author | Timo Sirainen <tss@iki.fi> |
---|---|
date | Sat, 13 Dec 2008 14:28:28 +0200 |
parents | 1e913c30c1ed |
children | 280c92d3a80c |
files | src/deliver/deliver.c |
diffstat | 1 files changed, 9 insertions(+), 2 deletions(-) [+] |
line wrap: on
line diff
--- a/src/deliver/deliver.c Sat Dec 13 13:59:56 2008 +0200 +++ b/src/deliver/deliver.c Sat Dec 13 14:28:28 2008 +0200 @@ -1002,8 +1002,6 @@ putenv_extra_fields(&extra_fields); pool_unref(&userdb_pool); } - if (destaddr == NULL) - destaddr = user; /* Fix namespaces with empty locations */ for (i = 1;; i++) { @@ -1108,6 +1106,15 @@ mail = mail_alloc(t, 0, headers_ctx); mail_set_seq(mail, 1); + if (destaddr == NULL) { + destaddr = deliver_get_address(mail, "Envelope-To"); + if (destaddr == NULL) { + destaddr = strchr(user, '@') == NULL ? user : + t_strconcat(user, "@", + deliver_set->hostname, NULL); + } + } + storage = NULL; default_mailbox_name = mailbox; if (deliver_mail == NULL)