Bug#482312: exim4: exits when asked to reload configuration

Johannes Berg johannes at sipsolutions.net
Wed May 21 21:57:54 UTC 2008


> Please help us to reproduce this issue by providing debug output and
> other evidence of the bug, step-by-step instructions to reproduce this
> behavior.

I figure a shell log is most useful: (=== marker inserted by me)

# sh -x /etc/init.d/exim4 reload 2>&1 | tee /tmp/log
+ set -e
+ '[' -r /lib/lsb/init-functions ']'
+ . /lib/lsb/init-functions
++ FANCYTTY=
++ '[' -e /etc/lsb-base-logging.sh ']'
++ true
+ '[' -n '' ']'
+ LANG=C
+ export LANG
+ QUEUERUNNER=combined
+ QUEUEINTERVAL=30m
+ UPEX4OPTS=
+ PIDFILE=/var/run/exim4/exim.pid
+ QRPIDFILE=/var/run/exim4/eximqr.pid
+ '[' -f /etc/default/exim4 ']'
+ . /etc/default/exim4
++ EX4DEF_VERSION=
++ QUEUERUNNER=combined
++ QUEUEINTERVAL=30m
++ COMMONOPTIONS=
++ QUEUERUNNEROPTIONS=
++ QFLAGS=
++ SMTPLISTENEROPTIONS=
+ '[' -f /etc/inetd.conf ']'
+ grep -E -q '^[[:space:]]*((\*|[[:alnum:].-]+):)?smtp' /etc/inetd.conf
+ DAEMON=/usr/sbin/exim4
+ NAME=exim4
+ test -x /usr/lib/exim4/exim4
+ case "$1" in
+ log_daemon_msg 'Reloading exim4 configuration files'
+ '[' -z 'Reloading exim4 configuration files' ']'
+ '[' -z '' ']'
+ echo -n 'Reloading exim4 configuration files:'
Reloading exim4 configuration files:+ return
+ upex4conf
+ UPEX4CONF=update-exim4.conf
+ OLDIFS=' 	
'
+ IFS=:
+ for p in '$PATH'
+ '[' -x /sbin/update-exim4.conf ']'
+ for p in '$PATH'
+ '[' -x /usr/sbin/update-exim4.conf ']'
+ IFS=' 	
'
+ /usr/sbin/update-exim4.conf
+ return 0
+ isconfigvalid
+ /usr/sbin/exim4 -bV
+ reload_exim
+ case ${QUEUERUNNER} in
+ killproc -p /var/run/exim4/exim.pid /usr/sbin/exim4 -HUP
+ local pidfile sig status base i name_param is_term_sig
+ pidfile=
+ name_param=
+ is_term_sig=no
+ OPTIND=1
+ getopts p: opt
+ case "$opt" in
+ pidfile=/var/run/exim4/exim.pid
+ getopts p: opt
+ shift 2
+ base=exim4
+ '[' '!' /var/run/exim4/exim.pid ']'
++ sed -e 's/^-\(.*\)/\1/'
++ echo -HUP
+ sig=HUP
++ echo HUP
++ sed -e 's/^SIG\(.*\)/\1/'
+ sig=HUP
+ '[' -n HUP -o HUP = 15 -o HUP = TERM ']'
+ is_term_sig=yes

====== strange! But what is the -n test doing there?

+ status=0
+ '[' '!' yes = yes ']'
+ /sbin/start-stop-daemon --stop --pidfile /var/run/exim4/exim.pid --retry 5 --quiet --oknodo
+ '[' 0 = 1 ']'
+ '[' 0 = 0 -a yes = yes ']'
+ pidofproc -p /var/run/exim4/exim.pid /usr/sbin/exim4
+ local pidfile line i pids= status specified pid
+ pidfile=
+ specified=
+ OPTIND=1
+ getopts p: opt
+ case "$opt" in
+ pidfile=/var/run/exim4/exim.pid
+ specified=1
+ getopts p: opt
+ shift 2
+ '[' -z /var/run/exim4/exim.pid ']'
+ '[' -f /var/run/exim4/exim.pid ']'
+ read pid
+ '[' -n 13598 ']'
++ kill -0 13598
+ return 1
+ rm -f /var/run/exim4/exim.pid
+ return 0
+ log_progress_msg exim4
+ '[' -z exim4 ']'
+ echo -n ' exim4'
 exim4+ log_end_msg 0
+ '[' -z 0 ']'
+ log_use_fancy_output
+ TPUT=/usr/bin/tput
+ EXPR=/usr/bin/expr
+ '[' -t 1 ']'
+ FANCYTTY=0
+ case "$FANCYTTY" in
+ false
+ '[' 0 -eq 0 ']'
+ echo .
.
+ return 0
+ warn_paniclog
+ '[' -s /var/log/exim4/paniclog ']'
+ exit 0







More information about the Pkg-exim4-maintainers mailing list