include $(TOPDIR)/rules.mk
PKG_NAME:=clamav
-PKG_VERSION:=0.98.7
+PKG_VERSION:=0.99.2
PKG_RELEASE:=1
PKG_LICENSE:=GPL-2.0
-PKG_MAINTAINER:=Marko Ratkaj <marko.ratkaj@sartura.hr>
+PKG_MAINTAINER:=Marko Ratkaj <marko.ratkaj@sartura.hr> \
+ Lucian Cristian <lucian.cristian@gmail.com>
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz
-PKG_SOURCE_URL:=http://sourceforge.net/projects/clamav/files/clamav/$(PKG_VERSION)/
-PKG_MD5SUM:=157c601161da1c2d5a0e48ea1b49e067
+PKG_SOURCE_URL:=https://www.clamav.net/downloads/production/
+PKG_HASH:=167bd6a13e05ece326b968fdb539b05c2ffcfef6018a274a10aeda85c2c0027a
PKG_BUILD_PARALLEL:=1
PKG_INSTALL:=1
define Package/clamav/Default
SECTION:=net
- DEPENDS:=+libpthread +uclibcxx +zlib +libcurl +libopenssl
+ DEPENDS:=+libpthread +uclibcxx +zlib +libcurl +libopenssl +libltdl +libpcre +USE_MUSL:musl-fts
CATEGORY:=Network
SUBMENU:=Web Servers/Proxies
TITLE:=ClamAV
CONFIGURE_VARS += \
INCLUDES="" \
CXXFLAGS="$$$$CXXFLAGS -fno-rtti" \
- LIBS="-lpthread" \
+ $(if $(CONFIG_USE_MUSL),LIBS="-lpthread -lfts",LIBS="-lpthread") \
define Build/Configure
$(call Build/Configure/Default, \
--exec-prefix=/usr/ \
--disable-xml \
--disable-bzip2 \
- --enable-ltdl-install \
--with-user nobody \
--with-group nogroup \
)
option LocalSocket '/var/run/clamav/clamd.sock'
option User 'nobody'
option ExitOnOOM 'yes'
+ option DatabaseDirectory '/usr/share/clamav'
'MaxFileSize:string' \
'LocalSocket:string' \
'User:string' \
- 'ExitOnOOM:string'
+ 'ExitOnOOM:string' \
+ 'DatabaseDirectory:string'
}
start_service() {
StreamMaxPort MaxThreads ReadTimeout CommandReadTimeout MaxDirectoryRecursion \
FollowFileSymlinks FollowDirectorySymlinks SelfCheck DetectPUA ScanPE DisableCertCheck \
ScanELF DetectBrokenExecutables ScanOLE2 ScanPDF ScanSWF ScanMail ScanPartialMessages \
- ScanArchive TemporaryDirectory ArchiveBlockEncrypted MaxFileSize LocalSocket User
+ ScanArchive TemporaryDirectory ArchiveBlockEncrypted MaxFileSize LocalSocket User \
+ DatabaseDirectory
validate_clamav_section clamav || {
echo "validation failed"
return 1
}
- mkdir -p /usr/share/clamav
+ mkdir -p $DatabaseDirectory
mkdir -p /etc/clamav/
mkdir -p /var/run/clamav/
chmod a+rw /var/run/clamav
echo "LocalSocket " $LocalSocket >> $CLAMD_CONFIGFILE
echo "User " $User >> $CLAMD_CONFIGFILE
echo "ExitOnOOM " $ExitOnOOM >> $CLAMD_CONFIGFILE
+ echo "DatabaseDirectory " $DatabaseDirectory >> $CLAMD_CONFIGFILE
procd_open_instance
procd_set_param command $PROG -c $CLAMD_CONFIGFILE
option NotifyClamd '/etc/clamav/clamd.conf'
option DatabaseOwner 'root'
option CompressLocalDatabase 'yes'
+ option DatabaseDirectory '/usr/share/clamav'
'DatabaseMirror:string' \
'NotifyClamd:string' \
'DatabaseOwner:string' \
- 'CompressLocalDatabase:string:'
+ 'CompressLocalDatabase:string' \
+ 'DatabaseDirectory:string:'
}
start_service() {
- local freshclam_config_file UpdateLogFile DatabaseOwner NotifyClamd DatabaseMirror
+ local freshclam_config_file UpdateLogFile DatabaseOwner NotifyClamd DatabaseMirror \
+ DatabaseDirectory
validate_freshclam_section freshclam || {
echo "validation failed"
[ -f /tmp/freshclam.pid ] && echo "already running" && return 0
- mkdir -p /usr/share/clamav
+ mkdir -p $DatabaseDirectory
mkdir -p /etc/clamav
touch /tmp/freshclam.log
touch /tmp/freshclam.pid
echo "NotifyClamd " $NotifyClamd >> $FRESHCLAM_CONFIGFILE
echo "DatabaseOwner " $DatabaseOwner >> $FRESHCLAM_CONFIGFILE
echo "CompressLocalDatabase " $CompressLocalDatabase >> $FRESHCLAM_CONFIGFILE
+ echo "DatabaseDirectory " $DatabaseDirectory >> $FRESHCLAM_CONFIGFILE
procd_open_instance
procd_set_param command $PROG -d --config-file=$FRESHCLAM_CONFIGFILE -p /tmp/freshclam.pid --no-warnings
--- a/clamdscan/proto.c
+++ b/clamdscan/proto.c
-@@ -55,6 +55,7 @@
+@@ -59,6 +59,7 @@
#include "shared/misc.h"
#include "shared/clamdcom.h"