HEX
Server: Apache
System: Linux vps-cdc32557.vps.ovh.ca 5.15.0-156-generic #166-Ubuntu SMP Sat Aug 9 00:02:46 UTC 2025 x86_64
User: hanode (1017)
PHP: 7.4.33
Disabled: pcntl_alarm,pcntl_fork,pcntl_waitpid,pcntl_wait,pcntl_wifexited,pcntl_wifstopped,pcntl_wifsignaled,pcntl_wifcontinued,pcntl_wexitstatus,pcntl_wtermsig,pcntl_wstopsig,pcntl_signal,pcntl_signal_get_handler,pcntl_signal_dispatch,pcntl_get_last_error,pcntl_strerror,pcntl_sigprocmask,pcntl_sigwaitinfo,pcntl_sigtimedwait,pcntl_exec,pcntl_getpriority,pcntl_setpriority,pcntl_async_signals,pcntl_unshare,
Upload Files
File: //etc/ppp/ip-up.d/clamav-freshclam-ifupdown
#!/bin/sh
# 2004-01-25, Thomas Lamy <thomas.lamy@in-online.net>
# From Magnus Ekdahl's <magnus@debian.org> clamav-freshclam-handledaemon(8)
# Adjust to be networkd-dispatcher compatible by
# Sergio Durigan Junior <sergiodj@debian.org>

set -e

[ -f /var/lib/clamav/interface ] || exit 0

if [ -d /run/systemd/system ]; then
    INIT='systemctl'
    INIT_SUFFIX='clamav-freshclam'
else
    INIT='invoke-rc.d clamav-freshclam'
    INIT_SUFFIX=''
fi

CLAMAV_CONF_FILE=/etc/clamav/clamd.conf
FRESHCLAM_CONF_FILE=/etc/clamav/freshclam.conf

INTERNETIFACE=$(cat /var/lib/clamav/interface)

if grep -q freshclam /proc/*/stat 2>/dev/null; then
  IS_RUNNING=true
else
  IS_RUNNING=false
fi

handle_ifupdown ()
{
    # $IFACE is set by ifup/down, $PPP_IFACE by pppd 
    [ -n "$PPP_IFACE" ] && IFACE=$PPP_IFACE

    # This is sloppy - woody's pppd exports variables, while sid's passes them as 
    # arguments and exports them.

    if [ "$1" = "$IFACE" ]; then # We're called by sid's pppd
	shift 6                    # and we already know the interface
    fi                           # Dump the arguments passed.

    if [ -z "$1" ]; then
	case $(dirname "$0") in
	    */if-up.d|*/ip-up.d)
		# Short circuit and exit early if freshclam is already running
		[ "$IS_RUNNING" = 'true' ] && exit 0
		for interface in $INTERNETIFACE; do
		    if [ "$interface" = "$IFACE" ]; then
			FMODE=start
			break
		    else
			FMODE=skip
		    fi
		done
		;;
	    */if-down.d|*/ip-down.d)
		# Short circuit and exit early if freshclam is not already running
		[ "$IS_RUNNING" = 'false' ] && exit 0
		for interface in $INTERNETIFACE; do
		    if [ "$interface" = "$IFACE" ]; then
			FMODE=stop
			break
		    else
			FMODE=skip
		    fi
		done
		;;
	    *)
		FMODE=skip
		;;
	esac
    else
	FMODE="$1"
    fi

    case "$FMODE" in
	start|stop)
	    IFACE="$IFACE" $INIT $FMODE $INIT_SUFFIX
	    ;;
	skip)
	    ;;
	*)
	    echo "Usage: $0 {start|stop|skip}" >&2
	    exit 1
	    ;;
    esac
}

handle_networkd_dispatcher ()
{
    FOUND_IFACE=false

    for interface in $INTERNETIFACE; do
	if [ "$interface" = "$IFACE" ]; then
	    FOUND_IFACE=true
	    break
	fi
    done

    [ "$FOUND_IFACE" = 'false' ] && return

    FMODE=""

    case "$STATE" in
	"off")
	    if [ "$IS_RUNNING" = 'true' ]; then
		FMODE="stop"
	    fi
	    ;;
	"routable")
	    if [ "$IS_RUNNING" = 'false' ]; then
		FMODE="start"
	    fi
	    ;;
	*)
	    return
    esac

    if [ -n "$FMODE" ]; then
	IFACE="$IFACE" $INIT $FMODE $INIT_SUFFIX
    fi
}

if [ -n "$STATE" ]; then
    handle_networkd_dispatcher "$@"
else
    handle_ifupdown "$@"
fi

exit 0