# Sample clamav-update.conf
#   In the default, put this file to /usr/local/clamXav/etc/ .
#   If you want to use the other file, issue clamav-update.pl with --config
#   option.
#       ex) clamav-update.pl --config /etc/clamav-update.conf

# $Id: clamav-update.conf,v 1.12 2009/11/15 03:52:15 okamura Exp $

#### Logging ####
# log destination
#   GLOB destinations
#       \*STDOUT  - standerd output
#       \*STDERR  - standerd error output
#   Syslog destinations
#       'unix'    - unix domain socket
#       ['stream', 'FILE_PATH'] - the file of which path name is FILE_PATH
#       'inet'    - INET socket (either tcp or udp, tried in that order) returned by getservbyname()
#       'tcp'     - tcp socket returned by getservbyname()
#       'udp'     - udp socket returned by getservbyname()
#       'console' - console
#$Setting{logging}->{setlogsock} = \*STDERR;

# log level
#   'emerg'   - A panic condition.
#   'alert'   - A condition that should be corrected immediately.
#   'crit'    - Critical conditions.
#   'err'     - Errors.
#   'warning' - Warning messages.
#   'notice'  - Conditions that are not error conditions, but should possibly be
#               handled specially.
#   'info'    - Informational messages.
#   'debug'   - Messages that contain information normally of use only when
#               debugging a program.
#$Setting{logging}->{setlogmask} = 'warning';

# log identity (only syslog)
#   'NAME' - NAME is prepended to every message.
#$Setting{logging}->{openlog}->{ident} = 'clamav-update';

# log options (only syslog)
#   ['OPTION1', 'OPTION2' ...] or [qw(OPTION1 OPTION2 ...)]
#   ndelay - Open the connection to syslogd(8) immediately.
#   perror - Write the message to standard error output as well to the system log.
#   pid    - Log the process id with each message.
#$Setting{logging}->{openlog}->{logopt} = [qw()];

# log facility (only syslog)
#   'console' - Messages written to /dev/console by the kernel console output
#               driver.
#   'daemon'  - System daemons, such as routed(8), that are not provided for
#               explicitly by other facilities.
#   'mail'    - The mail system.
#   'news'    - The network news system.
#   'user'    - Messages generated by random user processes.
#   'local1'  - for other purpose.
#   'local2'  - for other purpose.
#   'local3'  - for other purpose.
#   'local4'  - for other purpose.
#   'local5'  - for other purpose.
#   'local6'  - for other purpose.
#   'local7'  - for other purpose.
#$Setting{logging}->{openlog}->{facility} = 'local6';


#### Environment Variables ####
#   $Setting{environment}->{VARNAME} = 'VALUE';
# PATH
#$Setting{environment}->{PATH} = '/bin:/sbin:/usr/bin:/usr/sbin:/usr/local/clamXav/bin';


#### Getting Version Method ####
# latest version
#   command to get
#$Setting{version}->{latest}->{command} = [qw(host -t txt current.cvd.clamav.net)];

#   the regular expression that is applied to command output
#$Setting{version}->{latest}->{regexp} = qr/"(\d+(?:\.\d+)*):\d+:\d+:\d+:[^"]*"\s*$/;

# current version
#   command to get
#$Setting{version}->{current}->{command} = [qw(clamav-config --version)];

#   the regular expression that is applied to command output
#$Setting{version}->{current}->{regexp} = qr/^(\d+(?:\.\d+)*)\s*$/;

# version string compare function
#$Setting{version}->{compare} = sub {
#   my  ($a, $b) = @_;
#   my  @a = reverse(split(/\./, $a));
#   my  @b = reverse(split(/\./, $b));
#
#   while (0 < scalar(@a) and 0 < scalar(@b)) {
#       $a = pop @a;
#       $b = pop @b;
#       return -1   if ($a < $b);
#       return  1   if ($a > $b);
#   }
#   return  1   if (0 < scalar(@a));
#   return -1   if (0 < scalar(@b));
#   return  0;
#};


#### Options ####
# These settings will be overwrited with command line options.
# download from
#$Setting{option}->{src} = {
#	template	=> 'http://jaist.dl.sourceforge.net/project/${NAME}/${NAME}/${VERSION}/${NAME}-${VERSION}.${EXT}',
#	params		=> {
#		'${NAME}'		=> \$Setting{option}->{name},
#		'${VERSION}'	=> \$LatestVersion,
#		'${EXT}'		=> \$Setting{option}->{ext},
#	},
#};
#    Simple way:
#$Setting{option}->{src} = 'BASE_URL';
#    It's equivalent to
#$Setting{option}->{src} = {
#	template	=> 'BASE_URL/${NAME}-${VERSION}.${EXT}',
#	params		=> {
#		'${NAME}'		=> \$Setting{option}->{name},
#		'${VERSION}'	=> \$LatestVersion,
#		'${EXT}'		=> \$Setting{option}->{ext},
#	},
#};
#     ClamAV mirrors
#         Japan Advanced Institute of Science and Technology (Ishikawa, Japan, JP)
#             http://jaist.dl.sourceforge.net/project/
#         National Central University (Taiwan, TW)
#             http://ncu.dl.sourceforge.net/project/
#         National Center for High-Performance Computing (Tainan, Taiwan, TW)
#             http://nchc.dl.sourceforge.net/project/
#         Biznet Networks (Indonesia)
#             http://biznetnetworks.dl.sourceforge.net/project/
#         Internode (Adelaide, Australia)
#             http://internode.dl.sourceforge.net/project/
#         Waix (Perth, Australia)
#             http://waix.dl.sourceforge.net/project/
#         Transact (Canberra, Australia)
#             http://waix.dl.sourceforge.net/project/
#         Swedish University Computer Network (Sweden)
#             http://sunet.dl.sourceforge.net/project/
#         German Research Network (Berlin, Germany)
#             http://dfn.dl.sourceforge.net/project/
#         Mesh Solutions (Duesseldorf, Germany, DE)
#             http://mesh.dl.sourceforge.net/project/
#         University of Kent (Kent, UK)
#             http://kent.dl.sourceforge.net/project/
#         SWITCH (Lausanne, Switzerland, CH)
#             http://jaist.dl.sourceforge.net/project/
#         HEAnet (Dublin, Ireland, IE)
#             http://heanet.dl.sourceforge.net/project/
#         Free France (France, Europe)
#             http://freefr.dl.sourceforge.net/project/
#         OVH (Paris, France, FR)
#             http://ovh.dl.sourceforge.net/project/
#         garr.it (Bologna, Italy, it)
#             http://garr.dl.sourceforge.net/project/
#         iWeb (Montreal, Canada)
#             http://iweb.dl.sourceforge.net/project/
#         Softlayer (Plano, TX, USA)
#             http://softlayer.dl.sourceforge.net/project/
#         Voxel (New York, New York, US)
#             http://voxel.dl.sourceforge.net/project/
#         Centro de Computacao Cientifica e Software Livre (Curitiba, Brazil, BR)
#             http://ufpr.dl.sourceforge.net/project/


#   download to
#$Setting{option}->{dst} = tempdir(CLEANUP => 1);

#   package name (don't change for clamav)
#$Setting{option}->{name} = 'clamav';

#   archive file extention (don't change for clamav)
#$Setting{option}->{ext} = 'tar.gz';

#   force install
#$Setting{option}->{force} = 0;

#	update limit
#		version supremum
#$Setting{option}->{limit}->{version} = undef;

#		phase name for limited action
#$Setting{option}->{limit}->{action} = undef;


#### Update Phases Sepcification ####
# phase sequence
#     each item must be defined as key of %Phase.
#$Setting{phase}->{sequence} = [qw(download extract build install)];

# custom phase specifier
#    built-in specifier:
#        \&PhaseSpecifier4General
#            install ClamAV to /usr/local/ from tar.gz file.
#        \&PhaseSpecifier4ClamAV4ClamXav
#            install ClamAV to /usr/local/clamXav/ from tar.gz file.
#            change owner and group of some files or directories.
#        \&PhaseSpecifier4PkgOnDmg
#            install something from pkg file in dmg file.
#            (for Mac OS X)
#        \&PhaseSpecifier4ClamavUpdate
#            install clamav-update to /usr/local/ from tar.gz file.
#        \&PhaseSpecifier4ClamavUpdate4ClamXav
#            install clamav-update to /usr/local/clamXav/ from tar.gz file.
#        (see clamav-update.pl for detail.)
#    You can use your no-name function.
#        ex) sub { ... }
#        See PhaseSpecifier4General and PhaseSpecifier4ClamAV4ClamXav definition
#        on clamav-update.pl. They are good samples.
#$Setting{phase}->{specifier} = \&PhaseSpecifier4ClamAV4ClamXav;


#### DO NOT EDIT ####
1;