diff --git a/setup.sh b/setup.sh index df1f041e..a9e61b58 100755 --- a/setup.sh +++ b/setup.sh @@ -44,7 +44,7 @@ _get_current_directory CRI= INFO= IMAGE_NAME= -CONTAINER_NAME='mail' +CONTAINER_NAME= DEFAULT_CONFIG_PATH="${CDIR}/config" USE_CONTAINER=false WISHED_CONFIG_PATH= @@ -105,7 +105,7 @@ OPTIONS: -i IMAGE_NAME The name of the docker-mailserver image The default value is - 'docker.io/mailserver/docker-maiserver:latest' + 'docker.io/mailserver/docker-mailserver:latest' -c CONTAINER_NAME The name of the running container. diff --git a/target/bin/generate-dkim-config b/target/bin/generate-dkim-config index fb289f32..dc1f702e 100755 --- a/target/bin/generate-dkim-config +++ b/target/bin/generate-dkim-config @@ -2,38 +2,38 @@ touch /tmp/vhost.tmp -# if no keysize is provided, 2048 is default. +# if no keysize is provided, default to 4096 KEYSIZE=${1:-4096} # optional domain names DOMAINS=${2:-} if [[ -z ${DOMAINS} ]] then - # getting domains FROM mail accounts - if [[ -f /tmp/docker-mailserver/postfix-accounts.cf ]] - then - # shellcheck disable=SC2034 - while IFS=$'|' read -r LOGIN PASS - do - DOMAIN=$(echo "${LOGIN}" | cut -d @ -f2) - echo "${DOMAIN}" >>/tmp/vhost.tmp - done < <(grep -v "^\s*$\|^\s*\#" /tmp/docker-mailserver/postfix-accounts.cf || true) - fi + # getting domains FROM mail accounts + if [[ -f /tmp/docker-mailserver/postfix-accounts.cf ]] + then + # shellcheck disable=SC2034 + while IFS=$'|' read -r LOGIN PASS + do + DOMAIN=$(echo "${LOGIN}" | cut -d @ -f2) + echo "${DOMAIN}" >>/tmp/vhost.tmp + done < <(grep -v "^\s*$\|^\s*\#" /tmp/docker-mailserver/postfix-accounts.cf || true) + fi - # Getting domains FROM mail aliases - if [[ -f /tmp/docker-mailserver/postfix-virtual.cf ]] - then - # shellcheck disable=SC2034 - while read -r FROM TO - do - UNAME=$(echo "${FROM}" | cut -d @ -f1) - DOMAIN=$(echo "${FROM}" | cut -d @ -f2) + # getting domains FROM mail aliases + if [[ -f /tmp/docker-mailserver/postfix-virtual.cf ]] + then + # shellcheck disable=SC2034 + while read -r FROM TO + do + UNAME=$(echo "${FROM}" | cut -d @ -f1) + DOMAIN=$(echo "${FROM}" | cut -d @ -f2) - test "${UNAME}" != "${DOMAIN}" && echo "${DOMAIN}" >>/tmp/vhost.tmp - done < <(grep -v "^\s*$\|^\s*\#" /tmp/docker-mailserver/postfix-virtual.cf || true) - fi + [[ ${UNAME} != "${DOMAIN}" ]] && echo "${DOMAIN}" >>/tmp/vhost.tmp + done < <(grep -v "^\s*$\|^\s*\#" /tmp/docker-mailserver/postfix-virtual.cf || true) + fi else - tr ',' '\n' <<<"${DOMAINS}" > /tmp/vhost.tmp + tr ',' '\n' <<< "${DOMAINS}" > /tmp/vhost.tmp fi # keeping unique entries diff --git a/test/tests.bats b/test/tests.bats index ad17e165..637fa5ba 100644 --- a/test/tests.bats +++ b/test/tests.bats @@ -1184,7 +1184,6 @@ EOF assert_success run docker exec mail /bin/sh -c "nc 0.0.0.0 25 < /tmp/docker-mailserver-test/email-templates/quota-exceeded.txt" assert_success - # check for quota warn message existence run repeat_until_success_or_timeout 20 sh -c "docker exec mail sh -c 'grep \"Subject: quota warning\" /var/mail/otherdomain.tld/quotauser/new/ -R'" assert_success @@ -1192,7 +1191,6 @@ EOF run repeat_until_success_or_timeout 20 sh -c "docker logs mail | grep 'Quota exceeded (mailbox for user is full)'" assert_success - docker exec mail ls -l '/var/mail/otherdomain.tld/quotauser/new/' # ensure only the first big message and the warn message are present (other messages are rejected: mailbox is full) run docker exec mail sh -c 'ls /var/mail/otherdomain.tld/quotauser/new/ | wc -l' assert_success