dovecot-1.2: deliver: If -a parameter isn't given, fallback to E...
dovecot at dovecot.org
dovecot at dovecot.org
Sat Dec 13 14:28:32 EET 2008
details: http://hg.dovecot.org/dovecot-1.2/rev/19e05e1bcb5c
changeset: 8538:19e05e1bcb5c
user: Timo Sirainen <tss at iki.fi>
date: Sat Dec 13 14:28:28 2008 +0200
description:
deliver: If -a parameter isn't given, fallback to Envelope-To: header and user at hostname.
diffstat:
1 file changed, 9 insertions(+), 2 deletions(-)
src/deliver/deliver.c | 11 +++++++++--
diffs (28 lines):
diff -r 1e913c30c1ed -r 19e05e1bcb5c src/deliver/deliver.c
--- 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 @@ int main(int argc, char *argv[])
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 @@ int main(int argc, char *argv[])
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)
More information about the dovecot-cvs
mailing list