diff --git a/Makefile b/Makefile index 8eece1f9..cccb1c89 100644 --- a/Makefile +++ b/Makefile @@ -149,6 +149,7 @@ fixtures: docker exec mail /bin/sh -c "nc 0.0.0.0 25 < /tmp/docker-mailserver-test/email-templates/amavis-virus.txt" docker exec mail /bin/sh -c "nc 0.0.0.0 25 < /tmp/docker-mailserver-test/email-templates/existing-alias-external.txt" docker exec mail /bin/sh -c "nc 0.0.0.0 25 < /tmp/docker-mailserver-test/email-templates/existing-alias-local.txt" + docker exec mail /bin/sh -c "nc 0.0.0.0 25 < /tmp/docker-mailserver-test/email-templates/existing-alias-recipient-delimiter.txt" docker exec mail /bin/sh -c "nc 0.0.0.0 25 < /tmp/docker-mailserver-test/email-templates/existing-user.txt" docker exec mail /bin/sh -c "nc 0.0.0.0 25 < /tmp/docker-mailserver-test/email-templates/existing-user-and-cc-local-alias.txt" docker exec mail /bin/sh -c "nc 0.0.0.0 25 < /tmp/docker-mailserver-test/email-templates/existing-regexp-alias-external.txt" diff --git a/target/postfix/main.cf b/target/postfix/main.cf index 0a79adc7..d18b718c 100644 --- a/target/postfix/main.cf +++ b/target/postfix/main.cf @@ -58,7 +58,7 @@ smtpd_sasl_local_domain = $myhostname broken_sasl_auth_clients = yes # Mail directory -virtual_transport = lmtp:unix:/var/run/dovecot/lmtp +virtual_transport = dovecot virtual_mailbox_domains = /etc/postfix/vhost virtual_mailbox_maps = texthash:/etc/postfix/vmailbox virtual_alias_maps = texthash:/etc/postfix/virtual diff --git a/target/postfix/master.cf b/target/postfix/master.cf index f043ec48..db98c847 100644 --- a/target/postfix/master.cf +++ b/target/postfix/master.cf @@ -62,6 +62,8 @@ scalemail-backend unix - n n - 2 pipe mailman unix - n n - - pipe flags=FR user=list argv=/usr/lib/mailman/bin/postfix-to-mailman.py ${nexthop} ${user} +dovecot unix - n n - - pipe + flags=DRhu user=docker:docker argv=/usr/lib/dovecot/deliver -f ${sender} -a ${recipient} -d ${user}@${nexthop} # diff --git a/test/email-templates/existing-alias-recipient-delimiter.txt b/test/email-templates/existing-alias-recipient-delimiter.txt new file mode 100644 index 00000000..9fd2953f --- /dev/null +++ b/test/email-templates/existing-alias-recipient-delimiter.txt @@ -0,0 +1,12 @@ +HELO mail.external.tld +MAIL FROM: user@external.tld +RCPT TO: alias1+test@localhost.localdomain +DATA +From: Docker Mail Server +To: Existing Local Alias +Date: Sat, 22 May 2010 07:43:25 -0400 +Subject: Test Message +This is a test mail. + +. +QUIT \ No newline at end of file diff --git a/test/tests.bats b/test/tests.bats index 1cd3538d..725a6dd7 100644 --- a/test/tests.bats +++ b/test/tests.bats @@ -272,6 +272,12 @@ load 'test_helper/bats-assert/load' assert_output 1 } +@test "checking smtp: delivers mail to existing alias with recipient delimiter" { + run docker exec mail /bin/sh -c "grep 'to=, orig_to=' /var/log/mail/mail.log | grep 'status=sent' | wc -l" + assert_success + assert_output 1 +} + @test "checking smtp: delivers mail to existing catchall" { run docker exec mail /bin/sh -c "grep 'to=, orig_to=' /var/log/mail/mail.log | grep 'status=sent' | wc -l" assert_success