* [gentoo-commits] repo/gentoo:master commit in: app-antivirus/clamav/, app-antivirus/clamav/files/
@ 2017-01-27 19:44 Austin English
0 siblings, 0 replies; 15+ messages in thread
From: Austin English @ 2017-01-27 19:44 UTC (permalink / raw
To: gentoo-commits
commit: bcbbdee31e7cc94d9262a9df057db8fdd31d2f47
Author: Austin English <wizardedit <AT> gentoo <DOT> org>
AuthorDate: Fri Jan 27 19:36:06 2017 +0000
Commit: Austin English <wizardedit <AT> gentoo <DOT> org>
CommitDate: Fri Jan 27 19:44:13 2017 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=bcbbdee3
app-antivirus/clamav: use upstream fix for broken zlib check instead of disabling it completely
Ack'ed by radhermit
Gentoo-Bug: https://bugs.gentoo.org/604650
Package-Manager: Portage-2.3.2, Repoman-2.3.1
app-antivirus/clamav/clamav-0.99.1.ebuild | 7 +++++--
app-antivirus/clamav/clamav-0.99.2.ebuild | 5 +++--
app-antivirus/clamav/clamav-0.99.ebuild | 5 ++++-
.../clamav/files/clamav-configure-zlib.patch | 22 ++++++++++++++++++++++
4 files changed, 34 insertions(+), 5 deletions(-)
diff --git a/app-antivirus/clamav/clamav-0.99.1.ebuild b/app-antivirus/clamav/clamav-0.99.1.ebuild
index 4f16064..be2a73a 100644
--- a/app-antivirus/clamav/clamav-0.99.1.ebuild
+++ b/app-antivirus/clamav/clamav-0.99.1.ebuild
@@ -1,10 +1,10 @@
-# Copyright 1999-2016 Gentoo Foundation
+# Copyright 1999-2017 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Id$
EAPI=5
-inherit eutils flag-o-matic user systemd
+inherit autotools eutils flag-o-matic user systemd
DESCRIPTION="Clam Anti-Virus Scanner"
HOMEPAGE="http://www.clamav.net/"
@@ -45,6 +45,9 @@ pkg_setup() {
src_prepare() {
use ppc64 && append-flags -mminimal-toc
use uclibc && export ac_cv_type_error_t=yes
+
+ epatch "${FILESDIR}"/${PN}-configure-zlib.patch # 604650, fixed in upstream HEAD
+ eautoconf
}
src_configure() {
diff --git a/app-antivirus/clamav/clamav-0.99.2.ebuild b/app-antivirus/clamav/clamav-0.99.2.ebuild
index 5ab484b..1ce8399 100644
--- a/app-antivirus/clamav/clamav-0.99.2.ebuild
+++ b/app-antivirus/clamav/clamav-0.99.2.ebuild
@@ -4,7 +4,7 @@
EAPI=5
-inherit eutils flag-o-matic user systemd
+inherit autotools eutils flag-o-matic user systemd
DESCRIPTION="Clam Anti-Virus Scanner"
HOMEPAGE="http://www.clamav.net/"
@@ -48,13 +48,14 @@ src_prepare() {
use uclibc && export ac_cv_type_error_t=yes
epatch "${FILESDIR}"/${P}-gcc-6.patch #592432
+ epatch "${FILESDIR}"/${PN}-configure-zlib.patch # 604650, fixed in upstream HEAD
+ eautoconf
}
src_configure() {
econf \
--disable-experimental \
--disable-fanotify \
- --disable-zlib-vcheck \
--enable-id-check \
--with-dbdir="${EPREFIX}"/var/lib/clamav \
--with-system-tommath \
diff --git a/app-antivirus/clamav/clamav-0.99.ebuild b/app-antivirus/clamav/clamav-0.99.ebuild
index 144082f..b77f3e7 100644
--- a/app-antivirus/clamav/clamav-0.99.ebuild
+++ b/app-antivirus/clamav/clamav-0.99.ebuild
@@ -4,7 +4,7 @@
EAPI=5
-inherit eutils flag-o-matic user systemd
+inherit autotools eutils flag-o-matic user systemd
DESCRIPTION="Clam Anti-Virus Scanner"
HOMEPAGE="http://www.clamav.net/"
@@ -45,6 +45,9 @@ pkg_setup() {
src_prepare() {
use ppc64 && append-flags -mminimal-toc
use uclibc && export ac_cv_type_error_t=yes
+
+ epatch "${FILESDIR}"/${PN}-configure-zlib.patch # 604650, fixed in upstream HEAD
+ eautoconf
}
src_configure() {
diff --git a/app-antivirus/clamav/files/clamav-configure-zlib.patch b/app-antivirus/clamav/files/clamav-configure-zlib.patch
new file mode 100644
index 00000000..8d1f4e6
--- /dev/null
+++ b/app-antivirus/clamav/files/clamav-configure-zlib.patch
@@ -0,0 +1,22 @@
+commit f0bcd186190fe6e67b3f0eaaceb7a99aa6a98865
+Author: Steven Morgan <stevmorg@cisco.com>
+Date: Thu Jan 5 12:30:35 2017 -0500
+
+ bb111711 - fix zlib version check - patch by Daniel J. Luke.
+
+diff --git a/m4/reorganization/libs/libz.m4 b/m4/reorganization/libs/libz.m4
+index b5c7414..f7b67ca 100644
+--- a/m4/reorganization/libs/libz.m4
++++ b/m4/reorganization/libs/libz.m4
+@@ -29,9 +29,9 @@ then
+ AC_MSG_ERROR([Please install zlib and zlib-devel packages])
+ else
+
+- vuln=`grep "ZLIB_VERSION \"1.2.0" $ZLIB_HOME/include/zlib.h`
++ vuln=`grep "ZLIB_VERSION \"1.2.0\"" $ZLIB_HOME/include/zlib.h`
+ if test -z "$vuln"; then
+- vuln=`grep "ZLIB_VERSION \"1.2.1" $ZLIB_HOME/include/zlib.h`
++ vuln=`grep "ZLIB_VERSION \"1.2.1\"" $ZLIB_HOME/include/zlib.h`
+ fi
+
+ if test -n "$vuln"; then
^ permalink raw reply related [flat|nested] 15+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: app-antivirus/clamav/, app-antivirus/clamav/files/
@ 2017-11-23 22:30 Robin H. Johnson
0 siblings, 0 replies; 15+ messages in thread
From: Robin H. Johnson @ 2017-11-23 22:30 UTC (permalink / raw
To: gentoo-commits
commit: e33445233f097eadbbb1acf0861e9a41593bc593
Author: coyote <coyote <AT> bks <DOT> tv>
AuthorDate: Thu Nov 23 01:52:52 2017 +0000
Commit: Robin H. Johnson <robbat2 <AT> gentoo <DOT> org>
CommitDate: Thu Nov 23 22:30:48 2017 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=e3344523
app-antivirus/clamav: fix compatibility with >=zlib-1.2.9
Include patch from Marc Deslauriers <marc.deslauriers <AT> canonical.com> to
fix compatibility with zlib newer 1.2.9 and enable test in ebuild (now
it work correctly).
(commit message cleaned up by Robin H. Johnson <robbat2 <AT> gentoo.org>)
Bug: https://bugs.launchpad.net/ubuntu/+source/clamav/+bug/1692073
Closes: https://bugs.gentoo.org/638544
(cherry picked from commit 535d9b43c3472916bfb977921f0a10f2cc02dc4b)
Signed-off-by: Robin H. Johnson <robbat2 <AT> gentoo.org>
app-antivirus/clamav/Manifest | 2 +-
app-antivirus/clamav/clamav-0.99.2-r1.ebuild | 6 ++-
.../clamav/files/clamav-0.99.2-bytecode_api.patch | 50 ++++++++++++++++++++++
3 files changed, 56 insertions(+), 2 deletions(-)
diff --git a/app-antivirus/clamav/Manifest b/app-antivirus/clamav/Manifest
index 18a55f717c3..7c1733ae48b 100644
--- a/app-antivirus/clamav/Manifest
+++ b/app-antivirus/clamav/Manifest
@@ -1,4 +1,4 @@
DIST clamav-0.98.7.tar.gz 15118851 SHA256 282417b707740de13cd8f18d4cbca9ddd181cf96b444db2cad98913a5153e272 SHA512 acf01961472c13ccb219420cc3fa3c3e6f8a733edef371dbc04ce5867900aa1535e956ec8ad50d31c8f872a0a1d79fcccac944cd86e29ecdfa4af18f7fd5afb9 WHIRLPOOL c9f2e6f52f07f68bdcccf55ca1aab0bf3deaa6963279459d64ecca076a9ed0ef53c25996b2b673e9746833822df24689a9fab0654064c5ee6ed372a86966fbb6
DIST clamav-0.99.1.tar.gz 15990867 SHA256 e144689122d3f91293808c82cbb06b7d3ac9eca7ae29564c5d148ffe7b25d58a SHA512 9beb5c0ebff2aef741bb27811c1f10a7cd5da354ff67272ee8994d87c95e272a5983105af0fe1a734e1fa99f112dc4dddd9d82074a0df6715814817f85a45f4f WHIRLPOOL e2afd7b7d377c1a1af802e780839bb21bcd318035ac858b6cb11545db3673d3f74ba3159b837238982248720379f98ab51e279a8636bbea89331136891e88e5d
-DIST clamav-0.99.2.tar.gz 16067497 SHA256 167bd6a13e05ece326b968fdb539b05c2ffcfef6018a274a10aeda85c2c0027a SHA512 7744ba8a344b163cf98e9737cddfd25d2120b34ee9c4518380e028c9ec3cd50127b198b0dfa9fde30f5ce9aab0c0e6384712fbc11287e77d16ce052fd7b6ac44 WHIRLPOOL 371dc56c3ffa0ff40381d451687a9331a0587943a048604c6667e1018fbfe5559b023654d29f47505bd69a1a44f88adfb5b93b7c55c8cbc6f0bbfcbf836bf631
+DIST clamav-0.99.2.tar.gz 16067497 BLAKE2B 4155e3125ccc45cc6828033f207b6b8d3514253dfb8156428ad4096c0901d5a8500f9dd253b8f40afdc49a6039b647627868f75d51829ab7bd247ada5f3b8383 SHA512 7744ba8a344b163cf98e9737cddfd25d2120b34ee9c4518380e028c9ec3cd50127b198b0dfa9fde30f5ce9aab0c0e6384712fbc11287e77d16ce052fd7b6ac44
DIST clamav-0.99.tar.gz 15968038 SHA256 d2792c8cfadd685fffc40b2199679628815df031fd3149ccf961649fc8787ea9 SHA512 328e66fa412ba61f5e44c839b254c7a84d2ce7821fda6cf29e4ee9532c06e45bdec62f202ca561223e984fff170bfd8280e5cc8e306c09a3017b17e7db3bbf56 WHIRLPOOL 696b425c0d3a6639d627e6dba000a57c4e532232f9f42a564a992c0b459d8041a1947b09548d99b621a5685c78d91045adf4b61731242f55eda2b8d5150fc8b8
diff --git a/app-antivirus/clamav/clamav-0.99.2-r1.ebuild b/app-antivirus/clamav/clamav-0.99.2-r1.ebuild
index 579249e1388..a44017407cf 100644
--- a/app-antivirus/clamav/clamav-0.99.2-r1.ebuild
+++ b/app-antivirus/clamav/clamav-0.99.2-r1.ebuild
@@ -7,7 +7,6 @@ inherit autotools eutils flag-o-matic user systemd
DESCRIPTION="Clam Anti-Virus Scanner"
HOMEPAGE="http://www.clamav.net/"
-# no longer on sf.net from 0.99.2 onwards
SRC_URI="https://www.clamav.net/downloads/production/${P}.tar.gz"
LICENSE="GPL-2"
@@ -40,6 +39,7 @@ PATCHES=(
"${FILESDIR}"/${P}-gcc-6.patch
"${FILESDIR}"/${P}-tinfo.patch
"${FILESDIR}"/${PN}-0.99-zlib.patch
+ "${FILESDIR}"/${P}-bytecode_api.patch
)
pkg_setup() {
@@ -142,6 +142,10 @@ src_install() {
prune_libtool_files --all
}
+src_test() {
+ emake quick-check
+}
+
pkg_postinst() {
if use milter ; then
elog "For simple instructions how to setup the clamav-milter read the"
diff --git a/app-antivirus/clamav/files/clamav-0.99.2-bytecode_api.patch b/app-antivirus/clamav/files/clamav-0.99.2-bytecode_api.patch
new file mode 100644
index 00000000000..d6cd5264ed7
--- /dev/null
+++ b/app-antivirus/clamav/files/clamav-0.99.2-bytecode_api.patch
@@ -0,0 +1,50 @@
+Description: fix compatibility with zlib 1.2.9 and newer
+Author: Marc Deslauriers <marc.deslauriers@canonical.com>
+Bug-Ubuntu: https://bugs.launchpad.net/ubuntu/+source/clamav/+bug/1692073
+
+--- a/libclamav/bytecode_api.c 2017-08-08 15:20:06.651685637 -0400
++++ b/libclamav/bytecode_api.c 2017-08-15 15:45:14.645714766 -0400
+@@ -811,8 +811,20 @@ int32_t cli_bcapi_inflate_init(struct cl
+ cli_dbgmsg("bytecode api: inflate_init: invalid buffers!\n");
+ return -1;
+ }
+- memset(&stream, 0, sizeof(stream));
+- ret = inflateInit2(&stream, windowBits);
++
++ b = cli_realloc(ctx->inflates, sizeof(*ctx->inflates)*n);
++ if (!b) {
++ return -1;
++ }
++ ctx->inflates = b;
++ ctx->ninflates = n;
++ b = &b[n-1];
++
++ b->from = from;
++ b->to = to;
++ b->needSync = 0;
++ memset(&b->stream, 0, sizeof(stream));
++ ret = inflateInit2(&b->stream, windowBits);
+ switch (ret) {
+ case Z_MEM_ERROR:
+ cli_dbgmsg("bytecode api: inflateInit2: out of memory!\n");
+@@ -829,20 +841,6 @@ int32_t cli_bcapi_inflate_init(struct cl
+ cli_dbgmsg("bytecode api: inflateInit2: unknown error %d\n", ret);
+ return -1;
+ }
+-
+- b = cli_realloc(ctx->inflates, sizeof(*ctx->inflates)*n);
+- if (!b) {
+- inflateEnd(&stream);
+- return -1;
+- }
+- ctx->inflates = b;
+- ctx->ninflates = n;
+- b = &b[n-1];
+-
+- b->from = from;
+- b->to = to;
+- b->needSync = 0;
+- memcpy(&b->stream, &stream, sizeof(stream));
+ return n-1;
+ }
+
^ permalink raw reply related [flat|nested] 15+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: app-antivirus/clamav/, app-antivirus/clamav/files/
@ 2017-12-07 15:29 Craig Andrews
0 siblings, 0 replies; 15+ messages in thread
From: Craig Andrews @ 2017-12-07 15:29 UTC (permalink / raw
To: gentoo-commits
commit: ed2ec9f4ebd6b7cf6c8bcbf06fcbb46d826d6d01
Author: Craig Andrews <candrews <AT> gentoo <DOT> org>
AuthorDate: Thu Nov 30 16:19:34 2017 +0000
Commit: Craig Andrews <candrews <AT> gentoo <DOT> org>
CommitDate: Thu Dec 7 15:28:48 2017 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=ed2ec9f4
app-antivirus/clamav: Fix SIGSEGV on 64bit archs
Suggested-by: Jiří Moravec <qjim <AT> volny.cz>
Bug: https://bugzilla.clamav.net/show_bug.cgi?id=11965
Closes: https://bugs.gentoo.org/638932
Closes: https://bugs.gentoo.org/616564
Closes: https://github.com/gentoo/gentoo/pull/6358
Package-Manager: Portage-2.3.16, Repoman-2.3.6
app-antivirus/clamav/Manifest | 2 +-
app-antivirus/clamav/clamav-0.99.2-r2.ebuild | 159 +++++++++++++++++++++
.../clamav-0.99.2-pcre2-compile-erroffset.patch | 12 ++
3 files changed, 172 insertions(+), 1 deletion(-)
diff --git a/app-antivirus/clamav/Manifest b/app-antivirus/clamav/Manifest
index b2d1c7d6d75..2f052faf2fc 100644
--- a/app-antivirus/clamav/Manifest
+++ b/app-antivirus/clamav/Manifest
@@ -1,4 +1,4 @@
DIST clamav-0.98.7.tar.gz 15118851 BLAKE2B 5fffd1896645b5e77f26819eb16e1d9e9cbb8a71d5627aa31ce009b37172fe5c9fff77d6646940c8065c856cf1a74737ffafc79d4e288b8d1202620fe568d1bc SHA512 acf01961472c13ccb219420cc3fa3c3e6f8a733edef371dbc04ce5867900aa1535e956ec8ad50d31c8f872a0a1d79fcccac944cd86e29ecdfa4af18f7fd5afb9
-DIST clamav-0.99.1.tar.gz 15990867 SHA256 e144689122d3f91293808c82cbb06b7d3ac9eca7ae29564c5d148ffe7b25d58a SHA512 9beb5c0ebff2aef741bb27811c1f10a7cd5da354ff67272ee8994d87c95e272a5983105af0fe1a734e1fa99f112dc4dddd9d82074a0df6715814817f85a45f4f WHIRLPOOL e2afd7b7d377c1a1af802e780839bb21bcd318035ac858b6cb11545db3673d3f74ba3159b837238982248720379f98ab51e279a8636bbea89331136891e88e5d
+DIST clamav-0.99.1.tar.gz 15990867 BLAKE2B 3b5d046c0b4e965ff26bea3b6b416e261ce86c449d092fd1debf52e4df5e5448039f7769f94d5817c9754100d296a0eb37ca5289f3cb5af8e58be9e93ef59a18 SHA512 9beb5c0ebff2aef741bb27811c1f10a7cd5da354ff67272ee8994d87c95e272a5983105af0fe1a734e1fa99f112dc4dddd9d82074a0df6715814817f85a45f4f
DIST clamav-0.99.2.tar.gz 16067497 BLAKE2B 4155e3125ccc45cc6828033f207b6b8d3514253dfb8156428ad4096c0901d5a8500f9dd253b8f40afdc49a6039b647627868f75d51829ab7bd247ada5f3b8383 SHA512 7744ba8a344b163cf98e9737cddfd25d2120b34ee9c4518380e028c9ec3cd50127b198b0dfa9fde30f5ce9aab0c0e6384712fbc11287e77d16ce052fd7b6ac44
DIST clamav-0.99.tar.gz 15968038 BLAKE2B d3690f08215b8d870e8fb11b11eea6bb92a2eb4b7edddb037ed2f0e8c823a6c5856a3824716cd04f02ec985188ccd36ae41c5077df09ed1948281012dd28ef8c SHA512 328e66fa412ba61f5e44c839b254c7a84d2ce7821fda6cf29e4ee9532c06e45bdec62f202ca561223e984fff170bfd8280e5cc8e306c09a3017b17e7db3bbf56
diff --git a/app-antivirus/clamav/clamav-0.99.2-r2.ebuild b/app-antivirus/clamav/clamav-0.99.2-r2.ebuild
new file mode 100644
index 00000000000..136dd3847d5
--- /dev/null
+++ b/app-antivirus/clamav/clamav-0.99.2-r2.ebuild
@@ -0,0 +1,159 @@
+# Copyright 1999-2017 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+
+inherit autotools eutils flag-o-matic user systemd
+
+DESCRIPTION="Clam Anti-Virus Scanner"
+HOMEPAGE="http://www.clamav.net/"
+SRC_URI="https://www.clamav.net/downloads/production/${P}.tar.gz"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~ppc ~ppc64 ~sparc ~x86 ~x86-fbsd ~amd64-linux ~x86-linux ~ppc-macos ~sparc-solaris ~x86-solaris"
+IUSE="bzip2 clamdtop iconv ipv6 libressl milter metadata-analysis-api selinux static-libs uclibc"
+
+CDEPEND="bzip2? ( app-arch/bzip2 )
+ clamdtop? ( sys-libs/ncurses:0 )
+ iconv? ( virtual/libiconv )
+ metadata-analysis-api? ( dev-libs/json-c )
+ milter? ( || ( mail-filter/libmilter mail-mta/sendmail ) )
+ dev-libs/libtommath
+ >=sys-libs/zlib-1.2.2
+ !libressl? ( dev-libs/openssl:0= )
+ libressl? ( dev-libs/libressl:0= )
+ sys-devel/libtool
+ || ( dev-libs/libpcre2 >dev-libs/libpcre-6 )
+ !!<app-antivirus/clamav-0.99"
+# hard block clamav < 0.99 due to linking problems Bug #567680
+# openssl is now *required* see this link as to why
+# http://blog.clamav.net/2014/02/introducing-openssl-as-dependency-to.html
+DEPEND="${CDEPEND}
+ virtual/pkgconfig"
+RDEPEND="${CDEPEND}
+ selinux? ( sec-policy/selinux-clamav )"
+
+DOCS=( AUTHORS BUGS ChangeLog FAQ INSTALL NEWS README UPGRADE )
+PATCHES=(
+ "${FILESDIR}"/${P}-gcc-6.patch
+ "${FILESDIR}"/${P}-tinfo.patch
+ "${FILESDIR}"/${PN}-0.99-zlib.patch
+ "${FILESDIR}"/${P}-bytecode_api.patch
+ "${FILESDIR}"/${P}-pcre2-compile-erroffset.patch
+)
+
+pkg_setup() {
+ enewgroup clamav
+ enewuser clamav -1 -1 /dev/null clamav
+}
+
+src_prepare() {
+ default
+
+ eautoconf
+}
+
+src_configure() {
+ use ppc64 && append-flags -mminimal-toc
+ use uclibc && export ac_cv_type_error_t=yes
+
+ econf \
+ $(use_enable bzip2) \
+ $(use_enable clamdtop) \
+ $(use_enable ipv6) \
+ $(use_enable milter) \
+ $(use_enable static-libs static) \
+ $(use_with iconv) \
+ $(use_with metadata-analysis-api libjson /usr) \
+ --cache-file="${S}"/config.cache \
+ --disable-experimental \
+ --disable-gcc-vcheck \
+ --disable-zlib-vcheck \
+ --enable-id-check \
+ --with-dbdir="${EPREFIX}"/var/lib/clamav \
+ --with-system-tommath \
+ --with-zlib="${EPREFIX}"/usr
+}
+
+src_install() {
+ default
+
+ rm -rf "${ED}"/var/lib/clamav
+ newinitd "${FILESDIR}"/clamd.initd-r6 clamd
+ newconfd "${FILESDIR}"/clamd.conf-r1 clamd
+
+ systemd_dotmpfilesd "${FILESDIR}/tmpfiles.d/clamav.conf"
+ systemd_newunit "${FILESDIR}/clamd_at.service" "clamd@.service"
+ systemd_dounit "${FILESDIR}/clamd.service"
+ systemd_dounit "${FILESDIR}/freshclamd.service"
+
+ keepdir /var/lib/clamav
+ fowners clamav:clamav /var/lib/clamav
+ keepdir /var/log/clamav
+ fowners clamav:clamav /var/log/clamav
+
+ dodir /etc/logrotate.d
+ insinto /etc/logrotate.d
+ newins "${FILESDIR}"/clamav.logrotate clamav
+
+ # Modify /etc/{clamd,freshclam}.conf to be usable out of the box
+ sed -i -e "s:^\(Example\):\# \1:" \
+ -e "s:.*\(PidFile\) .*:\1 ${EPREFIX}/var/run/clamav/clamd.pid:" \
+ -e "s:.*\(LocalSocket\) .*:\1 ${EPREFIX}/var/run/clamav/clamd.sock:" \
+ -e "s:.*\(User\) .*:\1 clamav:" \
+ -e "s:^\#\(LogFile\) .*:\1 ${EPREFIX}/var/log/clamav/clamd.log:" \
+ -e "s:^\#\(LogTime\).*:\1 yes:" \
+ -e "s:^\#\(AllowSupplementaryGroups\).*:\1 yes:" \
+ "${ED}"/etc/clamd.conf.sample || die
+ sed -i -e "s:^\(Example\):\# \1:" \
+ -e "s:.*\(PidFile\) .*:\1 ${EPREFIX}/var/run/clamav/freshclam.pid:" \
+ -e "s:.*\(DatabaseOwner\) .*:\1 clamav:" \
+ -e "s:^\#\(UpdateLogFile\) .*:\1 ${EPREFIX}/var/log/clamav/freshclam.log:" \
+ -e "s:^\#\(NotifyClamd\).*:\1 ${EPREFIX}/etc/clamd.conf:" \
+ -e "s:^\#\(ScriptedUpdates\).*:\1 yes:" \
+ -e "s:^\#\(AllowSupplementaryGroups\).*:\1 yes:" \
+ "${ED}"/etc/freshclam.conf.sample || die
+
+ if use milter ; then
+ # MilterSocket one to include ' /' because there is a 2nd line for
+ # inet: which we want to leave
+ dodoc "${FILESDIR}"/clamav-milter.README.gentoo
+ sed -i -e "s:^\(Example\):\# \1:" \
+ -e "s:.*\(PidFile\) .*:\1 ${EPREFIX}/var/run/clamav/clamav-milter.pid:" \
+ -e "s+^\#\(ClamdSocket\) .*+\1 unix:${EPREFIX}/var/run/clamav/clamd.sock+" \
+ -e "s:.*\(User\) .*:\1 clamav:" \
+ -e "s+^\#\(MilterSocket\) /.*+\1 unix:${EPREFIX}/var/run/clamav/clamav-milter.sock+" \
+ -e "s:^\#\(AllowSupplementaryGroups\).*:\1 yes:" \
+ -e "s:^\#\(LogFile\) .*:\1 ${EPREFIX}/var/log/clamav/clamav-milter.log:" \
+ "${ED}"/etc/clamav-milter.conf.sample || die
+ cat >> "${ED}"/etc/conf.d/clamd <<-EOF
+ MILTER_NICELEVEL=19
+ START_MILTER=no
+ EOF
+
+ systemd_newunit "${FILESDIR}/clamav-milter.service-r1" clamav-milter.service
+ fi
+
+ for i in clamd freshclam clamav-milter
+ do
+ [[ -f "${D}"/etc/"${i}".conf.sample ]] && mv "${D}"/etc/"${i}".conf{.sample,}
+ done
+
+ prune_libtool_files --all
+}
+
+src_test() {
+ emake quick-check
+}
+
+pkg_postinst() {
+ if use milter ; then
+ elog "For simple instructions how to setup the clamav-milter read the"
+ elog "clamav-milter.README.gentoo in /usr/share/doc/${PF}"
+ fi
+ if test -z $(find "${ROOT}"var/lib/clamav -maxdepth 1 -name 'main.c*' -print -quit) ; then
+ ewarn "You must run freshclam manually to populate the virus database files"
+ ewarn "before starting clamav for the first time.\n"
+ fi
+}
diff --git a/app-antivirus/clamav/files/clamav-0.99.2-pcre2-compile-erroffset.patch b/app-antivirus/clamav/files/clamav-0.99.2-pcre2-compile-erroffset.patch
new file mode 100644
index 00000000000..1ee55171afb
--- /dev/null
+++ b/app-antivirus/clamav/files/clamav-0.99.2-pcre2-compile-erroffset.patch
@@ -0,0 +1,12 @@
+--- clamav-0.99.2/libclamav/regex_pcre.c~ 2017-11-28 14:40:56.484208243 +0100
++++ clamav-0.99.2/libclamav/regex_pcre.c 2017-11-28 14:41:07.301207800 +0100
+@@ -112,7 +112,8 @@ int cli_pcre_addoptions(struct cli_pcre_
+ #if USING_PCRE2
+ int cli_pcre_compile(struct cli_pcre_data *pd, long long unsigned match_limit, long long unsigned match_limit_recursion, unsigned int options, int opt_override)
+ {
+- int errornum, erroffset;
++ int errornum;
++ size_t erroffset;
+ pcre2_general_context *gctx;
+ pcre2_compile_context *cctx;
+
^ permalink raw reply related [flat|nested] 15+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: app-antivirus/clamav/, app-antivirus/clamav/files/
@ 2018-01-26 15:23 Thomas Deutschmann
0 siblings, 0 replies; 15+ messages in thread
From: Thomas Deutschmann @ 2018-01-26 15:23 UTC (permalink / raw
To: gentoo-commits
commit: 194c79e18139961a9411a22566eb29d764081ef2
Author: Thomas Deutschmann <whissi <AT> gentoo <DOT> org>
AuthorDate: Fri Jan 26 15:23:29 2018 +0000
Commit: Thomas Deutschmann <whissi <AT> gentoo <DOT> org>
CommitDate: Fri Jan 26 15:23:43 2018 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=194c79e1
app-antivirus/clamav: rev bump to fix fd leak in cli_scanscript
Package-Manager: Portage-2.3.20, Repoman-2.3.6
...lamav-0.99.3.ebuild => clamav-0.99.3-r1.ebuild} | 1 +
...mav-0.99.3-fix-fd-leaks-in-cli_scanscript.patch | 132 +++++++++++++++++++++
2 files changed, 133 insertions(+)
diff --git a/app-antivirus/clamav/clamav-0.99.3.ebuild b/app-antivirus/clamav/clamav-0.99.3-r1.ebuild
similarity index 98%
rename from app-antivirus/clamav/clamav-0.99.3.ebuild
rename to app-antivirus/clamav/clamav-0.99.3-r1.ebuild
index 3a577d05ac2..adb446d1472 100644
--- a/app-antivirus/clamav/clamav-0.99.3.ebuild
+++ b/app-antivirus/clamav/clamav-0.99.3-r1.ebuild
@@ -40,6 +40,7 @@ PATCHES=(
"${FILESDIR}"/${PN}-0.99.2-tinfo.patch
"${FILESDIR}"/${PN}-0.99.2-bytecode_api.patch
"${FILESDIR}"/${PN}-0.99.2-pcre2-compile-erroffset.patch
+ "${FILESDIR}"/${PN}-0.99.3-fix-fd-leaks-in-cli_scanscript.patch
)
pkg_setup() {
diff --git a/app-antivirus/clamav/files/clamav-0.99.3-fix-fd-leaks-in-cli_scanscript.patch b/app-antivirus/clamav/files/clamav-0.99.3-fix-fd-leaks-in-cli_scanscript.patch
new file mode 100644
index 00000000000..a457a71758c
--- /dev/null
+++ b/app-antivirus/clamav/files/clamav-0.99.3-fix-fd-leaks-in-cli_scanscript.patch
@@ -0,0 +1,132 @@
+Author: Manuel Mausz <manuel-clamav@mausz.at>
+
+http://lists.clamav.net/pipermail/clamav-users/2018-January/005687.html
+
+--- clamav-0.99.3/libclamav/scanners.c.orig 2018-01-26 14:35:23.299386703 +0100
++++ clamav-0.99.3/libclamav/scanners.c 2018-01-26 14:47:44.422451335 +0100
+@@ -1342,39 +1342,35 @@
+ return CL_CLEAN;
+ }
+
+- /* dump to disk only if explicitly asked to
+- * or if necessary to check relative offsets,
+- * otherwise we can process just in-memory */
+- if(ctx->engine->keeptmp || (troot && troot->ac_reloff_num > 0)) {
+- if((ret = cli_gentempfd(ctx->engine->tmpdir, &tmpname, &ofd))) {
+- cli_dbgmsg("cli_scanscript: Can't generate temporary file/descriptor\n");
+- return ret;
+- }
+- if (ctx->engine->keeptmp)
+- cli_dbgmsg("cli_scanscript: saving normalized file to %s\n", tmpname);
+- }
+-
+ if(!(normalized = cli_malloc(SCANBUFF + maxpatlen))) {
+ cli_dbgmsg("cli_scanscript: Unable to malloc %u bytes\n", SCANBUFF);
+- free(tmpname);
+ return CL_EMEM;
+ }
+-
+ text_normalize_init(&state, normalized, SCANBUFF + maxpatlen);
+- ret = CL_CLEAN;
+-
+
+ if ((ret = cli_ac_initdata(&tmdata, troot?troot->ac_partsigs:0, troot?troot->ac_lsigs:0, troot?troot->ac_reloff_num:0, CLI_DEFAULT_AC_TRACKLEN))) {
+- free(tmpname);
++ free(normalized);
+ return ret;
+ }
+
+ if ((ret = cli_ac_initdata(&gmdata, groot->ac_partsigs, groot->ac_lsigs, groot->ac_reloff_num, CLI_DEFAULT_AC_TRACKLEN))) {
+ cli_ac_freedata(&tmdata);
+- free(tmpname);
++ free(normalized);
+ return ret;
+ }
+
++ /* dump to disk only if explicitly asked to
++ * or if necessary to check relative offsets,
++ * otherwise we can process just in-memory */
++ if(ctx->engine->keeptmp || (troot && troot->ac_reloff_num > 0)) {
++ if((ret = cli_gentempfd(ctx->engine->tmpdir, &tmpname, &ofd))) {
++ cli_dbgmsg("cli_scanscript: Can't generate temporary file/descriptor\n");
++ goto done;
++ }
++ if (ctx->engine->keeptmp)
++ cli_dbgmsg("cli_scanscript: saving normalized file to %s\n", tmpname);
++ }
++
+ mdata[0] = &tmdata;
+ mdata[1] = &gmdata;
+
+@@ -1388,9 +1384,8 @@
+
+ if (write(ofd, state.out, state.out_pos) == -1) {
+ cli_errmsg("cli_scanscript: can't write to file %s\n",tmpname);
+- close(ofd);
+- free(tmpname);
+- return CL_EWRITE;
++ ret = CL_EWRITE;
++ goto done;
+ }
+ text_normalize_reset(&state);
+ }
+@@ -1409,11 +1404,6 @@
+ funmap(*ctx->fmap);
+ }
+ *ctx->fmap = map;
+-
+- /* If we aren't keeping temps, delete the normalized file after scan. */
+- if(!(ctx->engine->keeptmp))
+- if (cli_unlink(tmpname)) ret = CL_EUNLINK;
+-
+ } else {
+ /* Since the above is moderately costly all in all,
+ * do the old stuff if there's no relative offsets. */
+@@ -1421,11 +1411,8 @@
+ if (troot) {
+ cli_targetinfo(&info, 7, map);
+ ret = cli_ac_caloff(troot, &tmdata, &info);
+- if (ret) {
+- cli_ac_freedata(&tmdata);
+- free(tmpname);
+- return ret;
+- }
++ if (ret)
++ goto done;
+ }
+
+ while(1) {
+@@ -1466,13 +1453,6 @@
+
+ }
+
+- if(ctx->engine->keeptmp) {
+- free(tmpname);
+- if (ofd >= 0)
+- close(ofd);
+- }
+- free(normalized);
+-
+ if(ret != CL_VIRUS || SCAN_ALL) {
+ if ((ret = cli_exp_eval(ctx, troot, &tmdata, NULL, NULL)) == CL_VIRUS)
+ viruses_found++;
+@@ -1481,9 +1461,19 @@
+ viruses_found++;
+ }
+
++done:
++ free(normalized);
+ cli_ac_freedata(&tmdata);
+ cli_ac_freedata(&gmdata);
+
++ if (ofd != -1)
++ close(ofd);
++ if (tmpname != NULL) {
++ if (!ctx->engine->keeptmp)
++ if (cli_unlink(tmpname)) ret = CL_EUNLINK;
++ free(tmpname);
++ }
++
+ if (SCAN_ALL && viruses_found)
+ return CL_VIRUS;
+
^ permalink raw reply related [flat|nested] 15+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: app-antivirus/clamav/, app-antivirus/clamav/files/
@ 2018-03-29 22:42 Thomas Deutschmann
0 siblings, 0 replies; 15+ messages in thread
From: Thomas Deutschmann @ 2018-03-29 22:42 UTC (permalink / raw
To: gentoo-commits
commit: 6c8c54a1663246d42c8fda0de366a3078a02be13
Author: Thomas Deutschmann <whissi <AT> gentoo <DOT> org>
AuthorDate: Thu Mar 29 22:41:57 2018 +0000
Commit: Thomas Deutschmann <whissi <AT> gentoo <DOT> org>
CommitDate: Thu Mar 29 22:42:18 2018 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=6c8c54a1
app-antivirus/clamav: Make clamav work with >=zlib-1.2.9
..in addition, an automagic on dev-libs/check was fixed.
Closes: https://bugs.gentoo.org/649516
Package-Manager: Portage-2.3.26, Repoman-2.3.7
app-antivirus/clamav/clamav-0.99.4-r1.ebuild | 159 +++++++++++++++++++++
.../files/clamav-0.99.4-fix-newer-zlib.patch | 54 +++++++
2 files changed, 213 insertions(+)
diff --git a/app-antivirus/clamav/clamav-0.99.4-r1.ebuild b/app-antivirus/clamav/clamav-0.99.4-r1.ebuild
new file mode 100644
index 00000000000..cee37d96b48
--- /dev/null
+++ b/app-antivirus/clamav/clamav-0.99.4-r1.ebuild
@@ -0,0 +1,159 @@
+# Copyright 1999-2018 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+
+inherit autotools eutils flag-o-matic user systemd
+
+DESCRIPTION="Clam Anti-Virus Scanner"
+HOMEPAGE="http://www.clamav.net/"
+SRC_URI="https://www.clamav.net/downloads/production/${P}.tar.gz"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~ppc ~ppc64 ~sparc ~x86 ~x86-fbsd ~amd64-linux ~x86-linux ~ppc-macos ~sparc-solaris ~x86-solaris"
+IUSE="bzip2 clamdtop iconv ipv6 libressl milter metadata-analysis-api selinux static-libs test uclibc"
+
+CDEPEND="bzip2? ( app-arch/bzip2 )
+ clamdtop? ( sys-libs/ncurses:0 )
+ iconv? ( virtual/libiconv )
+ metadata-analysis-api? ( dev-libs/json-c:= )
+ milter? ( || ( mail-filter/libmilter mail-mta/sendmail ) )
+ dev-libs/libtommath
+ >=sys-libs/zlib-1.2.2:=
+ !libressl? ( dev-libs/openssl:0= )
+ libressl? ( dev-libs/libressl:0= )
+ sys-devel/libtool
+ || ( dev-libs/libpcre2 >dev-libs/libpcre-6 )
+ !!<app-antivirus/clamav-0.99"
+# hard block clamav < 0.99 due to linking problems Bug #567680
+# openssl is now *required* see this link as to why
+# http://blog.clamav.net/2014/02/introducing-openssl-as-dependency-to.html
+DEPEND="${CDEPEND}
+ virtual/pkgconfig
+ test? ( dev-libs/check )"
+RDEPEND="${CDEPEND}
+ selinux? ( sec-policy/selinux-clamav )"
+
+DOCS=( AUTHORS BUGS ChangeLog FAQ INSTALL NEWS README UPGRADE )
+PATCHES=(
+ "${FILESDIR}"/${PN}-0.99.4-fix-newer-zlib.patch
+ "${FILESDIR}/${P}-pcre2-compile-erroffset.patch"
+)
+
+pkg_setup() {
+ enewgroup clamav
+ enewuser clamav -1 -1 /dev/null clamav
+}
+
+src_prepare() {
+ default
+
+ eautoconf
+}
+
+src_configure() {
+ use ppc64 && append-flags -mminimal-toc
+ use uclibc && export ac_cv_type_error_t=yes
+
+ econf \
+ $(use_enable bzip2) \
+ $(use_enable clamdtop) \
+ $(use_enable ipv6) \
+ $(use_enable milter) \
+ $(use_enable static-libs static) \
+ $(use_enable test check) \
+ $(use_with iconv) \
+ $(use_with metadata-analysis-api libjson /usr) \
+ --cache-file="${S}"/config.cache \
+ --disable-experimental \
+ --disable-gcc-vcheck \
+ --disable-zlib-vcheck \
+ --enable-id-check \
+ --with-dbdir="${EPREFIX}"/var/lib/clamav \
+ --with-system-tommath \
+ --with-zlib="${EPREFIX}"/usr \
+ --disable-llvm
+}
+
+src_install() {
+ default
+
+ rm -rf "${ED}"/var/lib/clamav
+ newinitd "${FILESDIR}"/clamd.initd-r6 clamd
+ newconfd "${FILESDIR}"/clamd.conf-r1 clamd
+
+ systemd_dotmpfilesd "${FILESDIR}/tmpfiles.d/clamav.conf"
+ systemd_newunit "${FILESDIR}/clamd_at.service" "clamd@.service"
+ systemd_dounit "${FILESDIR}/clamd.service"
+ systemd_dounit "${FILESDIR}/freshclamd.service"
+
+ keepdir /var/lib/clamav
+ fowners clamav:clamav /var/lib/clamav
+ keepdir /var/log/clamav
+ fowners clamav:clamav /var/log/clamav
+
+ dodir /etc/logrotate.d
+ insinto /etc/logrotate.d
+ newins "${FILESDIR}"/clamav.logrotate clamav
+
+ # Modify /etc/{clamd,freshclam}.conf to be usable out of the box
+ sed -i -e "s:^\(Example\):\# \1:" \
+ -e "s:.*\(PidFile\) .*:\1 ${EPREFIX}/var/run/clamav/clamd.pid:" \
+ -e "s:.*\(LocalSocket\) .*:\1 ${EPREFIX}/var/run/clamav/clamd.sock:" \
+ -e "s:.*\(User\) .*:\1 clamav:" \
+ -e "s:^\#\(LogFile\) .*:\1 ${EPREFIX}/var/log/clamav/clamd.log:" \
+ -e "s:^\#\(LogTime\).*:\1 yes:" \
+ -e "s:^\#\(AllowSupplementaryGroups\).*:\1 yes:" \
+ "${ED}"/etc/clamd.conf.sample || die
+ sed -i -e "s:^\(Example\):\# \1:" \
+ -e "s:.*\(PidFile\) .*:\1 ${EPREFIX}/var/run/clamav/freshclam.pid:" \
+ -e "s:.*\(DatabaseOwner\) .*:\1 clamav:" \
+ -e "s:^\#\(UpdateLogFile\) .*:\1 ${EPREFIX}/var/log/clamav/freshclam.log:" \
+ -e "s:^\#\(NotifyClamd\).*:\1 ${EPREFIX}/etc/clamd.conf:" \
+ -e "s:^\#\(ScriptedUpdates\).*:\1 yes:" \
+ -e "s:^\#\(AllowSupplementaryGroups\).*:\1 yes:" \
+ "${ED}"/etc/freshclam.conf.sample || die
+
+ if use milter ; then
+ # MilterSocket one to include ' /' because there is a 2nd line for
+ # inet: which we want to leave
+ dodoc "${FILESDIR}"/clamav-milter.README.gentoo
+ sed -i -e "s:^\(Example\):\# \1:" \
+ -e "s:.*\(PidFile\) .*:\1 ${EPREFIX}/var/run/clamav/clamav-milter.pid:" \
+ -e "s+^\#\(ClamdSocket\) .*+\1 unix:${EPREFIX}/var/run/clamav/clamd.sock+" \
+ -e "s:.*\(User\) .*:\1 clamav:" \
+ -e "s+^\#\(MilterSocket\) /.*+\1 unix:${EPREFIX}/var/run/clamav/clamav-milter.sock+" \
+ -e "s:^\#\(AllowSupplementaryGroups\).*:\1 yes:" \
+ -e "s:^\#\(LogFile\) .*:\1 ${EPREFIX}/var/log/clamav/clamav-milter.log:" \
+ "${ED}"/etc/clamav-milter.conf.sample || die
+ cat >> "${ED}"/etc/conf.d/clamd <<-EOF
+ MILTER_NICELEVEL=19
+ START_MILTER=no
+ EOF
+
+ systemd_newunit "${FILESDIR}/clamav-milter.service-r1" clamav-milter.service
+ fi
+
+ for i in clamd freshclam clamav-milter
+ do
+ [[ -f "${D}"/etc/"${i}".conf.sample ]] && mv "${D}"/etc/"${i}".conf{.sample,}
+ done
+
+ prune_libtool_files --all
+}
+
+src_test() {
+ emake quick-check
+}
+
+pkg_postinst() {
+ if use milter ; then
+ elog "For simple instructions how to setup the clamav-milter read the"
+ elog "clamav-milter.README.gentoo in /usr/share/doc/${PF}"
+ fi
+ if test -z $(find "${ROOT}"var/lib/clamav -maxdepth 1 -name 'main.c*' -print -quit) ; then
+ ewarn "You must run freshclam manually to populate the virus database files"
+ ewarn "before starting clamav for the first time.\n"
+ fi
+}
diff --git a/app-antivirus/clamav/files/clamav-0.99.4-fix-newer-zlib.patch b/app-antivirus/clamav/files/clamav-0.99.4-fix-newer-zlib.patch
new file mode 100644
index 00000000000..18673419a58
--- /dev/null
+++ b/app-antivirus/clamav/files/clamav-0.99.4-fix-newer-zlib.patch
@@ -0,0 +1,54 @@
+https://bugs.gentoo.org/649516
+
+Description: fix compatibility with zlib 1.2.9 and newer
+Author: Marc Deslauriers <marc.deslauriers@canonical.com>
+Bug-Ubuntu: https://bugs.launchpad.net/ubuntu/+source/clamav/+bug/1692073
+
+Index: clamav-0.99.2+dfsg/libclamav/bytecode_api.c
+===================================================================
+--- clamav-0.99.2+dfsg.orig/libclamav/bytecode_api.c 2017-08-08 15:20:06.651685637 -0400
++++ clamav-0.99.2+dfsg/libclamav/bytecode_api.c 2017-08-15 15:45:14.645714766 -0400
+@@ -811,8 +811,20 @@ int32_t cli_bcapi_inflate_init(struct cl
+ cli_dbgmsg("bytecode api: inflate_init: invalid buffers!\n");
+ return -1;
+ }
+- memset(&stream, 0, sizeof(stream));
+- ret = inflateInit2(&stream, windowBits);
++
++ b = cli_realloc(ctx->inflates, sizeof(*ctx->inflates)*n);
++ if (!b) {
++ return -1;
++ }
++ ctx->inflates = b;
++ ctx->ninflates = n;
++ b = &b[n-1];
++
++ b->from = from;
++ b->to = to;
++ b->needSync = 0;
++ memset(&b->stream, 0, sizeof(stream));
++ ret = inflateInit2(&b->stream, windowBits);
+ switch (ret) {
+ case Z_MEM_ERROR:
+ cli_dbgmsg("bytecode api: inflateInit2: out of memory!\n");
+@@ -829,20 +841,6 @@ int32_t cli_bcapi_inflate_init(struct cl
+ cli_dbgmsg("bytecode api: inflateInit2: unknown error %d\n", ret);
+ return -1;
+ }
+-
+- b = cli_realloc(ctx->inflates, sizeof(*ctx->inflates)*n);
+- if (!b) {
+- inflateEnd(&stream);
+- return -1;
+- }
+- ctx->inflates = b;
+- ctx->ninflates = n;
+- b = &b[n-1];
+-
+- b->from = from;
+- b->to = to;
+- b->needSync = 0;
+- memcpy(&b->stream, &stream, sizeof(stream));
+ return n-1;
+ }
+
^ permalink raw reply related [flat|nested] 15+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: app-antivirus/clamav/, app-antivirus/clamav/files/
@ 2018-04-12 12:13 Thomas Raschbacher
0 siblings, 0 replies; 15+ messages in thread
From: Thomas Raschbacher @ 2018-04-12 12:13 UTC (permalink / raw
To: gentoo-commits
commit: 74eede5d3485d1ac7022221ce0e34c4b01c4ea17
Author: Thomas Raschbacher <lordvan <AT> gentoo <DOT> org>
AuthorDate: Thu Apr 12 12:12:04 2018 +0000
Commit: Thomas Raschbacher <lordvan <AT> gentoo <DOT> org>
CommitDate: Thu Apr 12 12:13:09 2018 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=74eede5d
new version + autotools patch
app-antivirus/clamav/Manifest | 1 +
app-antivirus/clamav/clamav-0.100.0.ebuild | 160 +++++++++++++++++++++
.../clamav/files/clamav-0.100.0_autotools.patch | 10 ++
app-antivirus/clamav/metadata.xml | 1 +
4 files changed, 172 insertions(+)
diff --git a/app-antivirus/clamav/Manifest b/app-antivirus/clamav/Manifest
index 1296e9f756b..a0ce2687d0b 100644
--- a/app-antivirus/clamav/Manifest
+++ b/app-antivirus/clamav/Manifest
@@ -1,3 +1,4 @@
+DIST clamav-0.100.0.tar.gz 16036757 BLAKE2B c51edfb05726e16e2ff1ef1fee9f174af5a0d65396f847a4f6e1246d5844b92eb70896fc598d2c73719b1315ff3c41aca503823431e0918d52f56d29399dd796 SHA512 57e1da86a32fdfb66887c4aeed03008bc070ce3cb6b881db411332f2f2e640b73dca84d990f5886526b3d6bd0c2770c7dcce5b4e7cf48323824c362452593549
DIST clamav-0.99.2.tar.gz 16067497 BLAKE2B 4155e3125ccc45cc6828033f207b6b8d3514253dfb8156428ad4096c0901d5a8500f9dd253b8f40afdc49a6039b647627868f75d51829ab7bd247ada5f3b8383 SHA512 7744ba8a344b163cf98e9737cddfd25d2120b34ee9c4518380e028c9ec3cd50127b198b0dfa9fde30f5ce9aab0c0e6384712fbc11287e77d16ce052fd7b6ac44
DIST clamav-0.99.3.tar.gz 16082645 BLAKE2B 3be06e563f17a07e4c7e95eb3efbb61e80858bcb3dffc584f13ec30dc2ef9c5257aec78605f1c03e183b4b7ed5b08343a25b579b2b12e54458694eff624aa01e SHA512 0d3c75d571ed4aa4937ef2b743a39a9a144f5adfd6f56f71046e5a8387b8ed7c3c4d9a4196aa85750f9ec4dc545720fdd659289d0cce086ab13a7cc505a0ab3e
DIST clamav-0.99.4.tar.gz 16083015 BLAKE2B 3c2e7d11ee05fe846f75c3fb6501b5fd809a2e58f8e69c82e493e32fcbc87ca0e5b5f7ab83a0d7e251a5dc8e84aed1475c87c1248b393fa04b6924a2ab32b9bf SHA512 778d5ef510d8d4bdfac5dc33d92469ed4283c414b3d42da6e1a0b13ed70e37755d5c837622dc336bc728ba1f8bf5485fc8a8d3a67a90e9aaa9e4dc71ece0691d
diff --git a/app-antivirus/clamav/clamav-0.100.0.ebuild b/app-antivirus/clamav/clamav-0.100.0.ebuild
new file mode 100644
index 00000000000..1abf0370982
--- /dev/null
+++ b/app-antivirus/clamav/clamav-0.100.0.ebuild
@@ -0,0 +1,160 @@
+# Copyright 1999-2018 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+
+inherit autotools eutils flag-o-matic user systemd
+
+DESCRIPTION="Clam Anti-Virus Scanner"
+HOMEPAGE="http://www.clamav.net/"
+SRC_URI="https://www.clamav.net/downloads/production/${P}.tar.gz"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~amd64 ~sparc ~x86 ~x86-fbsd ~amd64-linux ~x86-linux ~ppc-macos ~sparc-solaris ~x86-solaris"
+IUSE="bzip2 clamdtop iconv ipv6 libressl milter metadata-analysis-api selinux static-libs system-libmspack test uclibc"
+
+CDEPEND="bzip2? ( app-arch/bzip2 )
+ clamdtop? ( sys-libs/ncurses:0 )
+ iconv? ( virtual/libiconv )
+ metadata-analysis-api? ( dev-libs/json-c:= )
+ milter? ( || ( mail-filter/libmilter mail-mta/sendmail ) )
+ dev-libs/libtommath
+ >=sys-libs/zlib-1.2.2:=
+ !libressl? ( dev-libs/openssl:0= )
+ libressl? ( dev-libs/libressl:0= )
+ sys-devel/libtool
+ || ( dev-libs/libpcre2 >dev-libs/libpcre-6 )
+ system-libmspack? ( dev-libs/libmspack )
+ !!<app-antivirus/clamav-0.99"
+# hard block clamav < 0.99 due to linking problems Bug #567680
+# openssl is now *required* see this link as to why
+# http://blog.clamav.net/2014/02/introducing-openssl-as-dependency-to.html
+DEPEND="${CDEPEND}
+ virtual/pkgconfig
+ test? ( dev-libs/check )"
+RDEPEND="${CDEPEND}
+ selinux? ( sec-policy/selinux-clamav )"
+
+DOCS=( AUTHORS BUGS ChangeLog FAQ INSTALL NEWS README UPGRADE )
+PATCHES=(
+ "${FILESDIR}/${P}_autotools.patch"
+)
+
+pkg_setup() {
+ enewgroup clamav
+ enewuser clamav -1 -1 /dev/null clamav
+}
+
+src_prepare() {
+ default
+
+ eautoconf
+}
+
+src_configure() {
+ use ppc64 && append-flags -mminimal-toc
+ use uclibc && export ac_cv_type_error_t=yes
+
+ econf \
+ $(use_enable bzip2) \
+ $(use_enable clamdtop) \
+ $(use_enable ipv6) \
+ $(use_enable milter) \
+ $(use_enable static-libs static) \
+ $(use_enable test check) \
+ $(use_with iconv) \
+ $(use_with metadata-analysis-api libjson /usr) \
+ $(use_with system-libmspack) \
+ --cache-file="${S}"/config.cache \
+ --disable-experimental \
+ --disable-gcc-vcheck \
+ --disable-zlib-vcheck \
+ --enable-id-check \
+ --with-dbdir="${EPREFIX}"/var/lib/clamav \
+ --with-system-tommath \
+ --with-zlib="${EPREFIX}"/usr \
+ --disable-llvm
+}
+
+src_install() {
+ default
+
+ rm -rf "${ED}"/var/lib/clamav
+ newinitd "${FILESDIR}"/clamd.initd-r6 clamd
+ newconfd "${FILESDIR}"/clamd.conf-r1 clamd
+
+ systemd_dotmpfilesd "${FILESDIR}/tmpfiles.d/clamav.conf"
+ systemd_newunit "${FILESDIR}/clamd_at.service" "clamd@.service"
+ systemd_dounit "${FILESDIR}/clamd.service"
+ systemd_dounit "${FILESDIR}/freshclamd.service"
+
+ keepdir /var/lib/clamav
+ fowners clamav:clamav /var/lib/clamav
+ keepdir /var/log/clamav
+ fowners clamav:clamav /var/log/clamav
+
+ dodir /etc/logrotate.d
+ insinto /etc/logrotate.d
+ newins "${FILESDIR}"/clamav.logrotate clamav
+
+ # Modify /etc/{clamd,freshclam}.conf to be usable out of the box
+ sed -i -e "s:^\(Example\):\# \1:" \
+ -e "s:.*\(PidFile\) .*:\1 ${EPREFIX}/var/run/clamav/clamd.pid:" \
+ -e "s:.*\(LocalSocket\) .*:\1 ${EPREFIX}/var/run/clamav/clamd.sock:" \
+ -e "s:.*\(User\) .*:\1 clamav:" \
+ -e "s:^\#\(LogFile\) .*:\1 ${EPREFIX}/var/log/clamav/clamd.log:" \
+ -e "s:^\#\(LogTime\).*:\1 yes:" \
+ -e "s:^\#\(AllowSupplementaryGroups\).*:\1 yes:" \
+ "${ED}"/etc/clamd.conf.sample || die
+ sed -i -e "s:^\(Example\):\# \1:" \
+ -e "s:.*\(PidFile\) .*:\1 ${EPREFIX}/var/run/clamav/freshclam.pid:" \
+ -e "s:.*\(DatabaseOwner\) .*:\1 clamav:" \
+ -e "s:^\#\(UpdateLogFile\) .*:\1 ${EPREFIX}/var/log/clamav/freshclam.log:" \
+ -e "s:^\#\(NotifyClamd\).*:\1 ${EPREFIX}/etc/clamd.conf:" \
+ -e "s:^\#\(ScriptedUpdates\).*:\1 yes:" \
+ -e "s:^\#\(AllowSupplementaryGroups\).*:\1 yes:" \
+ "${ED}"/etc/freshclam.conf.sample || die
+
+ if use milter ; then
+ # MilterSocket one to include ' /' because there is a 2nd line for
+ # inet: which we want to leave
+ dodoc "${FILESDIR}"/clamav-milter.README.gentoo
+ sed -i -e "s:^\(Example\):\# \1:" \
+ -e "s:.*\(PidFile\) .*:\1 ${EPREFIX}/var/run/clamav/clamav-milter.pid:" \
+ -e "s+^\#\(ClamdSocket\) .*+\1 unix:${EPREFIX}/var/run/clamav/clamd.sock+" \
+ -e "s:.*\(User\) .*:\1 clamav:" \
+ -e "s+^\#\(MilterSocket\) /.*+\1 unix:${EPREFIX}/var/run/clamav/clamav-milter.sock+" \
+ -e "s:^\#\(AllowSupplementaryGroups\).*:\1 yes:" \
+ -e "s:^\#\(LogFile\) .*:\1 ${EPREFIX}/var/log/clamav/clamav-milter.log:" \
+ "${ED}"/etc/clamav-milter.conf.sample || die
+ cat >> "${ED}"/etc/conf.d/clamd <<-EOF
+ MILTER_NICELEVEL=19
+ START_MILTER=no
+ EOF
+
+ systemd_newunit "${FILESDIR}/clamav-milter.service-r1" clamav-milter.service
+ fi
+
+ for i in clamd freshclam clamav-milter
+ do
+ [[ -f "${D}"/etc/"${i}".conf.sample ]] && mv "${D}"/etc/"${i}".conf{.sample,}
+ done
+
+ prune_libtool_files --all
+}
+
+src_test() {
+ emake quick-check
+}
+
+pkg_postinst() {
+ if use milter ; then
+ elog "For simple instructions how to setup the clamav-milter read the"
+ elog "clamav-milter.README.gentoo in /usr/share/doc/${PF}"
+ fi
+ if test -z $(find "${ROOT}"var/lib/clamav -maxdepth 1 -name 'main.c*' -print -quit) ; then
+ ewarn "You must run freshclam manually to populate the virus database files"
+ ewarn "before starting clamav for the first time.\n"
+ fi
+}
diff --git a/app-antivirus/clamav/files/clamav-0.100.0_autotools.patch b/app-antivirus/clamav/files/clamav-0.100.0_autotools.patch
new file mode 100644
index 00000000000..58c3b4e324f
--- /dev/null
+++ b/app-antivirus/clamav/files/clamav-0.100.0_autotools.patch
@@ -0,0 +1,10 @@
+--- clamav-0.100.0/configure.ac_orig 2018-04-12 13:12:58.201729248 +0200
++++ clamav-0.100.0/configure.ac 2018-04-12 13:23:44.982679360 +0200
+@@ -47,6 +47,7 @@
+ LT_CONFIG_LTDL_DIR([libltdl])
+ LT_INIT([dlopen disable-static])
+ LTDL_INIT([recursive])
++PKG_PROG_PKG_CONFIG(0.16)
+
+ m4_include([m4/reorganization/build_tools.m4])
+ m4_include([m4/reorganization/headers.m4])
diff --git a/app-antivirus/clamav/metadata.xml b/app-antivirus/clamav/metadata.xml
index 7d510408a04..5ddb818cae4 100644
--- a/app-antivirus/clamav/metadata.xml
+++ b/app-antivirus/clamav/metadata.xml
@@ -12,6 +12,7 @@
<use>
<flag name="clamdtop">A Top like tool which shows what clamd is currently scanning amongst other things</flag>
<flag name="metadata-analysis-api">Enables collection of file property metadata using ClamAV API for analysis by ClamAV bytecode programs.</flag>
+ <flag name="system-libmspack">Use system libmspack instead of built in</flag>
</use>
<upstream>
<remote-id type="sourceforge">clamav</remote-id>
^ permalink raw reply related [flat|nested] 15+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: app-antivirus/clamav/, app-antivirus/clamav/files/
@ 2018-04-20 12:03 Thomas Raschbacher
0 siblings, 0 replies; 15+ messages in thread
From: Thomas Raschbacher @ 2018-04-20 12:03 UTC (permalink / raw
To: gentoo-commits
commit: 8a1683cff89eed7ef6c64df2d1636bf341887baa
Author: Thomas Raschbacher <lordvan <AT> gentoo <DOT> org>
AuthorDate: Fri Apr 20 12:01:30 2018 +0000
Commit: Thomas Raschbacher <lordvan <AT> gentoo <DOT> org>
CommitDate: Fri Apr 20 12:03:08 2018 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=8a1683cf
app-antivirus/clamav: updated clamav-milter README
Package-Manager: Portage-2.3.27, Repoman-2.3.9
app-antivirus/clamav/clamav-0.99.2-r1.ebuild | 2 +-
app-antivirus/clamav/clamav-0.99.2-r3.ebuild | 2 +-
.../clamav/files/clamav-milter.README.gentoo | 49 ++++++++++++++++++++--
app-antivirus/clamav/files/clamd.initd-r6 | 2 +-
4 files changed, 48 insertions(+), 7 deletions(-)
diff --git a/app-antivirus/clamav/clamav-0.99.2-r1.ebuild b/app-antivirus/clamav/clamav-0.99.2-r1.ebuild
index c0eb37e298b..d4a161880c9 100644
--- a/app-antivirus/clamav/clamav-0.99.2-r1.ebuild
+++ b/app-antivirus/clamav/clamav-0.99.2-r1.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2017 Gentoo Foundation
+# Copyright 1999-2018 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
EAPI=6
diff --git a/app-antivirus/clamav/clamav-0.99.2-r3.ebuild b/app-antivirus/clamav/clamav-0.99.2-r3.ebuild
index a4419b7542f..44c387e2dcf 100644
--- a/app-antivirus/clamav/clamav-0.99.2-r3.ebuild
+++ b/app-antivirus/clamav/clamav-0.99.2-r3.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2017 Gentoo Foundation
+# Copyright 1999-2018 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
EAPI=6
diff --git a/app-antivirus/clamav/files/clamav-milter.README.gentoo b/app-antivirus/clamav/files/clamav-milter.README.gentoo
index 17e9ba628ea..f526bd35a92 100644
--- a/app-antivirus/clamav/files/clamav-milter.README.gentoo
+++ b/app-antivirus/clamav/files/clamav-milter.README.gentoo
@@ -19,7 +19,10 @@ Step 2 - Tell the init script to start clamd as well as freshclam and the
START_FRESHCLAM=yes
START_MILTER=yes
-Step 3 - Edit sendmail.mc
+Step 3 - Inform your MTA about the new milter.
+
+ SENDMAIL
+ Step 3.a.1 - Edit sendmail.mc
Add these lines to sendmail.mc before any any other
INPUT_MAIL_FILTER lines and before MAILER(local)
@@ -30,15 +33,53 @@ Step 3 - Edit sendmail.mc
INPUT_MAIL_FILTER(`clmilter',`S=local:/var/run/clamav/clmilter.sock, F=, T=S:4m;R:4m')dnl
define(`confINPUT_MAIL_FILTERS', `clmilter')dnl
-Step 4 - Rebuild sendmail.cf
+ Step 3.a.2 - Rebuild sendmail.cf
cd /etc/mail
m4 sendmail.mc > sendmail.cf
-Step 5 - Start clamad
+
+
+ POSTFIX
+ Step 3.b - Edit main.cf.
+
+ Add unix:/var/run/clamav/clamav-milter.sock to your
+ smtpd_milters line. If the line doesn't exist, just
+ stick it at the bottom of main.cf on a new line.
+
+ If you're appending, this is a space separated list.
+ If virus scanning is your most intensive test, you
+ may wish to put it on the end of the list so earlier,
+ easiser tests may punt the message before you go through the
+ trouble of virus scanning it.
+
+ Only one milter example:
+
+ # milters to run on network received mail.
+ smtpd_milters=unix:/var/run/clamav/clamav-milter.suck
+
+ Multiple milters example:
+
+ # milters to run on network received mail.
+ smtpd_milters=unix:/var/run/dkim-filter/dkim-filter.sock unix:/var/run/clamav/clamav-milter.sock
+
+
+Step 5 - Adjust permissions for clamav-milter socket
+
+ Edit /etc/clamav-milter.conf and check/change MilterSocketGroup and MilterSocketMode
+ e.g. for postfix it would be this (sendmail,.. should be similar):
+ MiltersocketGroup postfix
+ MilterSocketMode 660
+
+Step 6 - Start clamad
/etc/init.d/clamd start
-Step 6 - Restart sendmail
+Step 7 - Restart your MTA
+ SENDMAIL
/etc/init.d/sendmail restart
+
+ POSTFIX
+ /etc/init.d/postfix restart
+
diff --git a/app-antivirus/clamav/files/clamd.initd-r6 b/app-antivirus/clamav/files/clamd.initd-r6
index 7b50af64072..8cf8dd0a4ba 100644
--- a/app-antivirus/clamav/files/clamd.initd-r6
+++ b/app-antivirus/clamav/files/clamd.initd-r6
@@ -1,5 +1,5 @@
#!/sbin/openrc-run
-# Copyright 1999-2013 Gentoo Foundation
+# Copyright 1999-2018 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
daemon_clamd="/usr/sbin/clamd"
^ permalink raw reply related [flat|nested] 15+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: app-antivirus/clamav/, app-antivirus/clamav/files/
@ 2019-10-14 7:11 Lars Wendler
0 siblings, 0 replies; 15+ messages in thread
From: Lars Wendler @ 2019-10-14 7:11 UTC (permalink / raw
To: gentoo-commits
commit: f593e3ceffb4852d91cd62263c52bb33d38c3444
Author: Lars Wendler <polynomial-c <AT> gentoo <DOT> org>
AuthorDate: Mon Oct 14 07:10:09 2019 +0000
Commit: Lars Wendler <polynomial-c <AT> gentoo <DOT> org>
CommitDate: Mon Oct 14 07:11:46 2019 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=f593e3ce
app-antivirus/clamav: Remove automagic dep on dev-libs/icu (again)
Bug: https://bugs.gentoo.org/661328
Package-Manager: Portage-2.3.76, Repoman-2.3.17
Signed-off-by: Lars Wendler <polynomial-c <AT> gentoo.org>
app-antivirus/clamav/clamav-0.102.0.ebuild | 1 +
.../files/clamav-0.102.0-libxml2_pkgconfig.patch | 101 +++++++++++++++++++++
2 files changed, 102 insertions(+)
diff --git a/app-antivirus/clamav/clamav-0.102.0.ebuild b/app-antivirus/clamav/clamav-0.102.0.ebuild
index c2735a25d7d..85d704dacfe 100644
--- a/app-antivirus/clamav/clamav-0.102.0.ebuild
+++ b/app-antivirus/clamav/clamav-0.102.0.ebuild
@@ -47,6 +47,7 @@ RDEPEND="${CDEPEND}
HTML_DOCS=( docs/html )
PATCHES=(
+ "${FILESDIR}/${PN}-0.102.0-libxml2_pkgconfig.patch" #661328
"${FILESDIR}/${PN}-0.101.2-tinfo.patch" #670729
)
diff --git a/app-antivirus/clamav/files/clamav-0.102.0-libxml2_pkgconfig.patch b/app-antivirus/clamav/files/clamav-0.102.0-libxml2_pkgconfig.patch
new file mode 100644
index 00000000000..1a6303b5c8c
--- /dev/null
+++ b/app-antivirus/clamav/files/clamav-0.102.0-libxml2_pkgconfig.patch
@@ -0,0 +1,101 @@
+https://bugs.gentoo.org/661328
+
+--- clamav-0.102.0/m4/reorganization/libs/xml.m4
++++ clamav-0.102.0/m4/reorganization/libs/xml.m4
+@@ -4,85 +4,29 @@
+ [AS_HELP_STRING([--disable-xml], [do not include DMG and XAR support])],
+ want_xml=$enableval, want_xml="auto")
+
+-XML_HOME=""
+-xmlconfig=""
+ if test "X$want_xml" != "Xno"; then
+- AC_MSG_CHECKING([for libxml2 installation])
+- AC_ARG_WITH([xml],
+- AS_HELP_STRING([--with-xml@<:@=DIR@:>@], [path to directory containing libxml2 library
+- @<:@default=/usr/local or /usr if not found in /usr/local@:>@]),
+- [with_xml_val=$withval]
++ PKG_CHECK_MODULES([XML], [libxml-2.0],
++ [found_xml=yes],
++ [
++ found_xml=no
++ AS_IF([test "x$want_xml" = xyes],
++ [AC_MSG_ERROR([--enable-xml set but cannot find libxml2])]
++ )
++ ]
+ )
+
+- AS_IF([test "x$with_xml_val" = "xno"], [XML_HOME=""],
+- [test "x$with_xml_val" = "xyes"], [XML_HOME="/usr/local"],
+- [XML_HOME="$with_xml_val"])
+-
+- AS_IF([test "x$XML_HOME" != "x"], [
+- AS_IF([test ! -x "$XML_HOME/bin/xml2-config"], [XML_HOME=""])
+- ])
+-
+- AS_IF([test "x$XML_HOME" = "x" -a "x$with_xml_val" = "xyes"], [
+- AS_IF([test -x "/usr/bin/xml2-config"], [XML_HOME="/usr"])
+- ])
+-
+- if test "x$XML_HOME" != "x"; then
+- AC_MSG_RESULT([$XML_HOME])
+- with_xml="yes"
+- else
+- AC_MSG_RESULT([not found])
+- fi
+-
+- found_xml="no"
+- XMLCONF_VERSION=""
+- XML_CPPFLAGS=""
+- XML_LIBS=""
+- case "$with_xml" in
+- yes) AC_PATH_PROG([xmlconfig], [xml2-config])
+- if test "x$xmlconfig" = x ; then
+- AC_MSG_NOTICE([can not locate xml2-config in PATH, will search default XML_HOME variants])
+-
+- if test "x$XML_HOME" != "x"; then
+- AC_MSG_CHECKING([xml2-config version])
+- XMLCONF_VERSION="`$XML_HOME/bin/xml2-config --version`"
+-
+- if test "x%XMLCONF_VERSION" != "x"; then
+- AC_MSG_RESULT([$XMLCONF_VERSION])
+- found_xml="yes"
+- XML_CPPFLAGS="`$XML_HOME/bin/xml2-config --cflags`"
+- XML_LIBS="`$XML_HOME/bin/xml2-config --libs`"
+- AS_ECHO("$XML_CPPFLAGS")
+- AS_ECHO("$XML_LIBS")
+- else
+- AC_MSG_ERROR([xml2-config failed])
+- fi
+- fi
+- else
+- found_xml="yes"
+- XMLCONF_VERSION="`$xmlconfig --version`"
+- XML_CPPFLAGS="`$xmlconfig --cflags`"
+- XML_LIBS="`$xmlconfig --libs`"
+- fi
+- esac
+-
+ working_xml="no"
+ if test "X$found_xml" != "Xno"; then
+-
+- readerresult=""
+- if test "x$xmlconfig" = x ; then
+- readerresult="$XML_HOME/include/libxml2/libxml/xmlreader.h"
+- else
+- readerresult="`$xmlconfig --prefix`/include/libxml2/libxml/xmlreader.h"
+- fi
+-
++ XML_HOME=$(${PKG_CONFIG} --variable prefix libxml-2.0)
+ AC_MSG_CHECKING([for xmlreader.h in $readerresult])
+
+- if test ! -f "$readerresult"; then
++ if test ! -f "$XML_HOME/include/libxml2/libxml/xmlreader.h"; then
+ AC_MSG_RESULT([not found])
+ else
+ AC_MSG_RESULT([found])
+ save_LIBS="$LIBS"
+ save_CPPFLAGS="$CPPFLAGS"
++ XML_CPPFLAGS="$XML_CFLAGS"
+ CPPFLAGS="$CPPFLAGS $XML_CPPFLAGS"
+ save_LDFLAGS="$LDFLAGS"
+ LDFLAGS="$LDFLAGS $XML_LIBS"
^ permalink raw reply related [flat|nested] 15+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: app-antivirus/clamav/, app-antivirus/clamav/files/
@ 2020-03-20 23:50 Thomas Deutschmann
0 siblings, 0 replies; 15+ messages in thread
From: Thomas Deutschmann @ 2020-03-20 23:50 UTC (permalink / raw
To: gentoo-commits
commit: 822c01a576d1b9c063b45be5b1eba77130f4b073
Author: Thomas Deutschmann <whissi <AT> gentoo <DOT> org>
AuthorDate: Fri Mar 20 23:14:09 2020 +0000
Commit: Thomas Deutschmann <whissi <AT> gentoo <DOT> org>
CommitDate: Fri Mar 20 23:48:58 2020 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=822c01a5
app-antivirus/clamav: rev bump
- Migrate to EAPI 7.
- Fix USE=libclamav-only.
- Set proper REQUIRED_USE to indicate that USE=libclamav-only
will really only install libs.
- Install HTML docs only when USE=doc is set.
Closes: https://bugs.gentoo.org/709616
Package-Manager: Portage-2.3.94, Repoman-2.3.21
Signed-off-by: Thomas Deutschmann <whissi <AT> gentoo.org>
...mav-0.102.2.ebuild => clamav-0.102.2-r1.ebuild} | 178 +++++++++++----------
.../files/clamav-0.102.2-fix-curl-detection.patch | 26 +++
2 files changed, 123 insertions(+), 81 deletions(-)
diff --git a/app-antivirus/clamav/clamav-0.102.2.ebuild b/app-antivirus/clamav/clamav-0.102.2-r1.ebuild
similarity index 50%
rename from app-antivirus/clamav/clamav-0.102.2.ebuild
rename to app-antivirus/clamav/clamav-0.102.2-r1.ebuild
index 1aa121ef78f..1c7040145e4 100644
--- a/app-antivirus/clamav/clamav-0.102.2.ebuild
+++ b/app-antivirus/clamav/clamav-0.102.2-r1.ebuild
@@ -1,9 +1,9 @@
# Copyright 1999-2020 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
-EAPI=6
+EAPI=7
-inherit autotools eutils flag-o-matic ltprune systemd
+inherit autotools flag-o-matic systemd
DESCRIPTION="Clam Anti-Virus Scanner"
HOMEPAGE="https://www.clamav.net/"
@@ -13,6 +13,9 @@ LICENSE="GPL-2"
SLOT="0"
KEYWORDS="~alpha amd64 arm arm64 hppa ia64 ppc ppc64 ~sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~sparc-solaris ~x86-solaris"
IUSE="bzip2 doc clamdtop clamsubmit iconv ipv6 libclamav-only libressl milter metadata-analysis-api selinux static-libs test uclibc xml"
+
+REQUIRED_USE="libclamav-only? ( !clamdtop !clamsubmit !milter !metadata-analysis-api )"
+
RESTRICT="!test? ( test )"
# Require acct-{user,group}/clamav at build time so that we can set
@@ -20,37 +23,33 @@ RESTRICT="!test? ( test )"
# pkg_postinst; calling "chown" on the live filesystem scares me.
CDEPEND="acct-group/clamav
acct-user/clamav
+ dev-libs/libltdl
+ dev-libs/libmspack
+ || ( dev-libs/libpcre2 >dev-libs/libpcre-6 )
+ >=sys-libs/zlib-1.2.2:=
bzip2? ( app-arch/bzip2 )
clamdtop? ( sys-libs/ncurses:0 )
+ clamsubmit? ( net-misc/curl dev-libs/json-c:= )
+ elibc_musl? ( sys-libs/fts-standalone )
iconv? ( virtual/libiconv )
- metadata-analysis-api? ( dev-libs/json-c:= )
- milter? ( || ( mail-filter/libmilter mail-mta/sendmail ) )
- >=sys-libs/zlib-1.2.2:=
+ !libclamav-only? ( net-misc/curl )
!libressl? ( dev-libs/openssl:0= )
libressl? ( dev-libs/libressl:0= )
- dev-libs/libltdl
- || ( dev-libs/libpcre2 >dev-libs/libpcre-6 )
- dev-libs/libmspack
- xml? ( dev-libs/libxml2 )
- elibc_musl? ( sys-libs/fts-standalone )
- !libclamav-only? ( net-misc/curl )
- clamsubmit? ( net-misc/curl dev-libs/json-c:= )"
-REQUIRED_USE="
- libclamav-only? ( !clamsubmit )
- clamsubmit? ( !libclamav-only )
-"
+ milter? ( || ( mail-filter/libmilter mail-mta/sendmail ) )
+ xml? ( dev-libs/libxml2 )"
+
+BDEPEND="virtual/pkgconfig"
DEPEND="${CDEPEND}
- virtual/pkgconfig
+ metadata-analysis-api? ( dev-libs/json-c:* )
test? ( dev-libs/check )"
RDEPEND="${CDEPEND}
selinux? ( sec-policy/selinux-clamav )"
-HTML_DOCS=( docs/html/. )
-
PATCHES=(
"${FILESDIR}/${PN}-0.101.2-tinfo.patch" #670729
"${FILESDIR}/${PN}-0.102.1-libxml2_pkgconfig.patch" #661328
+ "${FILESDIR}/${PN}-0.102.2-fix-curl-detection.patch" #709616
)
src_prepare() {
@@ -106,79 +105,94 @@ src_install() {
default
rm -rf "${ED}"/var/lib/clamav || die
- newinitd "${FILESDIR}"/clamd.initd-r6 clamd
- newconfd "${FILESDIR}"/clamd.conf-r1 clamd
-
- systemd_dotmpfilesd "${FILESDIR}/tmpfiles.d/clamav.conf"
- systemd_newunit "${FILESDIR}/clamd_at.service" "clamd@.service"
- systemd_dounit "${FILESDIR}/clamd.service"
- systemd_dounit "${FILESDIR}/freshclamd.service"
-
- insinto /etc/logrotate.d
- newins "${FILESDIR}"/clamav.logrotate clamav
-
- # Modify /etc/{clamd,freshclam}.conf to be usable out of the box
- sed -i -e "s:^\(Example\):\# \1:" \
- -e "s:.*\(PidFile\) .*:\1 ${EPREFIX}/var/run/clamav/clamd.pid:" \
- -e "s:.*\(LocalSocket\) .*:\1 ${EPREFIX}/var/run/clamav/clamd.sock:" \
- -e "s:.*\(User\) .*:\1 clamav:" \
- -e "s:^\#\(LogFile\) .*:\1 ${EPREFIX}/var/log/clamav/clamd.log:" \
- -e "s:^\#\(LogTime\).*:\1 yes:" \
- -e "s:^\#\(AllowSupplementaryGroups\).*:\1 yes:" \
- -e "s:^\#\(DatabaseDirectory\).*:\1 /var/lib/clamav:" \
- "${ED}"/etc/clamd.conf.sample || die
- sed -i -e "s:^\(Example\):\# \1:" \
- -e "s:.*\(PidFile\) .*:\1 ${EPREFIX}/var/run/clamav/freshclam.pid:" \
- -e "s:.*\(DatabaseOwner\) .*:\1 clamav:" \
- -e "s:^\#\(UpdateLogFile\) .*:\1 ${EPREFIX}/var/log/clamav/freshclam.log:" \
- -e "s:^\#\(NotifyClamd\).*:\1 ${EPREFIX}/etc/clamd.conf:" \
- -e "s:^\#\(ScriptedUpdates\).*:\1 yes:" \
- -e "s:^\#\(AllowSupplementaryGroups\).*:\1 yes:" \
- -e "s:^\#\(DatabaseDirectory\).*:\1 /var/lib/clamav:" \
- "${ED}"/etc/freshclam.conf.sample || die
- if use milter ; then
- # MilterSocket one to include ' /' because there is a 2nd line for
- # inet: which we want to leave
- ##dodoc "${FILESDIR}"/clamav-milter.README.gentoo
+ if ! use libclamav-only ; then
+ newinitd "${FILESDIR}"/clamd.initd-r6 clamd
+ newconfd "${FILESDIR}"/clamd.conf-r1 clamd
+
+ systemd_dotmpfilesd "${FILESDIR}/tmpfiles.d/clamav.conf"
+ systemd_newunit "${FILESDIR}/clamd_at.service" "clamd@.service"
+ systemd_dounit "${FILESDIR}/clamd.service"
+ systemd_dounit "${FILESDIR}/freshclamd.service"
+
+ insinto /etc/logrotate.d
+ newins "${FILESDIR}"/clamav.logrotate clamav
+
+ # Modify /etc/{clamd,freshclam}.conf to be usable out of the box
sed -i -e "s:^\(Example\):\# \1:" \
- -e "s:.*\(PidFile\) .*:\1 ${EPREFIX}/var/run/clamav/clamav-milter.pid:" \
- -e "s+^\#\(ClamdSocket\) .*+\1 unix:${EPREFIX}/var/run/clamav/clamd.sock+" \
+ -e "s:.*\(PidFile\) .*:\1 ${EPREFIX}/var/run/clamav/clamd.pid:" \
+ -e "s:.*\(LocalSocket\) .*:\1 ${EPREFIX}/var/run/clamav/clamd.sock:" \
-e "s:.*\(User\) .*:\1 clamav:" \
- -e "s+^\#\(MilterSocket\) /.*+\1 unix:${EPREFIX}/var/run/clamav/clamav-milter.sock+" \
+ -e "s:^\#\(LogFile\) .*:\1 ${EPREFIX}/var/log/clamav/clamd.log:" \
+ -e "s:^\#\(LogTime\).*:\1 yes:" \
-e "s:^\#\(AllowSupplementaryGroups\).*:\1 yes:" \
- -e "s:^\#\(LogFile\) .*:\1 ${EPREFIX}/var/log/clamav/clamav-milter.log:" \
- "${ED}"/etc/clamav-milter.conf.sample || die
- cat >> "${ED}"/etc/conf.d/clamd <<-EOF
- MILTER_NICELEVEL=19
- START_MILTER=no
- EOF
-
- systemd_newunit "${FILESDIR}/clamav-milter.service-r1" clamav-milter.service
- fi
+ -e "s:^\#\(DatabaseDirectory\).*:\1 /var/lib/clamav:" \
+ "${ED}"/etc/clamd.conf.sample || die
- if use doc; then
- einstalldocs
- doman docs/man/*.[1-8]
+ sed -i -e "s:^\(Example\):\# \1:" \
+ -e "s:.*\(PidFile\) .*:\1 ${EPREFIX}/var/run/clamav/freshclam.pid:" \
+ -e "s:.*\(DatabaseOwner\) .*:\1 clamav:" \
+ -e "s:^\#\(UpdateLogFile\) .*:\1 ${EPREFIX}/var/log/clamav/freshclam.log:" \
+ -e "s:^\#\(NotifyClamd\).*:\1 ${EPREFIX}/etc/clamd.conf:" \
+ -e "s:^\#\(ScriptedUpdates\).*:\1 yes:" \
+ -e "s:^\#\(AllowSupplementaryGroups\).*:\1 yes:" \
+ -e "s:^\#\(DatabaseDirectory\).*:\1 /var/lib/clamav:" \
+ "${ED}"/etc/freshclam.conf.sample || die
+
+ if use milter ; then
+ # MilterSocket one to include ' /' because there is a 2nd line for
+ # inet: which we want to leave
+ ##dodoc "${FILESDIR}"/clamav-milter.README.gentoo
+ sed -i -e "s:^\(Example\):\# \1:" \
+ -e "s:.*\(PidFile\) .*:\1 ${EPREFIX}/var/run/clamav/clamav-milter.pid:" \
+ -e "s+^\#\(ClamdSocket\) .*+\1 unix:${EPREFIX}/var/run/clamav/clamd.sock+" \
+ -e "s:.*\(User\) .*:\1 clamav:" \
+ -e "s+^\#\(MilterSocket\) /.*+\1 unix:${EPREFIX}/var/run/clamav/clamav-milter.sock+" \
+ -e "s:^\#\(AllowSupplementaryGroups\).*:\1 yes:" \
+ -e "s:^\#\(LogFile\) .*:\1 ${EPREFIX}/var/log/clamav/clamav-milter.log:" \
+ "${ED}"/etc/clamav-milter.conf.sample || die
+
+ cat >> "${ED}"/etc/conf.d/clamd <<-EOF
+ MILTER_NICELEVEL=19
+ START_MILTER=no
+ EOF
+
+ systemd_newunit "${FILESDIR}/clamav-milter.service-r1" clamav-milter.service
+ fi
+
+ local i
+ for i in clamd freshclam clamav-milter
+ do
+ if [[ -f "${ED}"/etc/"${i}".conf.sample ]]; then
+ mv "${ED}"/etc/"${i}".conf{.sample,} || die
+ fi
+ done
+
+ # These both need to be writable by the clamav user.
+ # TODO: use syslog by default; that's what it's for.
+ diropts -o clamav -g clamav
+ keepdir /var/lib/clamav
+ keepdir /var/log/clamav
fi
- for i in clamd freshclam clamav-milter
- do
- if [[ -f "${D}"/etc/"${i}".conf.sample ]]; then
- mv "${D}"/etc/"${i}".conf{.sample,} || die
- fi
- done
+ if use doc ; then
+ local HTML_DOCS=( docs/html/. )
+ einstalldocs
- prune_libtool_files --all
+ if ! use libclamav-only ; then
+ doman docs/man/*.[1-8]
+ fi
+ fi
- # These both need to be writable by the clamav user.
- # TODO: use syslog by default; that's what it's for.
- diropts -o clamav -g clamav
- keepdir /var/lib/clamav
- keepdir /var/log/clamav
+ find "${ED}" -name '*.la' -delete || die
}
src_test() {
+ if use libclamav-only ; then
+ ewarn "Test target not available when USE=libclamav-only is set, skipping tests ..."
+ return 0
+ fi
+
emake quick-check
}
@@ -187,11 +201,13 @@ pkg_postinst() {
elog "For simple instructions how to setup the clamav-milter read the"
elog "clamav-milter.README.gentoo in /usr/share/doc/${PF}"
fi
- local databases=( "${ROOT}"var/lib/clamav/main.c[lv]d )
+
+ local databases=( "${EROOT}"/var/lib/clamav/main.c[lv]d )
if [[ ! -f "${databases}" ]] ; then
ewarn "You must run freshclam manually to populate the virus database"
ewarn "before starting clamav for the first time."
fi
+
elog "For instructions on how to use clamonacc, see"
elog
elog " https://www.clamav.net/documents/on-access-scanning"
diff --git a/app-antivirus/clamav/files/clamav-0.102.2-fix-curl-detection.patch b/app-antivirus/clamav/files/clamav-0.102.2-fix-curl-detection.patch
new file mode 100644
index 00000000000..f89a704ea3e
--- /dev/null
+++ b/app-antivirus/clamav/files/clamav-0.102.2-fix-curl-detection.patch
@@ -0,0 +1,26 @@
+https://bugs.gentoo.org/709616
+
+--- a/configure.ac
++++ b/configure.ac
+@@ -197,6 +197,10 @@ AC_CONFIG_FILES([
+ clamav-types.h
+ clamav-version.h])
+ if test "x$enable_libclamav_only" != "xyes"; then
++ if test "$have_curl" = "no"; then
++ AC_MSG_ERROR([libcurl not found. libcurl (e.g. libcurl-devel) is required in order to build freshclam and clamsubmit.])
++ fi
++
+ AC_CONFIG_FILES([
+ clamscan/Makefile
+ database/Makefile
+--- a/m4/reorganization/libs/curl.m4
++++ b/m4/reorganization/libs/curl.m4
+@@ -92,8 +92,6 @@ if test "X$have_curl" = "Xyes"; then
+ )
+
+ LDFLAGS="$save_LDFLAGS"
+-else
+- AC_MSG_ERROR([libcurl not found. libcurl (e.g. libcurl-devel) is required in order to build freshclam and clamsubmit.])
+ fi
+
+ AC_SUBST([CLAMSUBMIT_LIBS])
^ permalink raw reply related [flat|nested] 15+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: app-antivirus/clamav/, app-antivirus/clamav/files/
@ 2020-06-21 13:38 Michael Orlitzky
0 siblings, 0 replies; 15+ messages in thread
From: Michael Orlitzky @ 2020-06-21 13:38 UTC (permalink / raw
To: gentoo-commits
commit: 3bf547dbe7ade89d37115521322b3b6566e1f5c5
Author: Michael Orlitzky <mjo <AT> gentoo <DOT> org>
AuthorDate: Sun Jun 21 12:32:06 2020 +0000
Commit: Michael Orlitzky <mjo <AT> gentoo <DOT> org>
CommitDate: Sun Jun 21 13:37:44 2020 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=3bf547db
app-antivirus/clamav: new revision to unbundle tomsfastmath.
Now that dev-libs/tomsfastmath is in the tree, add a new revision of
clamav that (a) deletes the bundled copy from the source tree, and (b)
patches in the system copy. Thanks to sam_c for taking this on!
Closes: https://bugs.gentoo.org/649394
Package-Manager: Portage-2.3.99, Repoman-2.3.22
Signed-off-by: Michael Orlitzky <mjo <AT> gentoo.org>
app-antivirus/clamav/clamav-0.102.3-r1.ebuild | 222 +++++++++++++++++++++
.../files/clamav-0.102.3-system-tomsfastmath.patch | 113 +++++++++++
2 files changed, 335 insertions(+)
diff --git a/app-antivirus/clamav/clamav-0.102.3-r1.ebuild b/app-antivirus/clamav/clamav-0.102.3-r1.ebuild
new file mode 100644
index 00000000000..09054b32b34
--- /dev/null
+++ b/app-antivirus/clamav/clamav-0.102.3-r1.ebuild
@@ -0,0 +1,222 @@
+# Copyright 1999-2020 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+inherit autotools flag-o-matic systemd
+
+DESCRIPTION="Clam Anti-Virus Scanner"
+HOMEPAGE="https://www.clamav.net/"
+SRC_URI="https://www.clamav.net/downloads/production/${P}.tar.gz"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~ppc ~ppc64 ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~sparc-solaris ~x86-solaris"
+IUSE="bzip2 doc clamdtop clamsubmit iconv ipv6 libclamav-only libressl milter metadata-analysis-api selinux test uclibc xml"
+
+REQUIRED_USE="libclamav-only? ( !clamdtop !clamsubmit !milter !metadata-analysis-api )"
+
+RESTRICT="!test? ( test )"
+
+# Require acct-{user,group}/clamav at build time so that we can set
+# the permissions on /var/lib/clamav in src_install rather than in
+# pkg_postinst; calling "chown" on the live filesystem scares me.
+CDEPEND="acct-group/clamav
+ acct-user/clamav
+ dev-libs/libltdl
+ dev-libs/libmspack
+ || ( dev-libs/libpcre2 >dev-libs/libpcre-6 )
+ dev-libs/tomsfastmath
+ >=sys-libs/zlib-1.2.2:=
+ bzip2? ( app-arch/bzip2 )
+ clamdtop? ( sys-libs/ncurses:0 )
+ clamsubmit? ( net-misc/curl dev-libs/json-c:= )
+ elibc_musl? ( sys-libs/fts-standalone )
+ iconv? ( virtual/libiconv )
+ !libclamav-only? ( net-misc/curl )
+ !libressl? ( dev-libs/openssl:0= )
+ libressl? ( dev-libs/libressl:0= )
+ milter? ( || ( mail-filter/libmilter mail-mta/sendmail ) )
+ xml? ( dev-libs/libxml2 )"
+
+BDEPEND="virtual/pkgconfig"
+
+DEPEND="${CDEPEND}
+ metadata-analysis-api? ( dev-libs/json-c:* )
+ test? ( dev-libs/check )"
+RDEPEND="${CDEPEND}
+ selinux? ( sec-policy/selinux-clamav )"
+
+PATCHES=(
+ "${FILESDIR}/${PN}-0.101.2-tinfo.patch" #670729
+ "${FILESDIR}/${PN}-0.102.1-libxml2_pkgconfig.patch" #661328
+ "${FILESDIR}/${PN}-0.102.2-fix-curl-detection.patch" #709616
+ "${FILESDIR}/${P}-system-tomsfastmath.patch" # 649394
+)
+
+src_prepare() {
+ default
+
+ # Be extra sure that we're using the system copy of tomsfastmath
+ einfo "removing bundled copy of dev-libs/tomsfastmath"
+ rm -r libclamav/tomsfastmath || \
+ die "failed to remove bundled tomsfastmath"
+
+ AT_NO_RECURSIVE="yes" eautoreconf
+}
+
+src_configure() {
+ use elibc_musl && append-ldflags -lfts
+ use ppc64 && append-flags -mminimal-toc
+ use uclibc && export ac_cv_type_error_t=yes
+
+ # according to configure help it should be
+ # $(use_enable xml)
+ # but that does not work
+ # do not add this, since --disable-xml seems to override
+ # --without-xml
+ JSONUSE="--without-libjson"
+
+ if use clamsubmit || use metadata-analysis-api; then
+ # either of those 2 requires libjson.
+ # clamsubmit will be built as soon as libjson and curl are found
+ # but we only install the binary if requested
+ JSONUSE="--with-libjson=${EPREFIX}/usr"
+ fi
+
+ local myeconfargs=(
+ $(use_enable bzip2)
+ $(use_enable clamdtop)
+ $(use_enable ipv6)
+ $(use_enable milter)
+ $(use_enable test check)
+ $(use_with xml)
+ $(use_with iconv)
+ ${JSONUSE}
+ $(use_enable libclamav-only)
+ $(use_with !libclamav-only libcurl)
+ --with-system-libmspack
+ --cache-file="${S}"/config.cache
+ --disable-experimental
+ --disable-static
+ --disable-zlib-vcheck
+ --enable-id-check
+ --with-dbdir="${EPREFIX}"/var/lib/clamav
+ # Don't call --with-zlib=/usr (see bug #699296)
+ --with-zlib
+ --disable-llvm
+ )
+ econf "${myeconfargs[@]}"
+}
+
+src_install() {
+ default
+
+ rm -rf "${ED}"/var/lib/clamav || die
+
+ if ! use libclamav-only ; then
+ newinitd "${FILESDIR}"/clamd.initd-r6 clamd
+ newconfd "${FILESDIR}"/clamd.conf-r1 clamd
+
+ systemd_dotmpfilesd "${FILESDIR}/tmpfiles.d/clamav.conf"
+ systemd_newunit "${FILESDIR}/clamd_at.service" "clamd@.service"
+ systemd_dounit "${FILESDIR}/clamd.service"
+ systemd_dounit "${FILESDIR}/freshclamd.service"
+
+ insinto /etc/logrotate.d
+ newins "${FILESDIR}"/clamav.logrotate clamav
+
+ # Modify /etc/{clamd,freshclam}.conf to be usable out of the box
+ sed -i -e "s:^\(Example\):\# \1:" \
+ -e "s:.*\(PidFile\) .*:\1 ${EPREFIX}/var/run/clamav/clamd.pid:" \
+ -e "s:.*\(LocalSocket\) .*:\1 ${EPREFIX}/var/run/clamav/clamd.sock:" \
+ -e "s:.*\(User\) .*:\1 clamav:" \
+ -e "s:^\#\(LogFile\) .*:\1 ${EPREFIX}/var/log/clamav/clamd.log:" \
+ -e "s:^\#\(LogTime\).*:\1 yes:" \
+ -e "s:^\#\(AllowSupplementaryGroups\).*:\1 yes:" \
+ -e "s:^\#\(DatabaseDirectory\).*:\1 /var/lib/clamav:" \
+ "${ED}"/etc/clamd.conf.sample || die
+
+ sed -i -e "s:^\(Example\):\# \1:" \
+ -e "s:.*\(PidFile\) .*:\1 ${EPREFIX}/var/run/clamav/freshclam.pid:" \
+ -e "s:.*\(DatabaseOwner\) .*:\1 clamav:" \
+ -e "s:^\#\(UpdateLogFile\) .*:\1 ${EPREFIX}/var/log/clamav/freshclam.log:" \
+ -e "s:^\#\(NotifyClamd\).*:\1 ${EPREFIX}/etc/clamd.conf:" \
+ -e "s:^\#\(ScriptedUpdates\).*:\1 yes:" \
+ -e "s:^\#\(AllowSupplementaryGroups\).*:\1 yes:" \
+ -e "s:^\#\(DatabaseDirectory\).*:\1 /var/lib/clamav:" \
+ "${ED}"/etc/freshclam.conf.sample || die
+
+ if use milter ; then
+ # MilterSocket one to include ' /' because there is a 2nd line for
+ # inet: which we want to leave
+ ##dodoc "${FILESDIR}"/clamav-milter.README.gentoo
+ sed -i -e "s:^\(Example\):\# \1:" \
+ -e "s:.*\(PidFile\) .*:\1 ${EPREFIX}/var/run/clamav/clamav-milter.pid:" \
+ -e "s+^\#\(ClamdSocket\) .*+\1 unix:${EPREFIX}/var/run/clamav/clamd.sock+" \
+ -e "s:.*\(User\) .*:\1 clamav:" \
+ -e "s+^\#\(MilterSocket\) /.*+\1 unix:${EPREFIX}/var/run/clamav/clamav-milter.sock+" \
+ -e "s:^\#\(AllowSupplementaryGroups\).*:\1 yes:" \
+ -e "s:^\#\(LogFile\) .*:\1 ${EPREFIX}/var/log/clamav/clamav-milter.log:" \
+ "${ED}"/etc/clamav-milter.conf.sample || die
+
+ cat >> "${ED}"/etc/conf.d/clamd <<-EOF
+ MILTER_NICELEVEL=19
+ START_MILTER=no
+ EOF
+
+ systemd_newunit "${FILESDIR}/clamav-milter.service-r1" clamav-milter.service
+ fi
+
+ local i
+ for i in clamd freshclam clamav-milter
+ do
+ if [[ -f "${ED}"/etc/"${i}".conf.sample ]]; then
+ mv "${ED}"/etc/"${i}".conf{.sample,} || die
+ fi
+ done
+
+ # These both need to be writable by the clamav user.
+ # TODO: use syslog by default; that's what it's for.
+ diropts -o clamav -g clamav
+ keepdir /var/lib/clamav
+ keepdir /var/log/clamav
+ fi
+
+ if use doc ; then
+ local HTML_DOCS=( docs/html/. )
+ einstalldocs
+
+ if ! use libclamav-only ; then
+ doman docs/man/*.[1-8]
+ fi
+ fi
+
+ find "${ED}" -name '*.la' -delete || die
+}
+
+src_test() {
+ if use libclamav-only ; then
+ ewarn "Test target not available when USE=libclamav-only is set, skipping tests ..."
+ return 0
+ fi
+
+ emake quick-check
+}
+
+pkg_postinst() {
+ if use milter ; then
+ elog "For simple instructions how to setup the clamav-milter read the"
+ elog "clamav-milter.README.gentoo in /usr/share/doc/${PF}"
+ fi
+
+ local databases=( "${EROOT}"/var/lib/clamav/main.c[lv]d )
+ if [[ ! -f "${databases}" ]] ; then
+ ewarn "You must run freshclam manually to populate the virus database"
+ ewarn "before starting clamav for the first time."
+ fi
+
+ elog "For instructions on how to use clamonacc, see"
+ elog
+ elog " https://www.clamav.net/documents/on-access-scanning"
+}
diff --git a/app-antivirus/clamav/files/clamav-0.102.3-system-tomsfastmath.patch b/app-antivirus/clamav/files/clamav-0.102.3-system-tomsfastmath.patch
new file mode 100644
index 00000000000..ee575c3b128
--- /dev/null
+++ b/app-antivirus/clamav/files/clamav-0.102.3-system-tomsfastmath.patch
@@ -0,0 +1,113 @@
+From bcf63fa6bbd519bc61c2b2553fb1913f802eb96e Mon Sep 17 00:00:00 2001
+From: Andreas Cadhalpun <Andreas.Cadhalpun@googlemail.com>
+Date: Wed, 11 Mar 2015 20:03:15 +0100
+Subject: add support for system tomsfastmath
+
+Patch-Name: add-support-for-system-tomsfastmath.patch
+---
+ configure.ac | 2 ++
+ libclamav/Makefile.am | 10 ++++++++--
+ libclamav/bignum.h | 6 +++++-
+ libclamav/xdp.c | 2 +-
+ m4/reorganization/libs/tomsfastmath.m4 | 12 ++++++++++++
+ 5 files changed, 28 insertions(+), 4 deletions(-)
+ create mode 100644 m4/reorganization/libs/tomsfastmath.m4
+
+diff --git a/configure.ac b/configure.ac
+index 8375971..3cacfb8 100644
+--- a/configure.ac
++++ b/configure.ac
+@@ -98,6 +98,7 @@ m4_include([m4/reorganization/libs/libmspack.m4])
+ if test "x$use_internal_mspack" = "xno"; then
+ mspack_msg="External, $LIBMSPACK_CFLAGS $LIBMSPACK_LIBS"
+ fi
++m4_include([m4/reorganization/libs/tomsfastmath.m4])
+
+ AM_MAINTAINER_MODE
+ m4_include([m4/reorganization/libs/libz.m4])
+@@ -356,6 +357,7 @@ fi
+ CL_MSG_STATUS([yara ],[$enable_yara],[$enable_yara])
+ CL_MSG_STATUS([fts ],[yes],[$lfs_fts_msg])
+
++CL_MSG_STATUS([tomsfastmath],[yes],[$tomsfastmath_msg])
+
+ # Yep, downgrading the compiler avoids the bug too:
+ # 4.0.x, and 4.1.0 are the known buggy versions
+diff --git a/libclamav/Makefile.am b/libclamav/Makefile.am
+index 699d033..3282272 100644
+--- a/libclamav/Makefile.am
++++ b/libclamav/Makefile.am
+@@ -602,8 +602,10 @@ libclamav_la_SOURCES += yara_arena.c \
+ yara_clam.h
+ endif
+
+-libclamav_la_SOURCES += bignum.h\
+- bignum_fast.h\
++libclamav_la_SOURCES += bignum.h
++
++if !SYSTEM_TOMSFASTMATH
++libclamav_la_SOURCES += bignum_fast.h\
+ tomsfastmath/addsub/fp_add.c\
+ tomsfastmath/addsub/fp_add_d.c\
+ tomsfastmath/addsub/fp_addmod.c\
+@@ -685,6 +687,10 @@ libclamav_la_SOURCES += bignum.h\
+ tomsfastmath/sqr/fp_sqr_comba_generic.c\
+ tomsfastmath/sqr/fp_sqr_comba_small_set.c\
+ tomsfastmath/sqr/fp_sqrmod.c
++else
++libclamav_la_CFLAGS += $(TOMSFASTMATH_CFLAGS)
++libclamav_la_LIBADD += $(TOMSFASTMATH_LIBS)
++endif
+
+ .PHONY2: version.h.tmp
+ version.c: version.h
+diff --git a/libclamav/bignum.h b/libclamav/bignum.h
+index 8fdc956..56dfa95 100644
+--- a/libclamav/bignum.h
++++ b/libclamav/bignum.h
+@@ -1,9 +1,13 @@
+ #ifndef BIGNUM_H_
+ #define BIGNUM_H_
+
++#if HAVE_SYSTEM_TOMSFASTMATH
++#include <tfm.h>
++#else
+ #define TFM_CHECK
+-
+ #include "bignum_fast.h"
++#endif
++
+ typedef fp_int mp_int;
+ #define mp_cmp fp_cmp
+ #define mp_toradix_n(a, b, c, d) fp_toradix_n(a, b, c, d)
+diff --git a/libclamav/xdp.c b/libclamav/xdp.c
+index d5a4c4b..cc3b40d 100644
+--- a/libclamav/xdp.c
++++ b/libclamav/xdp.c
+@@ -52,7 +52,7 @@
+ #include "scanners.h"
+ #include "conv.h"
+ #include "xdp.h"
+-#include "bignum_fast.h"
++#include "bignum.h"
+ #include "filetypes.h"
+
+ static char *dump_xdp(cli_ctx *ctx, const char *start, size_t sz);
+diff --git a/m4/reorganization/libs/tomsfastmath.m4 b/m4/reorganization/libs/tomsfastmath.m4
+new file mode 100644
+index 0000000..2a821a1
+--- /dev/null
++++ b/m4/reorganization/libs/tomsfastmath.m4
+@@ -0,0 +1,12 @@
++dnl Check for system tomsfastmath
++PKG_CHECK_MODULES([TOMSFASTMATH], [tomsfastmath], [have_system_tomsfastmath=yes], [have_system_tomsfastmath=no])
++
++AM_CONDITIONAL([SYSTEM_TOMSFASTMATH], [test "x$have_system_tomsfastmath" = "xyes"])
++
++if test "x$have_system_tomsfastmath" = "xyes"; then
++ AC_DEFINE([HAVE_SYSTEM_TOMSFASTMATH], [1], [link against system-wide tomsfastmath library])
++ tomsfastmath_msg="External, $TOMSFASTMATH_CFLAGS $TOMSFASTMATH_LIBS"
++else
++ AC_DEFINE([HAVE_SYSTEM_TOMSFASTMATH], [0], [don't link against system-wide tomsfastmath library])
++ tomsfastmath_msg="Internal"
++fi
^ permalink raw reply related [flat|nested] 15+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: app-antivirus/clamav/, app-antivirus/clamav/files/
@ 2020-12-18 1:10 Michael Orlitzky
0 siblings, 0 replies; 15+ messages in thread
From: Michael Orlitzky @ 2020-12-18 1:10 UTC (permalink / raw
To: gentoo-commits
commit: 2de1bdef8744c467630be10ee4d2c723a05e708d
Author: Michael Orlitzky <mjo <AT> gentoo <DOT> org>
AuthorDate: Fri Dec 18 00:52:39 2020 +0000
Commit: Michael Orlitzky <mjo <AT> gentoo <DOT> org>
CommitDate: Fri Dec 18 00:52:39 2020 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=2de1bdef
app-antivirus/clamav: new revision with an upstream freshclam patch.
This -r2 adds a patch to ensure that freshclam does not validate
invalid databases and crash your clamd on the subsequent reload.
Upstream-bug: https://bugzilla.clamav.net/show_bug.cgi?id=12522
Package-Manager: Portage-3.0.9, Repoman-3.0.2
Signed-off-by: Michael Orlitzky <mjo <AT> gentoo.org>
...-0.103.0-r1.ebuild => clamav-0.103.0-r2.ebuild} | 1 +
.../clamav-0.103.0-freshclam-db-test-fix.patch | 27 ++++++++++++++++++++++
2 files changed, 28 insertions(+)
diff --git a/app-antivirus/clamav/clamav-0.103.0-r1.ebuild b/app-antivirus/clamav/clamav-0.103.0-r2.ebuild
similarity index 99%
rename from app-antivirus/clamav/clamav-0.103.0-r1.ebuild
rename to app-antivirus/clamav/clamav-0.103.0-r2.ebuild
index 52721c9856a..1ebe1bd96d9 100644
--- a/app-antivirus/clamav/clamav-0.103.0-r1.ebuild
+++ b/app-antivirus/clamav/clamav-0.103.0-r2.ebuild
@@ -55,6 +55,7 @@ PATCHES=(
"${FILESDIR}/${PN}-0.102.2-fix-curl-detection.patch" #709616
"${FILESDIR}/${PN}-0.103.0-system-tomsfastmath.patch" # 649394
"${FILESDIR}/${PN}-0.103.0-upstream-openrc.patch"
+ "${FILESDIR}/${PN}-0.103.0-freshclam-db-test-fix.patch"
)
src_prepare() {
diff --git a/app-antivirus/clamav/files/clamav-0.103.0-freshclam-db-test-fix.patch b/app-antivirus/clamav/files/clamav-0.103.0-freshclam-db-test-fix.patch
new file mode 100644
index 00000000000..25ae94b9fb8
--- /dev/null
+++ b/app-antivirus/clamav/files/clamav-0.103.0-freshclam-db-test-fix.patch
@@ -0,0 +1,27 @@
+diff --git a/freshclam/freshclam.c b/freshclam/freshclam.c
+index 8db3b8001..8cde8c9a8 100644
+--- a/freshclam/freshclam.c
++++ b/freshclam/freshclam.c
+@@ -280,6 +280,14 @@ fc_error_t download_complete_callback(const char *dbFilename, void *context)
+ goto done;
+ }
+ } else {
++ /*
++ * Attempt to test database in a child process.
++ */
++
++ /* We need to be able to wait for the child process ourselves.
++ * We'll re-enable wait in the global handler when we're done. */
++ g_sigchildWait = 0;
++
+ switch (pid = fork()) {
+ case -1: {
+ /*
+@@ -391,6 +399,7 @@ done:
+ logg("!Database test FAILED.\n");
+ }
+
++ /* Re-enable the global handler's child process wait */
+ g_sigchildWait = 1;
+
+ return status;
^ permalink raw reply related [flat|nested] 15+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: app-antivirus/clamav/, app-antivirus/clamav/files/
@ 2021-06-29 4:40 Sam James
0 siblings, 0 replies; 15+ messages in thread
From: Sam James @ 2021-06-29 4:40 UTC (permalink / raw
To: gentoo-commits
commit: 5e66ceb053b88d41ef3a76fdecd3144495d62976
Author: Hank Leininger <hlein <AT> korelogic <DOT> com>
AuthorDate: Sun Jun 27 18:11:39 2021 +0000
Commit: Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Tue Jun 29 04:12:01 2021 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=5e66ceb0
app-antivirus/clamav: fix logrotate file deployed when USE=milter
command -v writes to stdout, not stderr, so the check for openrc/systemd
was generating output and emails.
Signed-off-by: Hank Leininger <hlein <AT> korelogic.com>
Closes: https://bugs.gentoo.org/798933
Package-Manager: Portage-3.0.20, Repoman-3.0.3
Signed-off-by: Sam James <sam <AT> gentoo.org>
app-antivirus/clamav/clamav-0.103.3-r1.ebuild | 234 +++++++++++++++++++++
.../clamav/files/clamav-milter.logrotate-r1 | 25 +++
2 files changed, 259 insertions(+)
diff --git a/app-antivirus/clamav/clamav-0.103.3-r1.ebuild b/app-antivirus/clamav/clamav-0.103.3-r1.ebuild
new file mode 100644
index 00000000000..5fcae6ee66c
--- /dev/null
+++ b/app-antivirus/clamav/clamav-0.103.3-r1.ebuild
@@ -0,0 +1,234 @@
+# Copyright 1999-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+inherit autotools flag-o-matic systemd tmpfiles
+
+DESCRIPTION="Clam Anti-Virus Scanner"
+HOMEPAGE="https://www.clamav.net/"
+SRC_URI="https://www.clamav.net/downloads/production/${P}.tar.gz"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~ppc ~ppc64 ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~sparc-solaris ~x86-solaris"
+IUSE="bzip2 doc clamonacc clamdtop clamsubmit iconv ipv6 libclamav-only milter metadata-analysis-api selinux systemd test uclibc xml"
+
+REQUIRED_USE="libclamav-only? ( !clamonacc !clamdtop !clamsubmit !milter !metadata-analysis-api )"
+
+RESTRICT="!test? ( test )"
+
+# Require acct-{user,group}/clamav at build time so that we can set
+# the permissions on /var/lib/clamav in src_install rather than in
+# pkg_postinst; calling "chown" on the live filesystem scares me.
+CDEPEND="acct-group/clamav
+ acct-user/clamav
+ dev-libs/libltdl
+ dev-libs/libmspack
+ || ( dev-libs/libpcre2 >dev-libs/libpcre-6 )
+ dev-libs/tomsfastmath
+ >=sys-libs/zlib-1.2.2:=
+ bzip2? ( app-arch/bzip2 )
+ clamdtop? ( sys-libs/ncurses:0 )
+ clamsubmit? ( net-misc/curl dev-libs/json-c:= )
+ elibc_musl? ( sys-libs/fts-standalone )
+ iconv? ( virtual/libiconv )
+ !libclamav-only? ( net-misc/curl )
+ dev-libs/openssl:0=
+ milter? ( || ( mail-filter/libmilter mail-mta/sendmail ) )
+ xml? ( dev-libs/libxml2 )"
+
+# We need at least autoconf-2.69-r5 because that's the first (patched)
+# version of it in Gentoo that supports ./configure --runstatedir.
+BDEPEND=">=sys-devel/autoconf-2.69-r5
+ virtual/pkgconfig"
+
+DEPEND="${CDEPEND}
+ metadata-analysis-api? ( dev-libs/json-c:* )
+ test? ( dev-libs/check )"
+RDEPEND="${CDEPEND}
+ selinux? ( sec-policy/selinux-clamav )"
+
+PATCHES=(
+ "${FILESDIR}/${PN}-0.102.1-libxml2_pkgconfig.patch" #661328
+ "${FILESDIR}/${PN}-0.102.2-fix-curl-detection.patch" #709616
+ "${FILESDIR}/${PN}-0.103.0-system-tomsfastmath.patch" # 649394
+ "${FILESDIR}/${PN}-0.103.1-upstream-openrc.patch"
+)
+
+src_prepare() {
+ default
+
+ # Be extra sure that we're using the system copy of tomsfastmath
+ einfo "removing bundled copy of dev-libs/tomsfastmath"
+ rm -r libclamav/tomsfastmath || \
+ die "failed to remove bundled tomsfastmath"
+
+ AT_NO_RECURSIVE="yes" eautoreconf
+}
+
+src_configure() {
+ use elibc_musl && append-ldflags -lfts
+ use ppc64 && append-flags -mminimal-toc
+ use uclibc && export ac_cv_type_error_t=yes
+
+ # according to configure help it should be
+ # $(use_enable xml)
+ # but that does not work
+ # do not add this, since --disable-xml seems to override
+ # --without-xml
+ JSONUSE="--without-libjson"
+
+ if use clamsubmit || use metadata-analysis-api; then
+ # either of those 2 requires libjson.
+ # clamsubmit will be built as soon as libjson and curl are found
+ # but we only install the binary if requested
+ JSONUSE="--with-libjson=${EPREFIX}/usr"
+ fi
+
+ local myeconfargs=(
+ $(use_enable bzip2)
+ $(use_enable clamonacc)
+ $(use_enable clamdtop)
+ $(use_enable ipv6)
+ $(use_enable milter)
+ $(use_enable test check)
+ $(use_with xml)
+ $(use_with iconv)
+ ${JSONUSE}
+ $(use_enable libclamav-only)
+ $(use_with !libclamav-only libcurl)
+ --with-system-libmspack
+ --cache-file="${S}"/config.cache
+ --disable-experimental
+ --disable-static
+ --disable-zlib-vcheck
+ --enable-id-check
+ --with-dbdir="${EPREFIX}"/var/lib/clamav
+ # Don't call --with-zlib=/usr (see bug #699296)
+ --with-zlib
+ --disable-llvm
+ --enable-openrc
+ --runstatedir=/run
+ )
+ econf "${myeconfargs[@]}"
+}
+
+src_install() {
+ default
+
+ rm -rf "${ED}"/var/lib/clamav || die
+
+ if ! use libclamav-only ; then
+ if use systemd; then
+ # The tmpfiles entry is behind USE=systemd because the
+ # upstream OpenRC service files should (and do) ensure that
+ # the directories they need exist and have the correct
+ # permissions without the help of opentmpfiles. There are
+ # years-old root exploits in opentmpfiles, the design is
+ # fundamentally flawed, and the maintainer is not up to
+ # the task of fixing it.
+ dotmpfiles "${FILESDIR}/tmpfiles.d/clamav.conf"
+ systemd_newunit "${FILESDIR}/clamd_at.service" "clamd@.service"
+ systemd_dounit "${FILESDIR}/clamd.service"
+ systemd_newunit "${FILESDIR}/freshclamd.service-r1" \
+ "freshclamd.service"
+ fi
+
+ insinto /etc/logrotate.d
+ newins "${FILESDIR}/clamd.logrotate" clamd
+ newins "${FILESDIR}/freshclam.logrotate" freshclam
+ use milter && \
+ newins "${FILESDIR}/clamav-milter.logrotate-r1" clamav-milter
+
+ # Modify /etc/{clamd,freshclam}.conf to be usable out of the box
+ sed -i -e "s:^\(Example\):\# \1:" \
+ -e "s/^#\(PidFile .*\)/\1/" \
+ -e "s/^#\(LocalSocket .*\)/\1/" \
+ -e "s/^#\(User .*\)/\1/" \
+ -e "s:^\#\(LogFile\) .*:\1 ${EPREFIX}/var/log/clamav/clamd.log:" \
+ -e "s:^\#\(LogTime\).*:\1 yes:" \
+ -e "s/^#\(DatabaseDirectory .*\)/\1/" \
+ "${ED}"/etc/clamd.conf.sample || die
+
+ sed -i -e "s:^\(Example\):\# \1:" \
+ -e "s/^#\(PidFile .*\)/\1/" \
+ -e "s/^#\(DatabaseOwner .*\)/\1/" \
+ -e "s:^\#\(UpdateLogFile\) .*:\1 ${EPREFIX}/var/log/clamav/freshclam.log:" \
+ -e "s:^\#\(NotifyClamd\).*:\1 ${EPREFIX}/etc/clamd.conf:" \
+ -e "s:^\#\(ScriptedUpdates\).*:\1 yes:" \
+ -e "s/^#\(DatabaseDirectory .*\)/\1/" \
+ "${ED}"/etc/freshclam.conf.sample || die
+
+ if use milter ; then
+ # Note: only keep the "unix" ClamdSocket and MilterSocket!
+ sed -i -e "s:^\(Example\):\# \1:" \
+ -e "s/^#\(PidFile .*\)/\1/" \
+ -e "s/^#\(ClamdSocket unix:.*\)/\1/" \
+ -e "s/^#\(User .*\)/\1/" \
+ -e "s/^#\(MilterSocket unix:.*\)/\1/" \
+ -e "s:^\#\(LogFile\) .*:\1 ${EPREFIX}/var/log/clamav/clamav-milter.log:" \
+ "${ED}"/etc/clamav-milter.conf.sample || die
+
+ cat >> "${ED}"/etc/conf.d/clamd <<-EOF
+ MILTER_NICELEVEL=19
+ START_MILTER=no
+ EOF
+
+ systemd_newunit "${FILESDIR}/clamav-milter.service-r1" clamav-milter.service
+ fi
+
+ local i
+ for i in clamd freshclam clamav-milter
+ do
+ if [[ -f "${ED}"/etc/"${i}".conf.sample ]]; then
+ mv "${ED}"/etc/"${i}".conf{.sample,} || die
+ fi
+ done
+
+ # These both need to be writable by the clamav user.
+ # TODO: use syslog by default; that's what it's for.
+ diropts -o clamav -g clamav
+ keepdir /var/lib/clamav
+ keepdir /var/log/clamav
+ fi
+
+ if use doc ; then
+ local HTML_DOCS=( docs/html/. )
+ einstalldocs
+
+ if ! use libclamav-only ; then
+ doman docs/man/*.[1-8]
+ fi
+ fi
+
+ find "${ED}" -name '*.la' -delete || die
+}
+
+src_test() {
+ if use libclamav-only ; then
+ ewarn "Test target not available when USE=libclamav-only is set, skipping tests ..."
+ return 0
+ fi
+
+ emake quick-check
+}
+
+pkg_postinst() {
+ if use milter ; then
+ elog "For simple instructions how to setup the clamav-milter read the"
+ elog "clamav-milter.README.gentoo in /usr/share/doc/${PF}"
+ fi
+
+ local databases=( "${EROOT}"/var/lib/clamav/main.c[lv]d )
+ if [[ ! -f "${databases}" ]] ; then
+ ewarn "You must run freshclam manually to populate the virus database"
+ ewarn "before starting clamav for the first time."
+ fi
+
+ ewarn "This version of ClamAV provides separate OpenRC services"
+ ewarn "for clamd, freshclam, clamav-milter, and clamonacc. The"
+ ewarn "clamd service now starts only the clamd daemon itself. You"
+ ewarn "should add freshclam (and perhaps clamav-milter) to any"
+ ewarn "runlevels that previously contained clamd."
+}
diff --git a/app-antivirus/clamav/files/clamav-milter.logrotate-r1 b/app-antivirus/clamav/files/clamav-milter.logrotate-r1
new file mode 100644
index 00000000000..8d2f31a852a
--- /dev/null
+++ b/app-antivirus/clamav/files/clamav-milter.logrotate-r1
@@ -0,0 +1,25 @@
+# This script is intended to rotate the logs for clamav-milter in its
+# default configuration on Gentoo, where clamav-milter writes to its
+# own log file but does not rotate that file itself. The clamav-milter
+# daemon is capable of rotating its own logs; if you have "LogRotate
+# yes" in clamav-milter.conf then you do not need this script (and
+# should disable it). Likewise, if you are logging to syslog
+# (LogSyslog yes), this is redundant.
+#
+# This is more complicated than the clamd/freshclam scripts because
+# the milter doesn't yet reopen its log files when it receives a
+# SIGHUP. See https://bugzilla.clamav.net/show_bug.cgi?id=12615
+# for that. Instead we have to attempt OpenRC/systemd service
+# restarts on (only) the machines that support them.
+/var/log/clamav/clamav-milter.log {
+ su clamav clamav
+ missingok
+ postrotate
+ if command -v rc-service >/dev/null; then
+ rc-service clamav-milter status 2>/dev/null 1>&2 && rc-service clamav-milter restart 1>/dev/null
+ fi
+ if command -v systemctl >/dev/null; then
+ systemctl try-restart clamav-milter
+ fi
+ endscript
+}
^ permalink raw reply related [flat|nested] 15+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: app-antivirus/clamav/, app-antivirus/clamav/files/
@ 2023-01-05 7:47 Sam James
0 siblings, 0 replies; 15+ messages in thread
From: Sam James @ 2023-01-05 7:47 UTC (permalink / raw
To: gentoo-commits
commit: 396f59676fd3c6429eb28206b1ac76bad18ba1cc
Author: Sam James <sam <AT> gentoo <DOT> org>
AuthorDate: Thu Jan 5 07:46:02 2023 +0000
Commit: Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Thu Jan 5 07:46:02 2023 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=396f5967
app-antivirus/clamav: drop 0.104.4-r1, 0.105.1
Signed-off-by: Sam James <sam <AT> gentoo.org>
app-antivirus/clamav/Manifest | 2 -
app-antivirus/clamav/clamav-0.104.4-r1.ebuild | 215 ------------------
app-antivirus/clamav/clamav-0.105.1.ebuild | 246 ---------------------
.../files/clamav-0.105.1-cmake-llvm-fix.patch | 73 ------
4 files changed, 536 deletions(-)
diff --git a/app-antivirus/clamav/Manifest b/app-antivirus/clamav/Manifest
index 2fec99b21026..481ecf0d62e2 100644
--- a/app-antivirus/clamav/Manifest
+++ b/app-antivirus/clamav/Manifest
@@ -15,8 +15,6 @@ DIST cexpr-0.6.0.crate 17966 BLAKE2B cb46f066eb1f4dbac00ec86dc3e562db7ee8ea5ff17
DIST cfg-if-1.0.0.crate 7934 BLAKE2B e99a5589c11d79d77a4537b34ce0a45d37b981c123b79b807cea836c89fc3926d693458893baca2882448d3d44e3f64e06141f6d916b748daa10b8cc1ae16d1b SHA512 0fb16a8882fd30e86b62c5143b1cb18ab564e84e75bd1f28fd12f24ffdc4a42e0d2e012a99abb606c12efe3c11061ff5bf8e24ab053e550ae083f7d90f6576ff
DIST clamav-0.103.6.tar.gz 16491761 BLAKE2B 3c43bcda4a613f81d1b31036e7323a7af7708e54af94ad30a659a8fb318d8f79f357086ce70703659298524d778374df886495cd8c75280bbbe4bae30795a85a SHA512 d39e1964678b8251bde3a9f3db30fe3d3d76cc566a86834297f4dd8489086dc9cc4c6541ca128089159f4c071d2d85b530455bd942987d3929ea0082b8ab272b
DIST clamav-0.103.7.tar.gz 16501741 BLAKE2B 49fc1c8c42ee8168dbaec4aa13ab0dfef7fa285e335cb38b17bc020df7400ee1daae49e06ba5b4ae0364d47d707cb83c0b1a8442d5b01d2bba5827606fe27fb4 SHA512 d426169889d94411b20a2c9c9579fc22a15090c9847849822c63fc6b404075feba0ff3663ee1382b2af5300394c7a93669844736f7473bfdce3250e1fd130326
-DIST clamav-0.104.4.tar.gz 12027448 BLAKE2B e8627b49b46e9bf5669b7186d829fd2caa76d9071b1533da252fea1bdeed1b78ec4a138db8957b0d121df1180eb37a6230f5f0db1e4d3f2de80bf7dddad5b47e SHA512 5aa8abe96ff49548cf74df47a7e56279c3082dc8ca98cab02f64f44b2da0230e75b5f634b3086ba8ca155052cbc22a2a47ab3dd159ae033d3f599dcde1f2420e
-DIST clamav-0.105.1.tar.gz 29467856 BLAKE2B be46d9afd76fb536d7de7363a45d38fef6a5983011e3cd0dcc25c2a209c8d37a2bbe1f7f4a5694152cabf622ef83e072b892ae12ba404da1955bb5b654e5216d SHA512 dcaa3eb90e5a8951f1750f0676791c33507206ae0d58a3da0d07f6f86b559799db09a4aed83fbd9d3eed8f1f17654f8304070e6770ba7e02de6f2be2cda65bec
DIST clamav-1.0.0.tar.gz 10311477 BLAKE2B 8d66c03e7717ed52cb90a139f565abe2ed3379e09d500530c260f129f1f8eb2549dca11898f6c1a85e7988ce06388c8967e6decea06c840220ffccb4010add60 SHA512 a1be526516e622fd3359461db7dd8eb0734f7ba8ecb0b63c1574e216885cd7bcdc69ffdbc5e507a0060d23769e3caa8423aa273ec57bb86e40049679a818152a
DIST clang-sys-1.4.0.crate 38679 BLAKE2B d15bdae2142ed26b4f6bd037bd2062e8c4b7b87fc5b749b872a95ff1952d000066c255aa0984e5f9c4a5c88066db4a20cfd048db4ba5a59b331d5ffa5e9a281d SHA512 062189bb0a341e2e85de4987f4b564c1fc69e4005c9c42cfedb61dee5f48db9126a8114d1d97be1b9c21b8c885243751232fbe8cf532e1d2be593308fe45216a
DIST clap-2.34.0.crate 202210 BLAKE2B f383adf1d757ac4b68995132b33837686ce451f85a02a8d05d2c746da398510d05d46330f3efade063c3952aacb1754cdac73dd0afcae0df5340a89f9353aa1c SHA512 c648a761b9996a7e7464a538bb53621bae22090b846a42c3b729beca3363958ae67e3da9f93f58b10a10e043cadf7ff930388680d168646178c2824177832db8
diff --git a/app-antivirus/clamav/clamav-0.104.4-r1.ebuild b/app-antivirus/clamav/clamav-0.104.4-r1.ebuild
deleted file mode 100644
index 6514459df831..000000000000
--- a/app-antivirus/clamav/clamav-0.104.4-r1.ebuild
+++ /dev/null
@@ -1,215 +0,0 @@
-# Copyright 1999-2022 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-PYTHON_COMPAT=( python3_{8..10} )
-inherit cmake flag-o-matic python-any-r1 systemd tmpfiles
-
-DESCRIPTION="Clam Anti-Virus Scanner"
-HOMEPAGE="https://www.clamav.net/"
-SRC_URI="https://www.clamav.net/downloads/production/${P}.tar.gz"
-
-LICENSE="GPL-2"
-SLOT="0"
-KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~ppc ~ppc64 ~riscv ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~sparc-solaris ~x86-solaris"
-IUSE="doc clamonacc +clamapp libclamav-only milter rar selinux systemd test"
-
-REQUIRED_USE="libclamav-only? ( !clamonacc !clamapp !milter )
- clamonacc? ( clamapp )
- milter? ( clamapp )
- test? ( !libclamav-only )"
-
-RESTRICT="!test? ( test )"
-
-# Require acct-{user,group}/clamav at build time so that we can set
-# the permissions on /var/lib/clamav in src_install rather than in
-# pkg_postinst; calling "chown" on the live filesystem scares me.
-CDEPEND="acct-group/clamav
- acct-user/clamav
- dev-libs/libltdl
- dev-libs/libmspack
- dev-libs/json-c:=
- dev-libs/libpcre2
- >=sys-libs/zlib-1.2.2:=
- app-arch/bzip2
- clamapp? ( sys-libs/ncurses:= net-misc/curl )
- elibc_musl? ( sys-libs/fts-standalone )
- virtual/libiconv
- !libclamav-only? ( net-misc/curl )
- dev-libs/openssl:=
- milter? ( mail-filter/libmilter:= )
- dev-libs/libxml2
- rar? ( app-arch/unrar )
- test? ( dev-python/pytest )"
-# TODO: there is no way to use this with the new build system instead of the bundled one
-# dev-libs/tomsfastmath
-BDEPEND="virtual/pkgconfig
- doc? ( app-doc/doxygen )
- test? (
- ${PYTHON_DEPS}
- $(python_gen_any_dep 'dev-python/pytest[${PYTHON_USEDEP}]')
- )"
-DEPEND="${CDEPEND}
- test? ( dev-libs/check )"
-RDEPEND="${CDEPEND}
- selinux? ( sec-policy/selinux-clamav )"
-
-python_check_deps() {
- has_version -b "dev-python/pytest[${PYTHON_USEDEP}]"
-}
-
-pkg_setup() {
- use test && python-any-r1_pkg_setup
-}
-
-src_configure() {
- use elibc_musl && append-ldflags -lfts
- use ppc64 && append-flags -mminimal-toc
-
- local mycmakeargs=(
- -DDATABASE_DIRECTORY="${EPREFIX}"/var/lib/clamav
- -DAPP_CONFIG_DIRECTORY="${EPREFIX}"/etc/clamav
- -DENABLE_EXPERIMENTAL=OFF
- -DENABLE_JSON_SHARED=ON
- -DENABLE_APP=$(usex clamapp ON OFF)
- -DENABLE_MILTER=$(usex milter ON OFF)
- -DENABLE_CLAMONACC=$(usex clamonacc ON OFF)
- -DCLAMAV_USER="clamav"
- -DCLAMAV_GROUP="clamav"
- -DBYTECODE_RUNTIME=interpreter
- -DOPTIMIZE=ON
- -DENABLE_EXTERNAL_MSPACK=ON
- -DENABLE_MAN_PAGES=ON
- -DENABLE_DOXYGEN=$(usex doc)
- -DENABLE_UNRAR=$(usex rar ON OFF)
- -DENABLE_TESTS=$(usex test ON OFF)
- # Used to enable some more tests but doesn't behave well in
- # sandbox necessarily(?) + needs certain debug symbols present
- # in e.g. glibc.
- -DCMAKE_DISABLE_FIND_PACKAGE_Valgrind=ON
- -DENABLE_STATIC_LIB=OFF
- -DENABLE_SHARED_LIB=ON
- -DENABLE_SYSTEMD=$(usex systemd ON OFF)
- )
- cmake_src_configure
-}
-
-src_install() {
- cmake_src_install
-
- # init scripts
- newinitd "${FILESDIR}/clamd.initd" clamd
- newinitd "${FILESDIR}/freshclam.initd" freshclam
- use clamonacc && \
- newinitd "${FILESDIR}/clamonacc.initd" clamonacc
- use milter && \
- newinitd "${FILESDIR}/clamav-milter.initd" clamav-milter
-
- rm -rf "${ED}"/var/lib/clamav || die
-
- if ! use libclamav-only ; then
- if use systemd ; then
- # The tmpfiles entry is behind USE=systemd because the
- # upstream OpenRC service files should (and do) ensure that
- # the directories they need exist and have the correct
- # permissions without the help of opentmpfiles. There are
- # years-old root exploits in opentmpfiles, the design is
- # fundamentally flawed, and the maintainer is not up to
- # the task of fixing it.
- dotmpfiles "${FILESDIR}/tmpfiles.d/clamav.conf"
- systemd_newunit "${FILESDIR}/clamd_at.service-0.104.0" "clamd@.service"
- systemd_dounit "${FILESDIR}/clamd.service"
- systemd_newunit "${FILESDIR}/freshclamd.service-r1" \
- "freshclamd.service"
- fi
-
- if use clamapp ; then
- # Modify /etc/{clamd,freshclam}.conf to be usable out of the box
- sed -e "s:^\(Example\):\# \1:" \
- -e "s/^#\(PidFile .*\)/\1/" \
- -e "s/^#\(LocalSocket .*\)/\1/" \
- -e "s/^#\(User .*\)/\1/" \
- -e "s:^\#\(LogFile\) .*:\1 ${EPREFIX}/var/log/clamav/clamd.log:" \
- -e "s:^\#\(LogTime\).*:\1 yes:" \
- -e "s/^#\(DatabaseDirectory .*\)/\1/" \
- "${ED}"/etc/clamav/clamd.conf.sample > \
- "${ED}"/etc/clamav/clamd.conf || die
-
- sed -e "s:^\(Example\):\# \1:" \
- -e "s/^#\(PidFile .*\)/\1/" \
- -e "s/^#\(DatabaseOwner .*\)/\1/" \
- -e "s:^\#\(UpdateLogFile\) .*:\1 ${EPREFIX}/var/log/clamav/freshclam.log:" \
- -e "s:^\#\(NotifyClamd\).*:\1 ${EPREFIX}/etc/clamav/clamd.conf:" \
- -e "s:^\#\(ScriptedUpdates\).*:\1 yes:" \
- -e "s/^#\(DatabaseDirectory .*\)/\1/" \
- "${ED}"/etc/clamav/freshclam.conf.sample > \
- "${ED}"/etc/clamav/freshclam.conf || die
-
- if use milter ; then
- # Note: only keep the "unix" ClamdSocket and MilterSocket!
- sed -e "s:^\(Example\):\# \1:" \
- -e "s/^#\(PidFile .*\)/\1/" \
- -e "s/^#\(ClamdSocket unix:.*\)/\1/" \
- -e "s/^#\(User .*\)/\1/" \
- -e "s/^#\(MilterSocket unix:.*\)/\1/" \
- -e "s:^\#\(LogFile\) .*:\1 ${EPREFIX}/var/log/clamav/clamav-milter.log:" \
- "${ED}"/etc/clamav/clamav-milter.conf.sample > \
- "${ED}"/etc/clamav/clamav-milter.conf || die
-
- systemd_newunit "${FILESDIR}/clamav-milter.service-0.104.0" clamav-milter.service
- fi
-
- local i
- for i in clamd freshclam clamav-milter
- do
- if [[ -f "${ED}"/etc/"${i}".conf.sample ]] ; then
- mv "${ED}"/etc/"${i}".conf{.sample,} || die
- fi
- done
-
- # These both need to be writable by the clamav user.
- # TODO: use syslog by default; that's what it's for.
- diropts -o clamav -g clamav
- keepdir /var/lib/clamav
- keepdir /var/log/clamav
- fi
- fi
-
- if use doc ; then
- local HTML_DOCS=( docs/html/. )
- einstalldocs
- fi
-
- # Don't install man pages for utilities we didn't install
- if use libclamav-only ; then
- rm -r "${ED}"/usr/share/man || die
- fi
-
- find "${ED}" -name '*.la' -delete || die
-}
-
-pkg_postinst() {
- if ! use libclamav-only ; then
- if use systemd ; then
- tmpfiles_process clamav.conf
- fi
- fi
-
- if use milter ; then
- elog "For simple instructions how to setup the clamav-milter read the"
- elog "clamav-milter.README.gentoo in /usr/share/doc/${PF}"
- fi
-
- local databases=( "${EROOT}"/var/lib/clamav/main.c[lv]d )
- if [[ ! -f "${databases}" ]] ; then
- ewarn "You must run freshclam manually to populate the virus database"
- ewarn "before starting clamav for the first time."
- fi
-
- ewarn "This version of ClamAV provides separate OpenRC services"
- ewarn "for clamd, freshclam, clamav-milter, and clamonacc. The"
- ewarn "clamd service now starts only the clamd daemon itself. You"
- ewarn "should add freshclam (and perhaps clamav-milter) to any"
- ewarn "runlevels that previously contained clamd."
-}
diff --git a/app-antivirus/clamav/clamav-0.105.1.ebuild b/app-antivirus/clamav/clamav-0.105.1.ebuild
deleted file mode 100644
index 0d62bc5c14c0..000000000000
--- a/app-antivirus/clamav/clamav-0.105.1.ebuild
+++ /dev/null
@@ -1,246 +0,0 @@
-# Copyright 1999-2022 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-LLVM_MAX_SLOT=13
-PYTHON_COMPAT=( python3_{8..11} )
-inherit cmake flag-o-matic llvm python-any-r1 systemd tmpfiles
-
-DESCRIPTION="Clam Anti-Virus Scanner"
-HOMEPAGE="https://www.clamav.net/"
-SRC_URI="https://www.clamav.net/downloads/production/${P}.tar.gz"
-
-LICENSE="GPL-2"
-SLOT="0"
-KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~ppc ~ppc64 ~riscv ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~sparc-solaris ~x86-solaris"
-IUSE="doc clamonacc +clamapp experimental jit libclamav-only milter rar selinux systemd test"
-
-REQUIRED_USE="libclamav-only? ( !clamonacc !clamapp !milter )
- clamonacc? ( clamapp )
- milter? ( clamapp )
- test? ( !libclamav-only )"
-
-RESTRICT="!test? ( test )"
-
-# Require acct-{user,group}/clamav at build time so that we can set
-# the permissions on /var/lib/clamav in src_install rather than in
-# pkg_postinst; calling "chown" on the live filesystem scares me.
-CDEPEND="
- acct-group/clamav
- acct-user/clamav
- app-arch/bzip2
- dev-libs/json-c:=
- dev-libs/libltdl
- dev-libs/libmspack
- dev-libs/libpcre2:=
- dev-libs/libxml2
- dev-libs/openssl:=
- dev-libs/tomsfastmath:=
- >=sys-libs/zlib-1.2.2:=
- virtual/libiconv
- !libclamav-only? ( net-misc/curl )
- clamapp? ( sys-libs/ncurses:= net-misc/curl )
- elibc_musl? ( sys-libs/fts-standalone )
- jit? ( <sys-devel/llvm-$((${LLVM_MAX_SLOT} + 1)):= )
- milter? ( mail-filter/libmilter:= )
- rar? ( app-arch/unrar )
- test? ( dev-python/pytest )
-"
-
-BDEPEND="
- virtual/pkgconfig
- >=virtual/rust-1.56
- doc? ( app-doc/doxygen )
- test? (
- ${PYTHON_DEPS}
- $(python_gen_any_dep 'dev-python/pytest[${PYTHON_USEDEP}]')
- )
-"
-
-DEPEND="${CDEPEND}
- test? ( dev-libs/check )"
-
-RDEPEND="${CDEPEND}
- selinux? ( sec-policy/selinux-clamav )"
-
-python_check_deps() {
- python_has_version -b "dev-python/pytest[${PYTHON_USEDEP}]"
-}
-
-pkg_setup() {
- use jit && llvm_pkg_setup
- use test && python-any-r1_pkg_setup
-}
-
-PATCHES=(
- "${FILESDIR}/${P}-cmake-llvm-fix.patch"
-)
-
-src_configure() {
- use elibc_musl && append-ldflags -lfts
- use ppc64 && append-flags -mminimal-toc
-
- local mycmakeargs=(
- -DDATABASE_DIRECTORY="${EPREFIX}"/var/lib/clamav
- -DAPP_CONFIG_DIRECTORY="${EPREFIX}"/etc/clamav
- -DENABLE_EXPERIMENTAL=$(usex experimental ON OFF)
- -DENABLE_JSON_SHARED=ON
- -DENABLE_APP=$(usex clamapp ON OFF)
- -DENABLE_MILTER=$(usex milter ON OFF)
- -DENABLE_CLAMONACC=$(usex clamonacc ON OFF)
- -DCLAMAV_USER="clamav"
- -DCLAMAV_GROUP="clamav"
- -DBYTECODE_RUNTIME=$(usex jit llvm interpreter)
- -DOPTIMIZE=ON
- -DENABLE_EXTERNAL_MSPACK=ON
- -DENABLE_EXTERNAL_TOMSFASTMATH=ON
- -DENABLE_MAN_PAGES=ON
- -DENABLE_DOXYGEN=$(usex doc)
- -DENABLE_UNRAR=$(usex rar ON OFF)
- -DENABLE_TESTS=$(usex test ON OFF)
- -DENABLE_STATIC_LIB=OFF
- -DENABLE_SHARED_LIB=ON
- -DENABLE_SYSTEMD=$(usex systemd ON OFF)
- )
-
- if use test ; then
- # https://bugs.gentoo.org/818673
- # Used to enable some more tests but doesn't behave well in
- # sandbox necessarily(?) + needs certain debug symbols present
- # in e.g. glibc.
- mycmakeargs+=( -DCMAKE_DISABLE_FIND_PACKAGE_Valgrind=ON )
- fi
-
- if use jit ; then
- # Suppress CMake warnings that variables aren't consumed if we aren't using LLVM
- # https://github.com/Cisco-Talos/clamav/blob/main/INSTALL.md#llvm-optional-see-bytecode-runtime-section
- # https://github.com/Cisco-Talos/clamav/blob/main/INSTALL.md#bytecode-runtime
- mycmakeargs+=(
- -DLLVM_ROOT_DIR="$(get_llvm_prefix -d ${LLVM_MAX_SLOT})"
- -DLLVM_FIND_VERSION="$(best_version sys-devel/llvm:${LLVM_MAX_SLOT} | cut -c 16-)"
- )
- fi
-
- cmake_src_configure
-}
-
-src_install() {
- cmake_src_install
- # init scripts
- newinitd "${FILESDIR}/clamd.initd" clamd
- newinitd "${FILESDIR}/freshclam.initd" freshclam
- use clamonacc && \
- newinitd "${FILESDIR}/clamonacc.initd" clamonacc
- use milter && \
- newinitd "${FILESDIR}/clamav-milter.initd" clamav-milter
-
- rm -rf "${ED}"/var/lib/clamav || die
-
- if ! use libclamav-only ; then
- if use systemd ; then
- # The tmpfiles entry is behind USE=systemd because the
- # upstream OpenRC service files should (and do) ensure that
- # the directories they need exist and have the correct
- # permissions without the help of opentmpfiles. There are
- # years-old root exploits in opentmpfiles, the design is
- # fundamentally flawed, and the maintainer is not up to
- # the task of fixing it.
- dotmpfiles "${FILESDIR}/tmpfiles.d/clamav.conf"
- systemd_newunit "${FILESDIR}/clamd_at.service-0.104.0" "clamd@.service"
- systemd_dounit "${FILESDIR}/clamd.service"
- systemd_newunit "${FILESDIR}/freshclamd.service-r1" \
- "freshclamd.service"
- fi
-
- if use clamapp ; then
- # Modify /etc/{clamd,freshclam}.conf to be usable out of the box
- sed -e "s:^\(Example\):\# \1:" \
- -e "s/^#\(PidFile .*\)/\1/" \
- -e "s/^#\(LocalSocket .*\)/\1/" \
- -e "s/^#\(User .*\)/\1/" \
- -e "s:^\#\(LogFile\) .*:\1 ${EPREFIX}/var/log/clamav/clamd.log:" \
- -e "s:^\#\(LogTime\).*:\1 yes:" \
- -e "s/^#\(DatabaseDirectory .*\)/\1/" \
- "${ED}"/etc/clamav/clamd.conf.sample > \
- "${ED}"/etc/clamav/clamd.conf || die
-
- sed -e "s:^\(Example\):\# \1:" \
- -e "s/^#\(PidFile .*\)/\1/" \
- -e "s/^#\(DatabaseOwner .*\)/\1/" \
- -e "s:^\#\(UpdateLogFile\) .*:\1 ${EPREFIX}/var/log/clamav/freshclam.log:" \
- -e "s:^\#\(NotifyClamd\).*:\1 ${EPREFIX}/etc/clamav/clamd.conf:" \
- -e "s:^\#\(ScriptedUpdates\).*:\1 yes:" \
- -e "s/^#\(DatabaseDirectory .*\)/\1/" \
- "${ED}"/etc/clamav/freshclam.conf.sample > \
- "${ED}"/etc/clamav/freshclam.conf || die
-
- if use milter ; then
- # Note: only keep the "unix" ClamdSocket and MilterSocket!
- sed -e "s:^\(Example\):\# \1:" \
- -e "s/^#\(PidFile .*\)/\1/" \
- -e "s/^#\(ClamdSocket unix:.*\)/\1/" \
- -e "s/^#\(User .*\)/\1/" \
- -e "s/^#\(MilterSocket unix:.*\)/\1/" \
- -e "s:^\#\(LogFile\) .*:\1 ${EPREFIX}/var/log/clamav/clamav-milter.log:" \
- "${ED}"/etc/clamav/clamav-milter.conf.sample > \
- "${ED}"/etc/clamav/clamav-milter.conf || die
-
- systemd_newunit "${FILESDIR}/clamav-milter.service-0.104.0" clamav-milter.service
- fi
-
- local i
- for i in clamd freshclam clamav-milter
- do
- if [[ -f "${ED}"/etc/"${i}".conf.sample ]] ; then
- mv "${ED}"/etc/"${i}".conf{.sample,} || die
- fi
- done
-
- # These both need to be writable by the clamav user.
- # TODO: use syslog by default; that's what it's for.
- diropts -o clamav -g clamav
- keepdir /var/lib/clamav
- keepdir /var/log/clamav
- fi
- fi
-
- if use doc ; then
- local HTML_DOCS=( docs/html/. )
- einstalldocs
- fi
-
- # Don't install man pages for utilities we didn't install
- if use libclamav-only ; then
- rm -r "${ED}"/usr/share/man || die
- fi
-
- find "${ED}" -name '*.la' -delete || die
-}
-
-pkg_postinst() {
- if ! use libclamav-only ; then
- if use systemd ; then
- tmpfiles_process clamav.conf
- fi
- fi
-
- if use milter ; then
- elog "For simple instructions how to setup the clamav-milter read the"
- elog "clamav-milter.README.gentoo in /usr/share/doc/${PF}"
- fi
-
- local databases=( "${EROOT}"/var/lib/clamav/main.c[lv]d )
- if [[ ! -f "${databases}" ]] ; then
- ewarn "You must run freshclam manually to populate the virus database"
- ewarn "before starting clamav for the first time."
- fi
-
- if ! systemd_is_booted ; then
- ewarn "This version of ClamAV provides separate OpenRC services"
- ewarn "for clamd, freshclam, clamav-milter, and clamonacc. The"
- ewarn "clamd service now starts only the clamd daemon itself. You"
- ewarn "should add freshclam (and perhaps clamav-milter) to any"
- ewarn "runlevels that previously contained clamd."
- fi
-}
diff --git a/app-antivirus/clamav/files/clamav-0.105.1-cmake-llvm-fix.patch b/app-antivirus/clamav/files/clamav-0.105.1-cmake-llvm-fix.patch
deleted file mode 100644
index b73a2e066ef1..000000000000
--- a/app-antivirus/clamav/files/clamav-0.105.1-cmake-llvm-fix.patch
+++ /dev/null
@@ -1,73 +0,0 @@
-clamav 0.105.1 doesn't support LLVM version detection
-
-See: https://github.com/Cisco-Talos/clamav/pull/692
-
---- a/CMakeLists.txt
-+++ b/CMakeLists.txt
-@@ -480,39 +480,43 @@ find_package(JSONC REQUIRED)
- # Set variable required by libclamav to use libjson-c
- set(HAVE_JSON 1)
-
-+set(LLVM_MAX_VER "14.0.0")
-+set(LLVM_MIN_VER "8.0.0")
-+
- string (TOLOWER ${BYTECODE_RUNTIME} bytecodeRuntime)
- if(${bytecodeRuntime} STREQUAL "llvm")
-- set (LLVM_FIND_VERSION "8.0.0")
-- find_package(LLVM REQUIRED)
-+ if(DEFINED LLVM_ROOT_DIR AND DEFINED LLVM_FIND_VERSION)
-+ find_package(LLVM EXACT ${LLVM_FIND_VERSION} REQUIRED HINTS ${LLVM_ROOT_DIR})
-+ elseif(DEFINED LLVM_ROOT_DIR)
-+ find_package(LLVM REQUIRED HINTS ${LLVM_ROOT_DIR})
-+ elseif(DEFINED LLVM_FIND_VERSION)
-+ find_package(LLVM EXACT ${LLVM_FIND_VERSION} REQUIRED)
-+ else()
-+ set (LLVM_FIND_VERSION ${LLVM_MIN_VER})
-+ find_package(LLVM REQUIRED)
-+ endif()
- if(LLVM_FOUND)
- if (LLVM_AVAILABLE_LIBS)
-- # Found using LLVMConfig.cmake
-- message("LLVM found using LLVMConfig.cmake")
-- set(LLVM_VERSION ${LLVM_VERSION_MAJOR}${LLVM_VERSION_MINOR})
-+ message(STATUS "LLVM found using LLVMConfig.cmake")
- set(LLVM_LIBRARIES ${LLVM_AVAILABLE_LIBS})
--
-- if (${LLVM_PACKAGE_VERSION} VERSION_LESS "8.0.0")
-- message(FATAL "LLVM version ${LLVM_PACKAGE_VERSION} is too old")
-- endif()
--
- else()
-- # Found using FindLLVM.cmake
-- message("LLVM found using FindLLVM.cmake")
--
-- # Set variable required by libclamav to use llvm instead of interpreter
-- set(LLVM_VERSION ${LLVM_VERSION_MAJOR}${LLVM_VERSION_MINOR})
-- message("LLVM_FOUND ${LLVM_FOUND}")
-+ message(STATUS "LLVM found using FindLLVM.cmake")
-+ set(LLVM_PACKAGE_VERSION ${LLVM_VERSION_STRING})
-
-- if (${LLVM_VERSION_STRING} VERSION_GREATER_EQUAL "9.0.0")
-- if (${LLVM_VERSION_STRING} VERSION_LESS "10.0.0")
-- set (CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -DNDEBUG")
-- endif()
-+ if (${LLVM_VERSION_STRING} VERSION_GREATER_EQUAL "9.0.0" AND ${LLVM_VERSION_STRING} VERSION_LESS "10.0.0")
-+ set (CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -DNDEBUG")
- endif()
-+ endif()
-
-- if (${LLVM_VERSION_STRING} VERSION_LESS "8.0.0")
-- message(FATAL "LLVM version ${LLVM_VERSION_STRING} is too old")
-- endif()
-+ if (${LLVM_PACKAGE_VERSION} VERSION_LESS ${LLVM_MIN_VER})
-+ message(FATAL_ERROR "LLVM version ${LLVM_PACKAGE_VERSION} is too old")
-+ elseif (${LLVM_PACKAGE_VERSION} VERSION_GREATER_EQUAL ${LLVM_MAX_VER} )
-+ message(FATAL_ERROR "LLVM version ${LLVM_PACKAGE_VERSION} is too new")
-+ else()
-+ message(STATUS "LLVM version ${LLVM_PACKAGE_VERSION} found")
- endif()
-+ # Set variable required by libclamav to use llvm instead of interpreter
-+ set(LLVM_VERSION ${LLVM_VERSION_MAJOR}${LLVM_VERSION_MINOR})
- endif()
- endif()
-
^ permalink raw reply related [flat|nested] 15+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: app-antivirus/clamav/, app-antivirus/clamav/files/
@ 2023-02-15 22:51 Michael Orlitzky
0 siblings, 0 replies; 15+ messages in thread
From: Michael Orlitzky @ 2023-02-15 22:51 UTC (permalink / raw
To: gentoo-commits
commit: a12c3ed66db1fed82adc8010d05214db44ac31ff
Author: Michael Orlitzky <mjo <AT> gentoo <DOT> org>
AuthorDate: Wed Feb 15 22:32:11 2023 +0000
Commit: Michael Orlitzky <mjo <AT> gentoo <DOT> org>
CommitDate: Wed Feb 15 22:33:55 2023 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=a12c3ed6
app-antivirus/clamav: add 0.103.8 (CVE-2023-20032, CVE-2023-20052).
Bug: https://bugs.gentoo.org/879625
Signed-off-by: Michael Orlitzky <mjo <AT> gentoo.org>
app-antivirus/clamav/Manifest | 1 +
app-antivirus/clamav/clamav-0.103.8.ebuild | 240 +++++++++++++++++++++
.../clamav/files/clamav-0.103.8-c-std.patch | 204 ++++++++++++++++++
3 files changed, 445 insertions(+)
diff --git a/app-antivirus/clamav/Manifest b/app-antivirus/clamav/Manifest
index 3021a4290d7a..9cf4918148b8 100644
--- a/app-antivirus/clamav/Manifest
+++ b/app-antivirus/clamav/Manifest
@@ -14,6 +14,7 @@ DIST cbindgen-0.20.0.crate 183277 BLAKE2B 51529b21879e3a3212fbb951b3bdd5c8c396dc
DIST cexpr-0.6.0.crate 17966 BLAKE2B cb46f066eb1f4dbac00ec86dc3e562db7ee8ea5ff17d16a60004fa020405e455b8aeb3d001f669cb33d1b62525bfd04ec657ffca4ed44a83af4a5e75b2c820e3 SHA512 766bff7ca7f9bf0885aee6f014bcfc084e7fdfcd567a49443d5340acfe8f257db109de17b24588504fc35c53f2d4303e2d22da21f73669125cfca984950cf886
DIST cfg-if-1.0.0.crate 7934 BLAKE2B e99a5589c11d79d77a4537b34ce0a45d37b981c123b79b807cea836c89fc3926d693458893baca2882448d3d44e3f64e06141f6d916b748daa10b8cc1ae16d1b SHA512 0fb16a8882fd30e86b62c5143b1cb18ab564e84e75bd1f28fd12f24ffdc4a42e0d2e012a99abb606c12efe3c11061ff5bf8e24ab053e550ae083f7d90f6576ff
DIST clamav-0.103.7.tar.gz 16501741 BLAKE2B 49fc1c8c42ee8168dbaec4aa13ab0dfef7fa285e335cb38b17bc020df7400ee1daae49e06ba5b4ae0364d47d707cb83c0b1a8442d5b01d2bba5827606fe27fb4 SHA512 d426169889d94411b20a2c9c9579fc22a15090c9847849822c63fc6b404075feba0ff3663ee1382b2af5300394c7a93669844736f7473bfdce3250e1fd130326
+DIST clamav-0.103.8.tar.gz 16524716 BLAKE2B 207a6087de9134586215a4f3fe02cb071135c38fac792f6cb2d4c4a3c9e596bff5dd0a0ac3dd9f6018771d866fa9e64223933f96cec3ee6e8ce17a743c3d952f SHA512 8e030fef5788cf4df8f4d878363df1e5d9abcaa209b9f998f57334ede481d755b33958b5e9bb82be9643cb7442814711e4c9978314cadd7eb9161fee03b74439
DIST clamav-1.0.0.tar.gz 10311477 BLAKE2B 8d66c03e7717ed52cb90a139f565abe2ed3379e09d500530c260f129f1f8eb2549dca11898f6c1a85e7988ce06388c8967e6decea06c840220ffccb4010add60 SHA512 a1be526516e622fd3359461db7dd8eb0734f7ba8ecb0b63c1574e216885cd7bcdc69ffdbc5e507a0060d23769e3caa8423aa273ec57bb86e40049679a818152a
DIST clang-sys-1.4.0.crate 38679 BLAKE2B d15bdae2142ed26b4f6bd037bd2062e8c4b7b87fc5b749b872a95ff1952d000066c255aa0984e5f9c4a5c88066db4a20cfd048db4ba5a59b331d5ffa5e9a281d SHA512 062189bb0a341e2e85de4987f4b564c1fc69e4005c9c42cfedb61dee5f48db9126a8114d1d97be1b9c21b8c885243751232fbe8cf532e1d2be593308fe45216a
DIST clap-2.34.0.crate 202210 BLAKE2B f383adf1d757ac4b68995132b33837686ce451f85a02a8d05d2c746da398510d05d46330f3efade063c3952aacb1754cdac73dd0afcae0df5340a89f9353aa1c SHA512 c648a761b9996a7e7464a538bb53621bae22090b846a42c3b729beca3363958ae67e3da9f93f58b10a10e043cadf7ff930388680d168646178c2824177832db8
diff --git a/app-antivirus/clamav/clamav-0.103.8.ebuild b/app-antivirus/clamav/clamav-0.103.8.ebuild
new file mode 100644
index 000000000000..56035dbcf6c4
--- /dev/null
+++ b/app-antivirus/clamav/clamav-0.103.8.ebuild
@@ -0,0 +1,240 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit autotools flag-o-matic systemd tmpfiles
+
+DESCRIPTION="Clam Anti-Virus Scanner"
+HOMEPAGE="https://www.clamav.net/"
+SRC_URI="https://www.clamav.net/downloads/production/${P}.tar.gz"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~ppc ~ppc64 ~riscv ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~sparc-solaris ~x86-solaris"
+IUSE="bzip2 doc clamonacc clamdtop clamsubmit iconv ipv6 libclamav-only milter metadata-analysis-api selinux systemd test xml"
+
+REQUIRED_USE="libclamav-only? ( !clamonacc !clamdtop !clamsubmit !milter !metadata-analysis-api )"
+
+RESTRICT="!test? ( test )"
+
+# Require acct-{user,group}/clamav at build time so that we can set
+# the permissions on /var/lib/clamav in src_install rather than in
+# pkg_postinst; calling "chown" on the live filesystem scares me.
+CDEPEND="acct-group/clamav
+ acct-user/clamav
+ dev-libs/libltdl
+ dev-libs/libmspack
+ || ( dev-libs/libpcre2 >dev-libs/libpcre-6 )
+ dev-libs/tomsfastmath
+ >=sys-libs/zlib-1.2.2:=
+ bzip2? ( app-arch/bzip2 )
+ clamdtop? ( sys-libs/ncurses:0 )
+ clamsubmit? ( net-misc/curl dev-libs/json-c:= )
+ elibc_musl? ( sys-libs/fts-standalone )
+ iconv? ( virtual/libiconv )
+ !libclamav-only? ( net-misc/curl )
+ dev-libs/openssl:0=
+ milter? ( mail-filter/libmilter:= )
+ xml? ( dev-libs/libxml2 )"
+
+# We need at least autoconf-2.69-r5 because that's the first (patched)
+# version of it in Gentoo that supports ./configure --runstatedir.
+BDEPEND=">=sys-devel/autoconf-2.69-r5
+ virtual/pkgconfig"
+
+DEPEND="${CDEPEND}
+ metadata-analysis-api? ( dev-libs/json-c:* )
+ test? ( dev-libs/check )"
+RDEPEND="${CDEPEND}
+ selinux? ( sec-policy/selinux-clamav )"
+
+PATCHES=(
+ "${FILESDIR}/${PN}-0.102.1-libxml2_pkgconfig.patch" #661328
+ "${FILESDIR}/${PN}-0.102.2-fix-curl-detection.patch" #709616
+ "${FILESDIR}/${PN}-0.103.0-system-tomsfastmath.patch" # 649394
+ "${FILESDIR}/${PN}-0.103.1-upstream-openrc.patch"
+ "${FILESDIR}/${PN}-0.103.8-c-std.patch" #879625
+)
+
+src_prepare() {
+ default
+
+ # Be extra sure that we're using the system copy of tomsfastmath
+ einfo "removing bundled copy of dev-libs/tomsfastmath"
+ rm -r libclamav/tomsfastmath || \
+ die "failed to remove bundled tomsfastmath"
+
+ AT_NO_RECURSIVE="yes" eautoreconf
+}
+
+src_configure() {
+ use elibc_musl && append-ldflags -lfts
+ use ppc64 && append-flags -mminimal-toc
+
+ # according to configure help it should be
+ # $(use_enable xml)
+ # but that does not work
+ # do not add this, since --disable-xml seems to override
+ # --without-xml
+ JSONUSE="--without-libjson"
+
+ if use clamsubmit || use metadata-analysis-api; then
+ # either of those 2 requires libjson.
+ # clamsubmit will be built as soon as libjson and curl are found
+ # but we only install the binary if requested
+ JSONUSE="--with-libjson=${EPREFIX}/usr"
+ fi
+
+ local myeconfargs=(
+ $(use_enable bzip2)
+ $(use_enable clamonacc)
+ $(use_enable clamdtop)
+ $(use_enable ipv6)
+ $(use_enable milter)
+ $(use_enable test check)
+ $(use_with xml)
+ $(use_with iconv)
+ ${JSONUSE}
+ $(use_enable libclamav-only)
+ $(use_with !libclamav-only libcurl)
+ --with-system-libmspack
+ --cache-file="${S}"/config.cache
+ --disable-experimental
+ --disable-static
+ --disable-zlib-vcheck
+ --enable-id-check
+ --with-dbdir="${EPREFIX}"/var/lib/clamav
+ # Don't call --with-zlib=/usr (see bug #699296)
+ --with-zlib
+ --disable-llvm
+ --enable-openrc
+ --runstatedir=/run
+ )
+ econf "${myeconfargs[@]}"
+}
+
+src_install() {
+ default
+
+ rm -rf "${ED}"/var/lib/clamav || die
+
+ if ! use libclamav-only ; then
+ if use systemd; then
+ # The tmpfiles entry is behind USE=systemd because the
+ # upstream OpenRC service files should (and do) ensure that
+ # the directories they need exist and have the correct
+ # permissions without the help of opentmpfiles. There are
+ # years-old root exploits in opentmpfiles, the design is
+ # fundamentally flawed, and the maintainer is not up to
+ # the task of fixing it.
+ dotmpfiles "${FILESDIR}/tmpfiles.d/clamav.conf"
+ systemd_newunit "${FILESDIR}/clamd_at.service" "clamd@.service"
+ systemd_dounit "${FILESDIR}/clamd.service"
+ systemd_newunit "${FILESDIR}/freshclamd.service-r1" \
+ "freshclamd.service"
+ fi
+
+ insinto /etc/logrotate.d
+ newins "${FILESDIR}/clamd.logrotate" clamd
+ newins "${FILESDIR}/freshclam.logrotate" freshclam
+ use milter && \
+ newins "${FILESDIR}/clamav-milter.logrotate-r1" clamav-milter
+
+ # Modify /etc/{clamd,freshclam}.conf to be usable out of the box
+ sed -i -e "s:^\(Example\):\# \1:" \
+ -e "s/^#\(PidFile .*\)/\1/" \
+ -e "s/^#\(LocalSocket .*\)/\1/" \
+ -e "s/^#\(User .*\)/\1/" \
+ -e "s:^\#\(LogFile\) .*:\1 ${EPREFIX}/var/log/clamav/clamd.log:" \
+ -e "s:^\#\(LogTime\).*:\1 yes:" \
+ -e "s/^#\(DatabaseDirectory .*\)/\1/" \
+ "${ED}"/etc/clamd.conf.sample || die
+
+ sed -i -e "s:^\(Example\):\# \1:" \
+ -e "s/^#\(PidFile .*\)/\1/" \
+ -e "s/^#\(DatabaseOwner .*\)/\1/" \
+ -e "s:^\#\(UpdateLogFile\) .*:\1 ${EPREFIX}/var/log/clamav/freshclam.log:" \
+ -e "s:^\#\(NotifyClamd\).*:\1 ${EPREFIX}/etc/clamd.conf:" \
+ -e "s:^\#\(ScriptedUpdates\).*:\1 yes:" \
+ -e "s/^#\(DatabaseDirectory .*\)/\1/" \
+ "${ED}"/etc/freshclam.conf.sample || die
+
+ if use milter ; then
+ # Note: only keep the "unix" ClamdSocket and MilterSocket!
+ sed -i -e "s:^\(Example\):\# \1:" \
+ -e "s/^#\(PidFile .*\)/\1/" \
+ -e "s/^#\(ClamdSocket unix:.*\)/\1/" \
+ -e "s/^#\(User .*\)/\1/" \
+ -e "s/^#\(MilterSocket unix:.*\)/\1/" \
+ -e "s:^\#\(LogFile\) .*:\1 ${EPREFIX}/var/log/clamav/clamav-milter.log:" \
+ "${ED}"/etc/clamav-milter.conf.sample || die
+
+ cat >> "${ED}"/etc/conf.d/clamd <<-EOF
+ MILTER_NICELEVEL=19
+ START_MILTER=no
+ EOF
+
+ systemd_newunit "${FILESDIR}/clamav-milter.service-r1" clamav-milter.service
+ fi
+
+ local i
+ for i in clamd freshclam clamav-milter
+ do
+ if [[ -f "${ED}"/etc/"${i}".conf.sample ]]; then
+ mv "${ED}"/etc/"${i}".conf{.sample,} || die
+ fi
+ done
+
+ # These both need to be writable by the clamav user.
+ # TODO: use syslog by default; that's what it's for.
+ diropts -o clamav -g clamav
+ keepdir /var/lib/clamav
+ keepdir /var/log/clamav
+ fi
+
+ if use doc ; then
+ local HTML_DOCS=( docs/html/. )
+ einstalldocs
+
+ if ! use libclamav-only ; then
+ doman docs/man/*.[1-8]
+ fi
+ fi
+
+ find "${ED}" -name '*.la' -delete || die
+}
+
+src_test() {
+ if use libclamav-only ; then
+ ewarn "Test target not available when USE=libclamav-only is set, skipping tests ..."
+ return 0
+ fi
+
+ emake quick-check
+}
+
+pkg_postinst() {
+ if ! use libclamav-only ; then
+ if use systemd ; then
+ tmpfiles_process clamav.conf
+ fi
+ fi
+
+ if use milter ; then
+ elog "For simple instructions how to setup the clamav-milter read the"
+ elog "clamav-milter.README.gentoo in /usr/share/doc/${PF}"
+ fi
+
+ local databases=( "${EROOT}"/var/lib/clamav/main.c[lv]d )
+ if [[ ! -f "${databases}" ]] ; then
+ ewarn "You must run freshclam manually to populate the virus database"
+ ewarn "before starting clamav for the first time."
+ fi
+
+ ewarn "This version of ClamAV provides separate OpenRC services"
+ ewarn "for clamd, freshclam, clamav-milter, and clamonacc. The"
+ ewarn "clamd service now starts only the clamd daemon itself. You"
+ ewarn "should add freshclam (and perhaps clamav-milter) to any"
+ ewarn "runlevels that previously contained clamd."
+}
diff --git a/app-antivirus/clamav/files/clamav-0.103.8-c-std.patch b/app-antivirus/clamav/files/clamav-0.103.8-c-std.patch
new file mode 100644
index 000000000000..91556a1ae422
--- /dev/null
+++ b/app-antivirus/clamav/files/clamav-0.103.8-c-std.patch
@@ -0,0 +1,204 @@
+From b9e2714d5b42ad9a0742746996b989400c794adb Mon Sep 17 00:00:00 2001
+From: Michael Orlitzky <michael@orlitzky.com>
+Date: Fri, 4 Nov 2022 19:31:15 -0400
+Subject: [PATCH 1/2] clamonacc/c-thread-pool/thpool.c: define _GNU_SOURCE for
+ syscall().
+
+On Linux, thpool.c uses syscall() from unistd.h, but that function is
+not defined without _GNU_SOURCE:
+
+ c-thread-pool/thpool.c: In function 'jobqueue_pull':
+ c-thread-pool/thpool.c:474:105: error: implicit declaration of function
+ 'syscall' [-Werror=implicit-function-declaration]
+
+In general that's not great, because it hinders some compiler diagnostics,
+but it will also cause problems down the road if (for example) clang-16
+decides to enable -Werror=implicit-function-declaration by default.
+
+This commit changes the _POSIX_C_SOURCE definition at the top of
+thpool.c to _GNU_SOURCE, as in the syscall(2) man page.
+---
+ clamonacc/c-thread-pool/thpool.c | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/clamonacc/c-thread-pool/thpool.c b/clamonacc/c-thread-pool/thpool.c
+index 46572da5f4..27c5103ff1 100644
+--- a/clamonacc/c-thread-pool/thpool.c
++++ b/clamonacc/c-thread-pool/thpool.c
+@@ -8,7 +8,7 @@
+ *
+ ********************************/
+
+-#define _POSIX_C_SOURCE 200809L
++#define _GNU_SOURCE
+ #include <unistd.h>
+ #include <signal.h>
+ #include <stdio.h>
+
+From 7e3425ab701141064d179c45af2251f61af4ccc7 Mon Sep 17 00:00:00 2001
+From: Michael Orlitzky <michael@orlitzky.com>
+Date: Fri, 4 Nov 2022 20:08:30 -0400
+Subject: [PATCH 2/2] */*: fix invalid prototypes.
+
+Prototypes (or the declarations themselves, if there is no
+corresponding prototype) for functions that take no arguments are
+required by the C standard to specify (void) as their argument list;
+for example,
+
+ regex_pcre.h:79:1: error: function declaration isn't a prototype
+ [-Werror=strict-prototypes]
+ 79 | cl_error_t cli_pcre_init_internal();
+
+Future versions of clang may become strict about this, and there's no
+harm in conforming to the standard right now, so we fix all such
+instances in this commit.
+---
+ clamonacc/clamonacc.c | 2 +-
+ clamonacc/client/socket.h | 2 +-
+ clamonacc/inotif/hash.c | 2 +-
+ clamonacc/inotif/inotif.c | 2 +-
+ clamonacc/scan/onas_queue.c | 6 +++---
+ libclamav/matcher-pcre.h | 6 +++---
+ libclamav/regex_pcre.h | 2 +-
+ m4/reorganization/compiler_checks.m4 | 2 +-
+ shared/misc.h | 2 +-
+ 9 files changed, 13 insertions(+), 13 deletions(-)
+
+diff --git a/clamonacc/clamonacc.c b/clamonacc/clamonacc.c
+index ba986ef06c..c020897908 100644
+--- a/clamonacc/clamonacc.c
++++ b/clamonacc/clamonacc.c
+@@ -61,7 +61,7 @@
+ pthread_t ddd_pid = 0;
+ pthread_t scan_queue_pid = 0;
+
+-static void onas_handle_signals();
++static void onas_handle_signals(void);
+ static int startup_checks(struct onas_context *ctx);
+ static struct onas_context *g_ctx = NULL;
+
+diff --git a/clamonacc/client/socket.h b/clamonacc/client/socket.h
+index 915f9086ca..ea84fb4c41 100644
+--- a/clamonacc/client/socket.h
++++ b/clamonacc/client/socket.h
+@@ -31,4 +31,4 @@ struct onas_sock_t {
+ };
+
+ cl_error_t onas_set_sock_only_once(struct onas_context *ctx);
+-int onas_get_sockd();
++int onas_get_sockd(void);
+diff --git a/clamonacc/inotif/hash.c b/clamonacc/inotif/hash.c
+index e4b3f1f983..2bbc4cdbb4 100644
+--- a/clamonacc/inotif/hash.c
++++ b/clamonacc/inotif/hash.c
+@@ -58,7 +58,7 @@
+
+ #if defined(HAVE_SYS_FANOTIFY_H)
+
+-static struct onas_bucket *onas_bucket_init();
++static struct onas_bucket *onas_bucket_init(void);
+ static void onas_free_bucket(struct onas_bucket *bckt);
+ static int onas_bucket_insert(struct onas_bucket *bckt, struct onas_element *elem);
+ static int onas_bucket_remove(struct onas_bucket *bckt, struct onas_element *elem);
+diff --git a/clamonacc/inotif/inotif.c b/clamonacc/inotif/inotif.c
+index 7799ae4889..b8680e9856 100644
+--- a/clamonacc/inotif/inotif.c
++++ b/clamonacc/inotif/inotif.c
+@@ -66,7 +66,7 @@
+
+ static int onas_ddd_init_ht(uint32_t ht_size);
+ static int onas_ddd_init_wdlt(uint64_t nwatches);
+-static int onas_ddd_grow_wdlt();
++static int onas_ddd_grow_wdlt(void);
+
+ static int onas_ddd_watch(const char *pathname, int fan_fd, uint64_t fan_mask, int in_fd, uint64_t in_mask);
+ static int onas_ddd_watch_hierarchy(const char *pathname, size_t len, int fd, uint64_t mask, uint32_t type);
+diff --git a/clamonacc/scan/onas_queue.c b/clamonacc/scan/onas_queue.c
+index d279df7415..6fa7df6e96 100644
+--- a/clamonacc/scan/onas_queue.c
++++ b/clamonacc/scan/onas_queue.c
+@@ -82,7 +82,7 @@ static cl_error_t onas_new_event_queue_node(struct onas_event_queue_node **node)
+ return CL_SUCCESS;
+ }
+
+-static void *onas_init_event_queue()
++static void *onas_init_event_queue(void)
+ {
+
+ if (CL_EMEM == onas_new_event_queue_node(&g_onas_event_queue_head)) {
+@@ -122,7 +122,7 @@ static void onas_destroy_event_queue_node(struct onas_event_queue_node *node)
+ return;
+ }
+
+-static void onas_destroy_event_queue()
++static void onas_destroy_event_queue(void)
+ {
+
+ if (NULL == g_onas_event_queue_head) {
+@@ -200,7 +200,7 @@ void *onas_scan_queue_th(void *arg)
+ pthread_cleanup_pop(1);
+ }
+
+-static int onas_queue_is_b_empty()
++static int onas_queue_is_b_empty(void)
+ {
+
+ if (g_onas_event_queue.head->next == g_onas_event_queue.tail) {
+diff --git a/libclamav/matcher-pcre.h b/libclamav/matcher-pcre.h
+index 5ffc88fb26..b0bd51852b 100644
+--- a/libclamav/matcher-pcre.h
++++ b/libclamav/matcher-pcre.h
+@@ -68,11 +68,11 @@ struct cli_pcre_meta {
+ };
+
+ /* PCRE PERFORMANCE DECLARATIONS */
+-void cli_pcre_perf_print();
+-void cli_pcre_perf_events_destroy();
++void cli_pcre_perf_print(void);
++void cli_pcre_perf_events_destroy(void);
+
+ /* PCRE MATCHER DECLARATIONS */
+-int cli_pcre_init();
++int cli_pcre_init(void);
+ cl_error_t cli_pcre_addpatt(struct cli_matcher *root, const char *virname, const char *trigger, const char *pattern, const char *cflags, const char *offset, const uint32_t *lsigid, unsigned int options);
+ cl_error_t cli_pcre_build(struct cli_matcher *root, long long unsigned match_limit, long long unsigned recmatch_limit, const struct cli_dconf *dconf);
+ cl_error_t cli_pcre_recaloff(struct cli_matcher *root, struct cli_pcre_off *data, struct cli_target_info *info, cli_ctx *ctx);
+diff --git a/libclamav/regex_pcre.h b/libclamav/regex_pcre.h
+index d1f4127984..52653431d4 100644
+--- a/libclamav/regex_pcre.h
++++ b/libclamav/regex_pcre.h
+@@ -76,7 +76,7 @@ struct cli_pcre_results {
+ };
+ #endif
+
+-cl_error_t cli_pcre_init_internal();
++cl_error_t cli_pcre_init_internal(void);
+ cl_error_t cli_pcre_addoptions(struct cli_pcre_data *pd, const char **opt, int errout);
+ cl_error_t cli_pcre_compile(struct cli_pcre_data *pd, long long unsigned match_limit, long long unsigned match_limit_recursion, unsigned int options, int opt_override);
+ int cli_pcre_match(struct cli_pcre_data *pd, const unsigned char *buffer, size_t buflen, size_t override_offset, int options, struct cli_pcre_results *results);
+diff --git a/m4/reorganization/compiler_checks.m4 b/m4/reorganization/compiler_checks.m4
+index f7984f4cb2..80c81e1d30 100644
+--- a/m4/reorganization/compiler_checks.m4
++++ b/m4/reorganization/compiler_checks.m4
+@@ -121,7 +121,7 @@ extern void abort(void);
+ ((bb_size) > 0 && (sb_size) > 0 && (size_t)(sb_size) <= (size_t)(bb_size) \
+ && (sb) >= (bb) && ((sb) + (sb_size)) <= ((bb) + (bb_size)) && ((sb) + (sb_size)) > (bb) && (sb) < ((bb) + (bb_size)))
+
+-int crashtest()
++int crashtest(void)
+ {
+ unsigned int backsize, dcur;
+ int dval=0x12000, unp_offset;
+diff --git a/shared/misc.h b/shared/misc.h
+index 436c73117b..63fdea0f50 100644
+--- a/shared/misc.h
++++ b/shared/misc.h
+@@ -72,7 +72,7 @@ int daemonize(void);
+ /*closes stdin, stdout, stderr. This is called by daemonize, but not
+ * daemonize_all_return. Users of daemonize_all_return should call this
+ * when initialization is complete.*/
+-int close_std_descriptors();
++int close_std_descriptors(void);
+
+ /*Returns the return value of fork. All processes return */
+ int daemonize_all_return(void);
^ permalink raw reply related [flat|nested] 15+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: app-antivirus/clamav/, app-antivirus/clamav/files/
@ 2024-09-05 14:45 Michael Orlitzky
0 siblings, 0 replies; 15+ messages in thread
From: Michael Orlitzky @ 2024-09-05 14:45 UTC (permalink / raw
To: gentoo-commits
commit: d11fdf6428fab5bdf185322c3aa56e1829787e15
Author: Michael Orlitzky <mjo <AT> gentoo <DOT> org>
AuthorDate: Thu Sep 5 12:56:32 2024 +0000
Commit: Michael Orlitzky <mjo <AT> gentoo <DOT> org>
CommitDate: Thu Sep 5 14:43:49 2024 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=d11fdf64
app-antivirus/clamav: add 0.103.12
Also drop USE=ipv6, since inspecting the code shows that it does
absolutely nothing.
Signed-off-by: Michael Orlitzky <mjo <AT> gentoo.org>
app-antivirus/clamav/Manifest | 1 +
app-antivirus/clamav/clamav-0.103.12.ebuild | 237 +++++++++++++++++++++
.../files/clamav-0.103.12-missing-const.patch | 13 ++
3 files changed, 251 insertions(+)
diff --git a/app-antivirus/clamav/Manifest b/app-antivirus/clamav/Manifest
index 8950166567b5..0ad425ffd34c 100644
--- a/app-antivirus/clamav/Manifest
+++ b/app-antivirus/clamav/Manifest
@@ -38,6 +38,7 @@ DIST cexpr-0.6.0.crate 17966 BLAKE2B cb46f066eb1f4dbac00ec86dc3e562db7ee8ea5ff17
DIST cfg-if-1.0.0.crate 7934 BLAKE2B e99a5589c11d79d77a4537b34ce0a45d37b981c123b79b807cea836c89fc3926d693458893baca2882448d3d44e3f64e06141f6d916b748daa10b8cc1ae16d1b SHA512 0fb16a8882fd30e86b62c5143b1cb18ab564e84e75bd1f28fd12f24ffdc4a42e0d2e012a99abb606c12efe3c11061ff5bf8e24ab053e550ae083f7d90f6576ff
DIST chrono-0.4.38.crate 220559 BLAKE2B ab828bfeed56eb737a1797d5e1132cafe87a1e14bf7a1fe4a5098f50e6ceead50ca2e7f041cc2ff63d5f4e41e2853322f6c345bb31ff12a5b412e3e5202f5fea SHA512 858e47e3facebd5383e71898f26b27d92fe4a69027e2cc47da2af59975ead7767355e0b699f4228eabe76a3eff8b2519c7cecf8b60dc3fc60fbf9b28e2f3d4d9
DIST clamav-0.103.11.tar.gz 16550978 BLAKE2B 9fba6d5b41ef07b017be26b7ebd832ca03146a68545f794924332c67429ba27603745e2ad7fc0f58c341c6d9267e5b5265c37525dba9cbb15ab616915ec2d605 SHA512 86241ee8058d9a3ccc13b89bb41aa16cfbeb65717fbcfeea6117b7885e8854f5673c22475e7d33ee4210a15d583e806f252657c07933f072455027f1531427b8
+DIST clamav-0.103.12.tar.gz 16507685 BLAKE2B bc31787625f85867bf21c4555aa2fd2998514986fb571fa4e6cb9fa3fedf61b493c517291b662054edc0bbe8d45649d9c244d943df01950e204baa9e537e3e32 SHA512 0e870a5fd035fbf090359ef7634b1b36e346ff3066b896ff17c2c6ace04f4c17e16181a21fead8b8b2f397de9ea47b928515b717a41996bac4c8efed4d16ec4e
DIST clamav-1.0.5.tar.gz 10344955 BLAKE2B 1deceff859c9eec6185f6c83833333d1a030edd1c9dcc6788f669259b4922f332b564a7c6f3fa7f03ebe2051524132becb35cbd67526aac43e95ca3978793517 SHA512 7d46cf5555107d2856430a5f09f5dfd011b597d3dc7e691db3c956867b1314b50fd23008bf45b377d31493a12716c527159d163748d6ae759e97a041780da0d9
DIST clamav-1.0.6.tar.gz 10345779 BLAKE2B fbbef034a7bf6e2b323007a3de2464b60cc0a564551ddd4169a72af0328cfc2485c14395626e8d0258dfbb3bb41bc895d26622ff2dfb5fcd1181e6595da6489b SHA512 907cf51f8e6776a81ec5501026c240266b0eb8f7631fcbbcd0f8514446925dc731d819ae758217f9ed9414ca385b64e67f6de0e5133c04ba7590bd1e4445e09e
DIST clamav-1.2.2.tar.gz 10372690 BLAKE2B 47940236e38296ac908be4c5d1c5ce8bbc9ec5c69fa87b2472c941d2de9642e0ab6a59c63038aa706079e8efeb161083db69ad03eaaf27a6d05f4f1a5bb70aff SHA512 32562230f367a230f70dfca5ed5000ee8829a0da7452b0113e9dbaa47ef6b21901001f741b0e52ce52c02fe8f834bd559bcbdf1ea20495bead9c4976c3a4cc92
diff --git a/app-antivirus/clamav/clamav-0.103.12.ebuild b/app-antivirus/clamav/clamav-0.103.12.ebuild
new file mode 100644
index 000000000000..8a29edbb6daa
--- /dev/null
+++ b/app-antivirus/clamav/clamav-0.103.12.ebuild
@@ -0,0 +1,237 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit autotools flag-o-matic systemd tmpfiles
+
+DESCRIPTION="Clam Anti-Virus Scanner"
+HOMEPAGE="https://www.clamav.net/"
+SRC_URI="https://www.clamav.net/downloads/production/${P}.tar.gz"
+
+LICENSE="GPL-2 unRAR"
+SLOT="0/lts"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~ppc ~ppc64 ~riscv ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos"
+IUSE="bzip2 doc clamonacc clamdtop clamsubmit iconv libclamav-only milter metadata-analysis-api selinux systemd test xml"
+
+REQUIRED_USE="libclamav-only? ( !clamonacc !clamdtop !clamsubmit !milter !metadata-analysis-api )"
+
+RESTRICT="!test? ( test )"
+
+# Require acct-{user,group}/clamav at build time so that we can set
+# the permissions on /var/lib/clamav in src_install rather than in
+# pkg_postinst; calling "chown" on the live filesystem scares me.
+CDEPEND="acct-group/clamav
+ acct-user/clamav
+ dev-libs/libltdl
+ dev-libs/libmspack
+ || ( dev-libs/libpcre2 >dev-libs/libpcre-6 )
+ dev-libs/tomsfastmath
+ >=sys-libs/zlib-1.2.2:=
+ bzip2? ( app-arch/bzip2 )
+ clamdtop? ( sys-libs/ncurses:0 )
+ clamsubmit? ( net-misc/curl dev-libs/json-c:= )
+ elibc_musl? ( sys-libs/fts-standalone )
+ iconv? ( virtual/libiconv )
+ !libclamav-only? ( net-misc/curl )
+ dev-libs/openssl:0=
+ milter? ( mail-filter/libmilter:= )
+ xml? ( dev-libs/libxml2 )"
+
+# We need at least autoconf-2.69-r5 because that's the first (patched)
+# version of it in Gentoo that supports ./configure --runstatedir.
+BDEPEND=">=dev-build/autoconf-2.69-r5
+ virtual/pkgconfig"
+
+DEPEND="${CDEPEND}
+ metadata-analysis-api? ( dev-libs/json-c:* )
+ test? ( dev-libs/check )"
+RDEPEND="${CDEPEND}
+ selinux? ( sec-policy/selinux-clamav )"
+
+PATCHES=(
+ "${FILESDIR}/${PN}-0.102.1-libxml2_pkgconfig.patch" #661328
+ "${FILESDIR}/${PN}-0.102.2-fix-curl-detection.patch" #709616
+ "${FILESDIR}/${PN}-0.103.0-system-tomsfastmath.patch" # 649394
+ "${FILESDIR}/${PN}-0.103.1-upstream-openrc.patch"
+ "${FILESDIR}/${PN}-0.103.12-missing-const.patch"
+)
+
+src_prepare() {
+ default
+
+ # Be extra sure that we're using the system copy of tomsfastmath
+ einfo "removing bundled copy of dev-libs/tomsfastmath"
+ rm -r libclamav/tomsfastmath || \
+ die "failed to remove bundled tomsfastmath"
+
+ AT_NO_RECURSIVE="yes" eautoreconf
+}
+
+src_configure() {
+ use elibc_musl && append-ldflags -lfts
+ use ppc64 && append-flags -mminimal-toc
+
+ # according to configure help it should be
+ # $(use_enable xml)
+ # but that does not work
+ # do not add this, since --disable-xml seems to override
+ # --without-xml
+ JSONUSE="--without-libjson"
+
+ if use clamsubmit || use metadata-analysis-api; then
+ # either of those 2 requires libjson.
+ # clamsubmit will be built as soon as libjson and curl are found
+ # but we only install the binary if requested
+ JSONUSE="--with-libjson=${EPREFIX}/usr"
+ fi
+
+ local myeconfargs=(
+ $(use_enable bzip2)
+ $(use_enable clamonacc)
+ $(use_enable clamdtop)
+ $(use_enable milter)
+ $(use_enable test check)
+ $(use_with xml)
+ $(use_with iconv)
+ ${JSONUSE}
+ $(use_enable libclamav-only)
+ $(use_with !libclamav-only libcurl)
+ --enable-ipv6
+ --with-system-libmspack
+ --cache-file="${S}"/config.cache
+ --disable-experimental
+ --disable-static
+ --disable-zlib-vcheck
+ --enable-id-check
+ --with-dbdir="${EPREFIX}"/var/lib/clamav
+ # Don't call --with-zlib=/usr (see bug #699296)
+ --with-zlib
+ --disable-llvm
+ --enable-openrc
+ --runstatedir=/run
+ )
+ econf "${myeconfargs[@]}"
+}
+
+src_install() {
+ default
+
+ rm -rf "${ED}"/var/lib/clamav || die
+
+ if ! use libclamav-only ; then
+ if use systemd; then
+ # The tmpfiles entry is behind USE=systemd because the
+ # OpenRC service scripts should (and do) ensure that the
+ # directories they need exist and have the correct
+ # permissions without the help of tmpfiles.
+ newtmpfiles "${FILESDIR}/tmpfiles.d/clamav-r1.conf" clamav.conf
+ systemd_newunit "${FILESDIR}/clamd_at.service" "clamd@.service"
+ systemd_dounit "${FILESDIR}/clamd.service"
+ systemd_newunit "${FILESDIR}/freshclamd.service-r1" \
+ "freshclamd.service"
+ fi
+
+ insinto /etc/logrotate.d
+ newins "${FILESDIR}/clamd.logrotate" clamd
+ newins "${FILESDIR}/freshclam.logrotate" freshclam
+ use milter && \
+ newins "${FILESDIR}/clamav-milter.logrotate-r1" clamav-milter
+
+ # Modify /etc/{clamd,freshclam}.conf to be usable out of the box
+ sed -i -e "s:^\(Example\):\# \1:" \
+ -e "s/^#\(PidFile .*\)/\1/" \
+ -e "s/^#\(LocalSocket .*\)/\1/" \
+ -e "s/^#\(User .*\)/\1/" \
+ -e "s:^\#\(LogFile\) .*:\1 ${EPREFIX}/var/log/clamav/clamd.log:" \
+ -e "s:^\#\(LogTime\).*:\1 yes:" \
+ -e "s/^#\(DatabaseDirectory .*\)/\1/" \
+ "${ED}"/etc/clamd.conf.sample || die
+
+ sed -i -e "s:^\(Example\):\# \1:" \
+ -e "s/^#\(PidFile .*\)/\1/" \
+ -e "s/^#\(DatabaseOwner .*\)/\1/" \
+ -e "s:^\#\(UpdateLogFile\) .*:\1 ${EPREFIX}/var/log/clamav/freshclam.log:" \
+ -e "s:^\#\(NotifyClamd\).*:\1 ${EPREFIX}/etc/clamd.conf:" \
+ -e "s:^\#\(ScriptedUpdates\).*:\1 yes:" \
+ -e "s/^#\(DatabaseDirectory .*\)/\1/" \
+ "${ED}"/etc/freshclam.conf.sample || die
+
+ if use milter ; then
+ # Note: only keep the "unix" ClamdSocket and MilterSocket!
+ sed -i -e "s:^\(Example\):\# \1:" \
+ -e "s/^#\(PidFile .*\)/\1/" \
+ -e "s/^#\(ClamdSocket unix:.*\)/\1/" \
+ -e "s/^#\(User .*\)/\1/" \
+ -e "s/^#\(MilterSocket unix:.*\)/\1/" \
+ -e "s:^\#\(LogFile\) .*:\1 ${EPREFIX}/var/log/clamav/clamav-milter.log:" \
+ "${ED}"/etc/clamav-milter.conf.sample || die
+
+ cat >> "${ED}"/etc/conf.d/clamd <<-EOF
+ MILTER_NICELEVEL=19
+ START_MILTER=no
+ EOF
+
+ systemd_newunit "${FILESDIR}/clamav-milter.service-r1" clamav-milter.service
+ fi
+
+ local i
+ for i in clamd freshclam clamav-milter
+ do
+ if [[ -f "${ED}"/etc/"${i}".conf.sample ]]; then
+ mv "${ED}"/etc/"${i}".conf{.sample,} || die
+ fi
+ done
+
+ # These both need to be writable by the clamav user.
+ # TODO: use syslog by default; that's what it's for.
+ diropts -o clamav -g clamav
+ keepdir /var/lib/clamav
+ keepdir /var/log/clamav
+ fi
+
+ if use doc ; then
+ local HTML_DOCS=( docs/html/. )
+ einstalldocs
+
+ if ! use libclamav-only ; then
+ doman docs/man/*.[1-8]
+ fi
+ fi
+
+ find "${ED}" -name '*.la' -delete || die
+}
+
+src_test() {
+ if use libclamav-only ; then
+ ewarn "Test target not available when USE=libclamav-only is set, skipping tests ..."
+ return 0
+ fi
+
+ emake quick-check
+}
+
+pkg_postinst() {
+ if ! use libclamav-only ; then
+ if use systemd ; then
+ tmpfiles_process clamav.conf
+ fi
+ fi
+
+ if use milter ; then
+ elog "For simple instructions how to setup the clamav-milter read the"
+ elog "clamav-milter.README.gentoo in /usr/share/doc/${PF}"
+ fi
+
+ local databases=( "${EROOT}"/var/lib/clamav/main.c[lv]d )
+ if [[ ! -f "${databases}" ]] ; then
+ ewarn "You must run freshclam manually to populate the virus database"
+ ewarn "before starting clamav for the first time."
+ fi
+
+ ewarn "This version of ClamAV provides separate OpenRC services"
+ ewarn "for clamd, freshclam, clamav-milter, and clamonacc. The"
+ ewarn "clamd service now starts only the clamd daemon itself. You"
+ ewarn "should add freshclam (and perhaps clamav-milter) to any"
+ ewarn "runlevels that previously contained clamd."
+}
diff --git a/app-antivirus/clamav/files/clamav-0.103.12-missing-const.patch b/app-antivirus/clamav/files/clamav-0.103.12-missing-const.patch
new file mode 100644
index 000000000000..39b98b7f4732
--- /dev/null
+++ b/app-antivirus/clamav/files/clamav-0.103.12-missing-const.patch
@@ -0,0 +1,13 @@
+diff --git a/libclamav/regex/engine.c b/libclamav/regex/engine.c
+index ed359c3..3c25398 100644
+--- a/libclamav/regex/engine.c
++++ b/libclamav/regex/engine.c
+@@ -223,7 +223,7 @@ matcher(struct re_guts *g, const char *string, size_t nmatch,
+ dp = dissect(m, m->coldp, endp, gf, gl);
+ } else {
+ if (g->nplus > 0 && m->lastpos == NULL)
+- m->lastpos = (char **)cli_malloc((g->nplus+1) *
++ m->lastpos = (const char **)cli_malloc((g->nplus+1) *
+ sizeof(char *));
+ if (g->nplus > 0 && m->lastpos == NULL) {
+ free(m->pmatch);
^ permalink raw reply related [flat|nested] 15+ messages in thread
end of thread, other threads:[~2024-09-05 14:45 UTC | newest]
Thread overview: 15+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2020-12-18 1:10 [gentoo-commits] repo/gentoo:master commit in: app-antivirus/clamav/, app-antivirus/clamav/files/ Michael Orlitzky
-- strict thread matches above, loose matches on Subject: below --
2024-09-05 14:45 Michael Orlitzky
2023-02-15 22:51 Michael Orlitzky
2023-01-05 7:47 Sam James
2021-06-29 4:40 Sam James
2020-06-21 13:38 Michael Orlitzky
2020-03-20 23:50 Thomas Deutschmann
2019-10-14 7:11 Lars Wendler
2018-04-20 12:03 Thomas Raschbacher
2018-04-12 12:13 Thomas Raschbacher
2018-03-29 22:42 Thomas Deutschmann
2018-01-26 15:23 Thomas Deutschmann
2017-12-07 15:29 Craig Andrews
2017-11-23 22:30 Robin H. Johnson
2017-01-27 19:44 Austin English
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox