Skip to content

[BUG] Error when starting a BASH session #1769

@casperklein

Description

@casperklein

Bug Report

Context

What is affected by this bug?

Starting a BASH session in the container.

When does this occur?

When starting BASH.

How do we replicate the issue?

docker exec -it mail bash

Actual Behavior

bash: by: command not found

Expected Behavior

No error should be shown

Your Environment

  • version: edge

Cause

Missing quoting in the container file /root/.bashrc.

See:

{
echo "DOVECOT_MAILBOX_FORMAT=${DOVECOT_MAILBOX_FORMAT}"
echo "DOVECOT_TLS=${DOVECOT_TLS}"
echo "ENABLE_CLAMAV=${ENABLE_CLAMAV}"
echo "ENABLE_FAIL2BAN=${ENABLE_FAIL2BAN}"
echo "ENABLE_FETCHMAIL=${ENABLE_FETCHMAIL}"
echo "ENABLE_LDAP=${ENABLE_LDAP}"
echo "ENABLE_MANAGESIEVE=${ENABLE_MANAGESIEVE}"
echo "ENABLE_POP3=${ENABLE_POP3}"
echo "ENABLE_POSTGREY=${ENABLE_POSTGREY}"
echo "ENABLE_QUOTAS=${ENABLE_QUOTAS}"
echo "ENABLE_SASLAUTHD=${ENABLE_SASLAUTHD}"
echo "ENABLE_SPAMASSASSIN=${ENABLE_SPAMASSASSIN}"
echo "ENABLE_SRS=${ENABLE_SRS}"
echo "FETCHMAIL_POLL=${FETCHMAIL_POLL}"
echo "FETCHMAIL_PARALLEL=${FETCHMAIL_PARALLEL}"
echo "LDAP_START_TLS=${LDAP_START_TLS}"
echo "LOGROTATE_INTERVAL=${LOGROTATE_INTERVAL}"
echo "LOGWATCH_INTERVAL=${LOGWATCH_INTERVAL}"
echo "MOVE_SPAM_TO_JUNK=${MOVE_SPAM_TO_JUNK}"
echo "NETWORK_INTERFACE=${NETWORK_INTERFACE}"
echo "ONE_DIR=${ONE_DIR}"
echo "OVERRIDE_HOSTNAME=${OVERRIDE_HOSTNAME}"
echo "POSTGREY_AUTO_WHITELIST_CLIENTS=${POSTGREY_AUTO_WHITELIST_CLIENTS}"
echo "POSTGREY_DELAY=${POSTGREY_DELAY}"
echo "POSTGREY_MAX_AGE=${POSTGREY_MAX_AGE}"
echo "POSTGREY_TEXT=${POSTGREY_TEXT}"
echo "POSTFIX_INET_PROTOCOLS=${POSTFIX_INET_PROTOCOLS}"
echo "POSTFIX_MAILBOX_SIZE_LIMIT=${POSTFIX_MAILBOX_SIZE_LIMIT}"
echo "POSTFIX_MESSAGE_SIZE_LIMIT=${POSTFIX_MESSAGE_SIZE_LIMIT}"
echo "POSTSCREEN_ACTION=${POSTSCREEN_ACTION}"
echo "REPORT_RECIPIENT=${REPORT_RECIPIENT}"
echo "SMTP_ONLY=${SMTP_ONLY}"
echo "SPAMASSASSIN_SPAM_TO_INBOX=${SPAMASSASSIN_SPAM_TO_INBOX}"
echo "SPOOF_PROTECTION=${SPOOF_PROTECTION}"
echo "SRS_SENDER_CLASSES=${SRS_SENDER_CLASSES}"
echo "SSL_TYPE=${SSL_TYPE}"
echo "SUPERVISOR_LOGLEVEL=${SUPERVISOR_LOGLEVEL}"
echo "TLS_LEVEL=${TLS_LEVEL}"
echo "VIRUSMAILS_DELETE_DELAY=${VIRUSMAILS_DELETE_DELAY}"
echo "DMS_DEBUG=${DMS_DEBUG}"
} >>/root/.bashrc

Variable values with no spaces are no problem when unquoted. However this is a problem:

POSTGREY_TEXT=Delayed by postgrey

In that case, BASH tries to execute the by command on start.

Solution

Add quotes to variable values in /root/.bashrc.

I will provide a PR.

Metadata

Metadata

Assignees

Type

No type

Projects

No projects

Milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions