Package: dansguardian Version: 2.10.1.1-5 Severity: serious Tags: patch Since the last clamav update (0.94.4) the ABI of the library changed and all users are now required to invoke cl_initialize_crypto() otherwise the signature database can't be loaded and thus libclamav library remains useless. This affects the "plugname = 'clamav'" method of the package.
Sebastian
>From 75bf67fe1568ffcbb488f4e7026883b39dd1a3eb Mon Sep 17 00:00:00 2001 From: Sebastian Andrzej Siewior <sebast...@breakpoint.cc> Date: Wed, 2 Jul 2014 22:06:30 +0200 Subject: [PATCH] update dansguardian Signed-off-by: Sebastian Andrzej Siewior <sebast...@breakpoint.cc> --- debian/control | 2 +- debian/patches/00list | 1 + debian/patches/51_clamav098.4_support.dpatch | 21 +++++++++++++++++++++ 3 files changed, 23 insertions(+), 1 deletion(-) create mode 100644 debian/patches/51_clamav098.4_support.dpatch diff --git a/debian/control b/debian/control index 3a329b1..1bbe80e 100644 --- a/debian/control +++ b/debian/control @@ -6,7 +6,7 @@ Build-Depends: autotools-dev, debhelper (>= 9), dh-autoreconf, dpatch (>= 2.0.32~), - libclamav-dev (>= 0.90), + libclamav-dev (>= 0.98.4+dfsg-2), libpcre3-dev, zlib1g-dev Standards-Version: 3.9.2 diff --git a/debian/patches/00list b/debian/patches/00list index b4abadc..61a9396 100644 --- a/debian/patches/00list +++ b/debian/patches/00list @@ -2,6 +2,7 @@ 07_fix_config_paths.dpatch 11_FixOptionContainer.cpp_on_arm.dpatch 50_clamav095_support.dpatch +51_clamav098.4_support.dpatch 60_add_gcc4.4_support.dpatch 65-fix_clamdsocket.dpatch 70-gcc4.6.dpatch diff --git a/debian/patches/51_clamav098.4_support.dpatch b/debian/patches/51_clamav098.4_support.dpatch new file mode 100644 index 0000000..3034807 --- /dev/null +++ b/debian/patches/51_clamav098.4_support.dpatch @@ -0,0 +1,21 @@ +#! /bin/sh /usr/share/dpatch/dpatch-run +## 51_clamav098.4_support.dpatch by Sebastian Andrzej Siewior <sebast...@breakpoint.cc> +## +## All lines beginning with `## DP:' are a description of the patch. +## DP: Adds support for clamav 0.98.4, there were some ABI changes. +## DP: It is now required to invoke cl_initialize_crypto() before the lib is +## DP: and it should be invoked before any threads are created + +@DPATCH@ +diff --git a/src/contentscanners/clamav.cpp b/src/contentscanners/clamav.cpp +index 80915d5..2499334 100644 +--- a/src/contentscanners/clamav.cpp ++++ b/src/contentscanners/clamav.cpp +@@ -266,6 +266,7 @@ int clamavinstance::init(void* args) + #endif + + #ifdef CL_INIT_DEFAULT ++ cl_initialize_crypto(); + if ( (rc = cl_init(CL_INIT_DEFAULT)) != CL_SUCCESS ) { + return DGCS_ERROR; + } -- 1.7.10.4