## cd_clamav::params.pp # Module name: cd_clamav # Author: Arne Teuke (arne_teuke@confdroid.com) # License: # This file is part of cd_clamav. # # cd_clamav is used for providing automatic configuration of Clamav. # Copyright (C) 2019 confdroid (copyright@confdroid.com) # This program 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. # # This program 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 this program. If not, see . # @summary Class holds all parameters for the cd_clamav module and is # inherited by all classes except defines. # @param [string] reqpackages List of packages to install. # @param [string] pkg_ensure # which [package type](https://confdroid.com/2017/05/puppet-type-package/) # to choose, i.e. `latest` or `present`. # @param [string] cv_logfile where to log messages for the clamd service. # @param [string] cv_logfileunlock whether log file should be locked for # writing -the lock protects againstrunning clamd multiple times # @param [string] cv_logfilemaxsize themax size for the logfile. This also # enables logrotation. # @param [string] cv_logtime Whether to log the time with each message. # @param [string] cv_logclean whether to log clean files. Useful in debugging # but drastically increases the log size. # @param [string] cv_logsyslog Use system logger (can work together with # LogFile). # @param [string] cv_logfacility type of syslog messages - please refer to # 'man syslog'for facility names # @param [string] cv_logverbose Whether to log verbose. # @param [string] cv_logrotate whether to enable log rotation. Always enabled # when LogFileMaxSize is enabled. # @param [string] cv_preludeenable whether to enable prelude output. # @param [string] cv_preludeanalyzername name of the analyzer used by # prelude-admin. ############################################################################## class cd_clamav::params ( # installation $reqpackages = ['clamav','clamav-update','clamd'], $pkg_ensure = 'present', # clamd $cv_logfile = '/var/log/clamd.scan', $cv_logfileunlock = 'no', $cv_logfilemaxsize = '2M', $cv_logtime = 'yes', $cv_logclean = 'no', $cv_logsyslog = 'yes', $cv_logfacility = 'LOG_MAIL', $cv_logverbose = 'no', $cv_logrotate = 'yes', $cv_preludeenable = 'no', $cv_preludeanalyzername = 'ClamAV', ) { # service $cv_service = 'clamd@.service' # dirs $cv_config_d_dir = '/etc/clamd.d' # files $cv_clamd_config_file = "${cv_config_d_dir}/scan.conf" $cv_clamd_config_erb = 'cd_clamav/scan_conf.erb' $cv_freshclam_file = '/etc/freshclam.conf' $cv_freshclam_erb = 'cd_clamav/freshclam_conf.erb' # includes must be last include cd_clamav::main::config }