[Pkg-pdns-maintainers] Bug#742334: pdns-server start/stop events doesn't display at startup

F!nTcH fintch at fintch.org
Sat Mar 22 10:29:54 UTC 2014


Package: pdns-server
Version: 3.1-4.1
Severity: minor
Tags: d-i patch

Dear Maintainer,
I'm trying some tests with pdns in way to replace Bind9.
I'm currently working with ldap backend and to check dependency based
boot sequence
I would like to see pdns start/stop events.

Please have a look on the patched version of pdns init script below,
script I'm using.
I've only removed '' [ "$VERBOSE" != no ] && '' since $VERBOSE depends
on kernel quiet boot.
I think a daemon like pdns does not use this kind of variables and
should always display LSB log_msg functs.

It's a suggest more than a bug, but on some case (like mine), it could
be useful.

Regards.
F!nTcH

PS: Even if this bug report is for Version 3.1-4, it comes also in last
unstable version (3.3-2).

X-Mailer: reportbug 6.4.4

-- System Information:
Debian Release: 7.4
  APT prefers stable
  APT policy: (500, 'stable')
Architecture: i386 (i686)

Kernel: Linux 3.2.0-4-686-pae (SMP w/1 CPU core)
Locale: LANG=fr_FR.UTF-8, LC_CTYPE=fr_FR.UTF-8 (charmap=UTF-8)
Shell: /bin/sh linked to /bin/dash

Versions of packages pdns-server depends on:
ii  adduser                         3.113+nmu3
ii  debconf [debconf-2.0]           1.5.49
ii  libboost-program-options1.49.0  1.49.0-3.2
ii  libboost-serialization1.49.0    1.49.0-3.2
ii  libc6                           2.13-38+deb7u1
ii  libcrypto++9                    5.6.1-6
ii  libgcc1                         1:4.7.2-5
ii  liblua5.1-0                     5.1.5-4
ii  libpolarssl0                    1.2.9-1~deb7u1
ii  libsqlite3-0                    3.7.13-1+deb7u1
ii  libstdc++6                      4.7.2-5
ii  ucf                             3.0025+nmu3
ii  zlib1g                          1:1.2.7.dfsg-13

pdns-server recommends no packages.

Versions of packages pdns-server suggests:
ii  pdns-backend-ldap [pdns-backend]  3.1-4.1
pn  pdns-recursor                     <none>

-- Configuration Files:
/etc/init.d/pdns changed:
PATH=/bin:/sbin:/usr/bin:/usr/sbin
BINARYPATH=/usr/bin
SBINARYPATH=/usr/sbin
SOCKETPATH=/var/run
ODESC="PowerDNS Authoritative Name Server"
DESC="$ODESC"
NAME=pdns
DAEMON=/usr/sbin/pdns_server
DAEMON_ARGS=""
PIDFILE=/var/run/$NAME.pid
SCRIPTNAME=/etc/init.d/$NAME
[ -x "$DAEMON" ] || exit 0
[ -r /etc/default/pdns ] && . /etc/default/pdns
mkdir -p $SOCKETPATH
cd $SOCKETPATH
suffix=$(basename $0 | cut -d- -f2- -s)
if [ $suffix ]; then
    SUFFIX="--config-name=$suffix"
    DAEMON_ARGS="$DAEMON_ARGS $SUFFIX"
    NAME="$NAME-$suffix"
    DESC="$DESC (config name $suffix)"
    PIDFILE="/var/run/$NAME-$suffix.pid"
fi
. /lib/init/vars.sh
. /lib/lsb/init-functions
doPC()
{
    pdns_control $SUFFIX $1 $2 2> /dev/null
    return $?
}
isrunning()
{
    doPC ping > /dev/null
    return $?
}
do_start()
{
        # Return
        #   0 if daemon has been started
        #   1 if daemon was already running
        #   2 if daemon could not be started
    if isrunning; then
        return 1
    fi
        start-stop-daemon --start --quiet \
        --pidfile $PIDFILE --exec $DAEMON -- \
                $DAEMON_ARGS --daemon --guardian=yes \
                || return 2
}
do_stop()
{
        # Return
        #   0 if daemon has been stopped
        #   1 if daemon was already stopped
        #   2 if daemon could not be stopped
        #   other if a failure occurred
        doPC quit >/dev/null
    RETVAL="2"
    for sec in $(seq 1 5); do
        if ! isrunning; then
            RETVAL="0"
            break
        fi
        sleep 1
    done
        [ "$RETVAL" = 2 ] && return 2
        rm -f $PIDFILE
}
case "$1" in
  start)
    log_daemon_msg "Starting $DESC" "$NAME"
    do_start
    case "$?" in
        0|1) log_end_msg 0 ;;
        2) log_end_msg 1 ;;
    esac
    ;;
  stop)
    log_daemon_msg "Stopping $DESC" "$NAME"
    do_stop
    case "$?" in
        0|1) log_end_msg 0 ;;
        2) log_end_msg 1 ;;
    esac
    ;;
  status)
        if isrunning; then
        log_success_msg "$NAME is running: $(doPC status)"
    else
        log_failure_msg "$NAME is not running"
        exit 1
    fi
    ;;
  force-stop)
    log_daemon_msg "Killing $ODESC (all instances)" "$NAME"
    kill -9 $(pidof pdns_server)
    case "$?" in
        0) log_end_msg 0 ;;
        1) log_end_msg 1 ;;
    esac
    ;;
  restart)
        log_daemon_msg "Restarting $DESC" "$NAME"
    do_stop
        case "$?" in
          0|1)
                do_start
                case "$?" in
                        0) log_end_msg 0 ;;
                        1) log_end_msg 1 ;; # Old process is still running
                        *) log_end_msg 1 ;; # Failed to start
                esac
                ;;
          *)
                # Failed to stop
                log_end_msg 1
                ;;
        esac
        ;;
  reload|force-reload)
    log_daemon_msg "Reloading $DESC" "$NAME"
    if isrunning; then
      doPC cycle >/dev/null
      case "$?" in
        0) log_end_msg 0 ;;
        1) log_end_msg 1 ;;
      esac
    else
      log_end_msg 0
    fi
    ;;
  monitor)
    if isrunning; then
        echo "already running"
    else
        pdns_server $DAEMON_ARGS --daemon=no --guardian=no
--control-console --loglevel=9
    fi
    ;;
  dump)
    if isrunning; then
        doPC list
    else
        echo "not running"
    fi
    ;;
  show)
    if isrunning; then
        if [ $# -lt 2 ]; then
            echo "Insufficient parameters"
            exit 1
        fi
        echo -n "$2="
        doPC show $2
    else
        echo "not running"
    fi
    ;;
  mrtg)
    if isrunning; then
        if [ $# -lt 2 ]; then
            echo "Insufficient parameters"
            exit 1
        fi
        doPC show $2
        if [ "$3x" != "x" ]; then
            doPC show $3
        else
            echo 0
        fi
        doPC uptime
        echo "$DESC"
    else
        echo "not running"
    fi
    ;;
  cricket)
    if isrunning; then
        if [ $# -lt 2 ]; then
            echo "Insufficient parameters"
            exit 1
        fi
        doPC show $2
    else
        echo "not running"
    fi
    ;;
  *)
    echo "Usage: $SCRIPTNAME
{start|stop|status|force-stop|restart|reload|monitor|dump|show|mrtg|cricket}"
    ;;
esac
exit 0

-- debconf information excluded



More information about the Pkg-pdns-maintainers mailing list