#!/usr/bin/env bash

# Author:   Zhang Huangbin (zhb _at_ iredmail.org)

#---------------------------------------------------------------------
# This file is part of iRedMail, which is an open source mail server
# solution for Red Hat(R) Enterprise Linux, CentOS, Debian and Ubuntu.
#
# iRedMail is free software: you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation, either version 3 of the License, or
# (at your option) any later version.
#
# iRedMail is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with iRedMail.  If not, see <http://www.gnu.org/licenses/>.
#---------------------------------------------------------------------

export SYS_USER_CLAMAV='clamav'
export SYS_GROUP_CLAMAV='clamav'
export CLAMAV_CLAMD_SERVICE_NAME='clamd'
export CLAMAV_FRESHCLAMD_RC_SCRIPT_NAME='freshclamd'

export CLAMD_LOG_DIR='/var/log/clamav'
export CLAMD_LOGFILE="${CLAMD_LOG_DIR}/clamd.log"
# CLAMD_BIND_HOST is configured in conf/global
export CLAMD_LOCAL_SOCKET='/tmp/clamd.socket'

export FRESHCLAM_CONF='/etc/freshclam.conf'
export FRESHCLAM_LOGFILE="${CLAMD_LOG_DIR}/freshclam.log"
export FRESHCLAM_PID_FILE='/var/run/clamav/freshclam.pid'

# Update database immediately
export FRESHCLAM_UPDATE_IMMEDIATELY="${FRESHCLAM_UPDATE_IMMEDIATELY:=YES}"

# Clamav.
if [ X"${DISTRO}" == X'RHEL' ]; then
    export SYS_USER_CLAMAV='amavis'
    export SYS_GROUP_CLAMAV='amavis'

    export CLAMD_CONF='/etc/clamd.d/amavisd.conf'
    export CLAMD_LOCAL_SOCKET='/var/run/clamd.amavisd/clamd.socket'

    export CLAMAV_CLAMD_SERVICE_NAME='clamd@amavisd'

elif [ X"${DISTRO}" == X'DEBIAN' -o X"${DISTRO}" == X'UBUNTU' ]; then
    export CLAMAV_CLAMD_SERVICE_NAME='clamav-daemon'
    export CLAMAV_FRESHCLAMD_RC_SCRIPT_NAME='clamav-freshclam'

    export CLAMD_CONF='/etc/clamav/clamd.conf'
    export FRESHCLAM_CONF='/etc/clamav/freshclam.conf'

    export CLAMD_LOCAL_SOCKET='/var/run/clamav/clamd.ctl'

elif [ X"${DISTRO}" == X'FREEBSD' ]; then
    export CLAMD_CONF='/usr/local/etc/clamd.conf'
    export FRESHCLAM_CONF='/usr/local/etc/freshclam.conf'
    export CLAMD_LOCAL_SOCKET='/var/run/clamav/clamd.sock'

elif [ X"${DISTRO}" == X'OPENBSD' ]; then
    export CLAMD_CONF='/etc/clamd.conf'
    export SYS_USER_CLAMAV='_clamav'
    export SYS_GROUP_CLAMAV='_clamav'
    export CLAMAV_FRESHCLAMD_RC_SCRIPT_NAME='freshclam'

    export FRESHCLAM_PID_FILE='/var/run/freshclam.pid'
fi
