Comment 0 for bug 2059835

Revision history for this message
kodu.cloud (koducloud) wrote : $OPTIONS variable missing in "ExecStartPre" of proftpd-basic systemd unit

Package: proftpd-core
Version: 1.3.7c+dfsg-1build1
Architecture: amd64

The $OPTIONS environment variable is defined in the /lib/systemd/system/proftpd.service file and used in the "ExecStart" line when starting the service, but it is not used when calling --configtest in the "ExecStartPre" line:

[Service]
Type=forking
Environment=OPTIONS= CONFIG_FILE=/etc/proftpd/proftpd.conf
EnvironmentFile=-/etc/default/proftpd
ExecStartPre=/usr/sbin/proftpd --configtest -c $CONFIG_FILE
ExecStart=/usr/sbin/proftpd -c $CONFIG_FILE $OPTIONS
ExecReload=/bin/kill -HUP $MAINPID
PIDFile=/run/proftpd.pid

If the server's hostname cannot be resolved for some reason, proftpd will not start.
Adding the line below to the /etc/default/proftpd file can circumvent this issue:

OPTIONS="-S 0.0.0.0"

However, due to the absence of the $OPTIONS variable in "ExecStartPre", the OPTIONS line in the /etc/default/proftpd will be ignored, --configtest will fail and proftpd will not start.

We believe the $OPTIONS variable should be added to the "ExecStartPre" line.

Best regards,
kodu.cloud team.