Hi!
> +. cmdlib.sh
> +FLAG=0
> +SYSLOG_NAME=""
> +
> +if command -v systemctl >/dev/null 2>&1; then
> +     HAVE_SYSTEMCTL=1
> +else
> +     HAVE_SYSTEMCTL=0
> +fi
> +
> +if command -v syslogd >/dev/null 2>&1; then
> +     SYSLOG_INIT_SCRIPT="/etc/init.d/syslog"
> +elif command -v syslog-ng >/dev/null 2>&1; then
> +     SYSLOG_INIT_SCRIPT="/etc/init.d/syslog-ng"
> +elif command -v rsyslogd >/dev/null 2>&1; then
> +     SYSLOG_INIT_SCRIPT="/etc/init.d/rsyslog"
> +fi
> +
> +# make sure syslog daemon is enabled
> +SVCNAME=$(basename $SYSLOG_INIT_SCRIPT)
> +if [ $HAVE_SYSTEMCTL == 1 ]; then
> +     for svc in "$SVCNAME" "sysklogd"
> +     do
> +             if systemctl is-enabled $svc.service >/dev/null 2>&1; then
> +                     SYSLOG_NAME=$svc
> +                     break
> +             fi
> +     done
> +else
> +     for SYSLOG_INIT_SCRIPT in "$SYSLOG_INIT_SCRIPT" "/etc/init.d/sysklogd"
> +     do
> +             if [ -x "$SYSLOG_INIT_SCRIPT" ]; then
> +                     SYSLOG_NAME=$SYSLOG_INIT_SCRIPT
> +                     break
> +             fi
> +     done
> +fi
> +
> +if [ -n "$SYSLOG_NAME" ]; then
> +     if [ $HAVE_SYSTEMCTL == 1 ]; then
> +             status_daemon $SYSLOG_NAME
> +             if [ $? -ne 0 ]; then
> +                     restart_daemon $SYSLOG_NAME
> +                     FLAG=1
> +             fi
> +     else
> +             $SYSLOG_NAME status >/dev/null 2>&1
> +             if [ $? -ne 0 ]; then
> +                     $SYSLOG_NAME restart >/dev/null 2>&1
> +                     FLAG=1
> +             fi
> +     fi
> +fi
> +
>  # Set return code RC variable to 0, it will be set with a non-zero return 
> code
>  # in case of error. Set TFAILCNT to 0, increment if there occures a failure.
>  
> @@ -400,4 +454,12 @@ else
>       TFAILCNT=$(( $TFAILCNT+1 ))
>  fi
>  
> +if [ $FLAG -eq 1 ]; then
> +     if [ $HAVE_SYSTEMCTL == 1 ]; then
> +             stop_daemon $SYSLOG_NAME
> +     else
> +             $SYSLOG_NAME stop >/dev/null 2>&1
> +     fi
> +fi
> +

We have similar code to restart cron in cron/cron02 and to restart nscd
in sssd/sssd-libs.sh.

What about we create a short library with a common code to restart
system daemons? So that any new testcase would just need to source the
lib and call:

daemon_restart "cron"

or:

daemon_stop "syslog"

-- 
Cyril Hrubis
[email protected]

------------------------------------------------------------------------------
This SF.net email is sponsored by Windows:

Build for Windows Store.

http://p.sf.net/sfu/windows-dev2dev
_______________________________________________
Ltp-list mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/ltp-list

Reply via email to