Thank you for the report. I don't use the zoneserver feature myself, so this is difficult for me to test.
The /etc/init.d/zoneserver is a Debian addition and I've being doing a poor job maintaining it. It's also a little complex as it is supposed to handle multiple separate servers and their configurations. I've since prepared a package with your patch: http://hendry.iki.fi/debian/unstable/maradns_1.2.12.02-2_i386.changes ¿Could you please test it? Best wishes! On 2006-08-28T08:09+0200 Boris Dorès wrote: > Package: maradns > Version: 1.2.12.02-1 > Tags: patch > > Hi everyone, > > I think I found three bugs related to the init.d script of the zoneserver of > maradns package : > > 1) zoneserver doesn't start if there are more than one configuration > file mentionned in /etc/default/maradns ($SERVERS is used on the > command line instead of $rcfile, which zoneserver doesn't > understand). > > 2) zoneserver isn't started unless "zone_transfer_acl" is defined in the > configuration file, even if it is (only) used to serve DNS records > over TCP (with the "tcp_convert_server" option). > > 3) when zoneserver is stopped with "/etc/init.d/zoneserver stop", only > the parent process of each server is killed : children processes keep > running in the background and must be killed manually. > > > > For 1) and 2), here is a patch proposal : > > --- /etc/init.d/zoneserver 2006-08-28 07:42:00.094624092 +0200 > +++ /etc/init.d/zoneserver2 2006-08-28 05:57:15.210295564 +0200 > @@ -33,11 +33,11 @@ > start) > echo -n "Starting $DESC: " > for rcfile in $SERVERS ; do > - if grep -q -i "^zone_transfer_acl" $rcfile; then > + if grep -q -i "^\(zone_transfer_acl\|tcp_convert_server\)" > $rcfile; then > SERVERNAME=`echo $rcfile | sed 's/\//_/g;s/^_*//;' | awk -F. > '{print $NF}'` > SERVERNAME=zoneserver.$SERVERNAME > start-stop-daemon --start -m --pidfile > /var/run/$SERVERNAME.pid \ > - --exec $DAEMON -- -f $SERVERS </dev/null 2>&1 | logger -p > daemon.notice -t $SERVERNAME 2>/dev/null & > + --exec $DAEMON -- -f $rcfile </dev/null 2>&1 | logger -p > daemon.notice -t $SERVERNAME 2>/dev/null & > else > echo "No zone ACL's configured for $rcfile -- not starting > zoneserver for it." > fi > @@ -47,7 +47,7 @@ > stop) > echo -n "Stopping $DESC: " > for rcfile in $SERVERS ; do > - if grep -q -i "^zone_transfer_acl" $rcfile; then > + if grep -q -i "^\(zone_transfer_acl\|tcp_convert_server\)" > $rcfile; then > SERVERNAME=`echo $rcfile | sed 's/\//_/g;s/^_*//;' | awk -F. > '{print $NF}'` > SERVERNAME=zoneserver.$SERVERNAME > start-stop-daemon --stop -m --quiet --pidfile > /var/run/$SERVERNAME.pid \ > > > > As for 3), I guess it's more like an upstream issue. > > Thanks. > > -- > Boris Dores >

