#!/bin/sh

RKHUNTER=/usr/bin/rkhunter

test -x $RKHUNTER || exit 0

# source our config
. /etc/default/rkhunter

case "$CRON_DB_UPDATE" in
        [YyTt]*)

                if [ ! -x /usr/bin/wget ] && [ ! -x /usr/bin/curl ] && [ ! -x /usr/bin/links ] && \
                   [ ! -x /usr/bin/elinks ] && [ ! -x /usr/bin/lynx ]; then
                     echo "No tool with which to download rkhunter updates was found on your system. Please install wget, curl, (e)links or lynx"
                     exit 1
                fi

                OUTFILE=`mktemp` || exit 1

                case "$DB_UPDATE_EMAIL" in
                    [YyTt]*)
                        (
                        echo "Subject: [rkhunter] $(hostname) - Weekly database update"
                        echo "To: $REPORT_EMAIL"
                        echo ""
                        $RKHUNTER --versioncheck --nocolors --appendlog
                        $RKHUNTER --update --nocolors --appendlog
                        ) | /usr/sbin/sendmail $REPORT_EMAIL
                    ;;
                    *)
                        $RKHUNTER --versioncheck --appendlog 1>/dev/null 2>$OUTFILE
                        $RKHUNTER --update --appendlog 1>/dev/null 2>>$OUTFILE
                    ;;
                esac

                if [ -s "$OUTFILE" ]; then
                    (
                    echo "Subject: [rkhunter] $(hostname) - Weekly rkhunter database update"
                    echo "To: $REPORT_EMAIL"
                    echo ""
                    cat $OUTFILE
                    ) | /usr/sbin/sendmail $REPORT_EMAIL
                fi
                rm -f $OUTFILE
        ;;

        *)
                exit 0
        ;;
esac
