HEX
Server: LiteSpeed
System: Linux CentOS-79-64-minimal 3.10.0-1160.119.1.el7.x86_64 #1 SMP Tue Jun 4 14:43:51 UTC 2024 x86_64
User: vishn3436 (5293)
PHP: 8.0.15
Disabled: NONE
Upload Files
File: //sbin/ms-cron
#!/bin/sh

# This script provides MailScanner cron job actions.
# Edit /etc/MailScanner/defaults to change options
#
# MailScanner Team <https://www.mailscanner.info>
# 17 April 2020

PATH=$PATH:/usr/sbin:/usr/local/sbin:/usr/bin:/usr/local/bin:/bin:/sbin
export PATH
NAME=MailScanner
DAEMON=/usr/sbin/MailScanner
QUICKPEEK=/usr/sbin/ms-peek
ms_conf=/etc/MailScanner/MailScanner.conf
ms_core=/usr/share/MailScanner
ms_lib=/usr/lib/MailScanner
ramdisk_store=/var/spool/MailScanner/ramdisk_store
stopped_lockfile=/var/lock/subsys/MailScanner.off

# defaults
ms_cron_check=0
ms_cron_msg_alert=0
ms_cron_sa=0
ms_cron_av=0
ms_cron_ps=0
ms_cron_sn=0
q_days=0

# if no arguments are passed
if [ -z $1 ]; then
	# user info screen
	clear
	echo; 
	echo "MailScanner Cron"; echo; echo;
	echo "This script provides basic maintenance services for MailScanner. Edit the file";
	echo "/etc/MailScanner/defaults to set your preferences.";
	echo;
	echo "You may use this from the command line or within a cron job. Usage:";
	echo;
	echo "hourly items: /usr/sbin/ms-cron HOURLY";
	echo "daily items:  /usr/sbin/ms-cron DAILY";
	echo "daemon check: /usr/sbin/ms-cron CHECK";
	echo "maintenance:  /usr/sbin/ms-cron MAINT";
	echo;

	exit 0
else	
	ACTION=`echo $1 | tr '[:lower:]' '[:upper:]'`
fi

# basic config file
if [ -f /etc/MailScanner/defaults ] ; then
	. /etc/MailScanner/defaults
else
	logger -i -p mail.notice "ERROR: ms-cron missing configuration file /etc/MailScanner/defaults"
	echo "Aborted: missing configuration file /etc/MailScanner/defaults"
    exit 1
fi

# checks if mailscanner is running and starts if not
if [ $ACTION = CHECK ]; then
	/usr/sbin/ms-check
	exit 0
fi

# hourly cron actions
if [ $ACTION = HOURLY ]; then
	
	# check if mailscanner process is running
	if [ $ms_cron_check = 1 ]; then
		/usr/sbin/ms-check
	fi
	
	# processing messages alert
	if [ $ms_cron_msg_alert = 1 ]; then
		/usr/sbin/ms-msg-alert
	fi

	exit 0
fi

# daily cron actions
if [ $ACTION = DAILY ]; then
	
	# update spamassassin
	if [ $ms_cron_sa = 1 ]; then
		/usr/sbin/ms-update-sa
	fi
	
	# update virus scanners
	if [ $ms_cron_av = 1 ]; then
		/usr/sbin/ms-update-vs
	fi
	
	# update phishing sites
	if [ $ms_cron_ps = 1 ]; then
		/usr/sbin/ms-update-phishing >/dev/null
	fi
	
	# update ScamNailer phishing emails
	if [ $ms_cron_sn = 1 ]; then
		if [ ! -d /var/cache/ScamNailer ]; then
			mkdir -p /var/cache/ScamNailer
		fi
		/usr/sbin/ms-update-bad-emails
	fi

	exit 0
fi

# maintenance
if [ $ACTION = MAINT ]; then
	
	# clean the quarantine
	if [ $q_days -gt 0 ]; then	
		/usr/sbin/ms-clean-quarantine
	fi

	exit 0
fi

# if we got this far
echo "I don't know what you are doing, but you are doing it wrong.";