Skip site navigation (1)Skip section navigation (2)
Date:      Fri, 29 Oct 2021 22:52:45 GMT
From:      Yasuhiro Kimura <yasu@FreeBSD.org>
To:        ports-committers@FreeBSD.org, dev-commits-ports-all@FreeBSD.org, dev-commits-ports-main@FreeBSD.org
Subject:   git: 11ce5b3d719c - main - security/clamav: Update to 0.104.0
Message-ID:  <202110292252.19TMqjHT023408@gitrepo.freebsd.org>

next in thread | raw e-mail | index | archive | help
The branch main has been updated by yasu:

URL: https://cgit.FreeBSD.org/ports/commit/?id=11ce5b3d719c4e44114f0557144a3a773cabfcfd

commit 11ce5b3d719c4e44114f0557144a3a773cabfcfd
Author:     Yasuhiro Kimura <yasu@FreeBSD.org>
AuthorDate: 2021-09-18 05:27:42 +0000
Commit:     Yasuhiro Kimura <yasu@FreeBSD.org>
CommitDate: 2021-10-29 22:52:24 +0000

    security/clamav: Update to 0.104.0
    
    * Upstream changed build tool from GNU Autotools to CMake
    * Set TEST_TARGET
    * Add pre-test-TESTS-off target to display message that TESTS option
      needs to be enabled to execute `make test`
    * Switch to use pkg-messge instead of pkg-deinstall to display message
      for those who removes ClamAV permanently from you system
    * Stop checking in rc scripts if /var/run/clamav exists
    * Pet portclippy
    * Reformat Makefile with portfmt
    
    Release Notes:  https://blog.clamav.net/2021/09/clamav-01040-released.html
    PR:             258565
    Differential Revision:  https://reviews.freebsd.org/D32354
---
 security/clamav/Makefile                           | 206 ++++++++-------------
 security/clamav/distinfo                           |   6 +-
 security/clamav/files/clamav-clamd.in              |   7 +-
 security/clamav/files/clamav-freshclam.in          |  11 --
 ...shared_output.c => extra-patch-common_output.c} |   4 +-
 ...h-libclamav_c++_llvm_include_llvm_Support_CFG.h |  62 -------
 security/clamav/files/pkg-deinstall.in             |  25 ---
 security/clamav/files/pkg-message.in               |  13 ++
 security/clamav/pkg-plist                          | 165 +++++++++++++----
 9 files changed, 224 insertions(+), 275 deletions(-)

diff --git a/security/clamav/Makefile b/security/clamav/Makefile
index ad1beb45d440..037c7ca58488 100644
--- a/security/clamav/Makefile
+++ b/security/clamav/Makefile
@@ -1,5 +1,5 @@
 PORTNAME=	clamav
-PORTVERSION=	0.103.3
+DISTVERSION=	0.104.0
 PORTEPOCH=	1
 CATEGORIES=	security
 MASTER_SITES=	https://www.clamav.net/downloads/production/
@@ -8,174 +8,126 @@ MAINTAINER=	yasu@FreeBSD.org
 COMMENT=	Command line virus scanner written entirely in C
 
 LICENSE=	GPLv2
-LICENSE_FILE=	${WRKSRC}/COPYING
+LICENSE_FILE=	${WRKSRC}/COPYING.txt
 
 LIB_DEPENDS=	libcurl.so:ftp/curl \
-		libltdl.so:devel/libltdl \
-		libmspack.so:archivers/libmspack
+		libjson-c.so:devel/json-c \
+		libmspack.so:archivers/libmspack \
+		libpcre2-8.so:devel/pcre2
 
-USES=		compiler cpe gmake gnome libtool ncurses pathfix pkgconfig ssl
-USE_RC_SUBR=	clamav-clamd clamav-freshclam
+USES=		cmake cpe gnome iconv ncurses pkgconfig ssl
+USE_GNOME=	libxml2
 USE_LDCONFIG=	yes
+USE_RC_SUBR=	clamav-clamd clamav-freshclam
 
-GNU_CONFIGURE=	yes
-INSTALL_TARGET=	install-strip
-
-PLIST_SUB+=	CLAMAVGROUP=${CLAMAVGROUP} \
-		CLAMAVUSER=${CLAMAVUSER} \
-		DBDIR=${DBDIR} \
-		LOGDIR=${LOGDIR} \
-		RUNDIR=${RUNDIR}
-
-CONFIGURE_ARGS=	--disable-dependency-tracking \
-		--enable-bigstack \
-		--enable-clamdtop \
-		--libdir=${PREFIX}/lib \
-		--with-dbdir=${DBDIR} \
-		--with-libcurl=${LOCALBASE} \
-		--with-openssl=${OPENSSLBASE} \
-		--with-system-libmspack=${LOCALBASE}/lib/libmspack.so
-
-CFLAGS_i386=	-march=i486
+CMAKE_ARGS=	-DDATABASE_DIRECTORY:STRING=${_DBDIR}
+CMAKE_ON=	ENABLE_EXTERNAL_MSPACK
 
-# This port has a problem with -pthread,
-# force to use -lthr until it's not fixed.
-LDFLAGS+=	-lthr
+TEST_TARGET=	check
 
 CONFLICTS_INSTALL=	clamav-[0-9]*
 
-SUB_FILES=	pkg-deinstall
+SUB_FILES=	pkg-message
 SUB_LIST+=	CHMOD=${CHMOD} \
 		CHOWN=${CHOWN} \
-		CLAMAV_CLAMD_PIDFILE=${CLAMAV_CLAMD_PIDFILE} \
-		CLAMAV_CLAMD_SOCKET=${CLAMAV_CLAMD_SOCKET} \
-		CLAMAV_MILTER_SOCKET=${CLAMAV_MILTER_SOCKET} \
-		CLAMAVGROUP=${CLAMAVGROUP} \
-		CLAMAVUSER=${CLAMAVUSER} \
-		DBDIR=${DBDIR} \
-		LOGDIR=${LOGDIR} \
-		RUNDIR=${RUNDIR}
-
-PLIST_SUB+=	CLAMAVGROUP=${CLAMAVGROUP} \
-		CLAMAVUSER=${CLAMAVUSER}
-
-OPTIONS_DEFINE=	ARC ARJ DMG_XAR DOCS EXPERIMENTAL ICONV IPV6 JSON LDAP LHA \
-		MILTER PCRE STDERR TESTS UNRAR UNZOO
-
-OPTIONS_DEFAULT=	ARC ARJ DMG_XAR JSON MILTER PCRE UNRAR UNZOO
+		CLAMAV_CLAMD_PIDFILE=${_CLAMAV_CLAMD_PIDFILE} \
+		CLAMAV_CLAMD_SOCKET=${_CLAMAV_CLAMD_SOCKET} \
+		CLAMAV_MILTER_SOCKET=${_CLAMAV_MILTER_SOCKET} \
+		CLAMAVGROUP=${_CLAMAVGROUP} \
+		CLAMAVUSER=${_CLAMAVUSER} \
+		DBDIR=${_DBDIR} \
+		LOGDIR=${_LOGDIR} \
+		RUNDIR=${_RUNDIR}
+
+USERS=		${_CLAMAVUSER}
+GROUPS=		${_CLAMAVGROUP} mail
+
+PLIST_SUB+=	CLAMAVGROUP=${_CLAMAVGROUP} \
+		CLAMAVUSER=${_CLAMAVUSER} \
+		DBDIR=${_DBDIR} \
+		LOGDIR=${_LOGDIR} \
+		RUNDIR=${_RUNDIR}
+
+OPTIONS_DEFINE=	ARC ARJ DOCS EXPERIMENTAL LHA MILTER STDERR TESTS UNRAR UNZOO
+
+OPTIONS_DEFAULT=	ARC ARJ MILTER UNRAR UNZOO
 OPTIONS_SUB=		yes
 
 ARC_DESC=		Enable arch archives support
 ARJ_DESC=		Enable arj archives support
-DMG_XAR_DESC=		Enable DMG and XAR archives support
 EXPERIMENTAL_DESC=	Build experimental code
 LHA_DESC=		Enable lha archives support
 MILTER_DESC=		Compile the milter interface
 STDERR_DESC=		Print logs to stderr instead of stdout
-TESTS_DESC=		Run compile-time tests (req. python)
+TESTS_DESC=		Build with test enabled (`make test` requires it)
 UNZOO_DESC=		Enable zoo archives support
 
 ARC_RUN_DEPENDS=		arc:archivers/arc
 ARJ_RUN_DEPENDS=		arj:archivers/arj
-DMG_XAR_CONFIGURE_WITH=		xml=${LOCALBASE}
-DMG_XAR_USE=			GNOME=libxml2
-EXPERIMENTAL_CONFIGURE_ENABLE=	experimental
-ICONV_CONFIGURE_WITH=		iconv
-ICONV_USES=			iconv
-IPV6_CONFIGURE_ENABLE=		ipv6
-JSON_CONFIGURE_WITH=		libjson=${LOCALBASE}
-JSON_LIB_DEPENDS=		libjson-c.so:devel/json-c
-LDAP_LDFLAGS=			-lldap -L${LOCALBASE}/lib
-LDAP_USE=			OPENLDAP=yes
+EXPERIMENTAL_CMAKE_BOOL=	ENABLE_EXPERIMENTAL
 LHA_RUN_DEPENDS=		lha:archivers/lha
-MILTER_CONFIGURE_WITH=		sendmail=/usr/sbin/sendmail
-MILTER_CONFIGURE_ENABLE=	milter
 .if !exists(/usr/lib/libmilter.so)
-MILTER_CFLAGS=			-I${LOCALBASE}/include
-MILTER_LDFLAGS=			-L${LOCALBASE}/lib
-MILTER_LIB_DEPENDS+=		libmilter.so:mail/libmilter
+MILTER_LIB_DEPENDS=		libmilter.so:mail/libmilter
 .endif
 MILTER_USE=			RC_SUBR=clamav-milter
-PCRE_CONFIGURE_WITH=		pcre
-PCRE_LIB_DEPENDS=		libpcre2-8.so:devel/pcre2
-STDERR_EXTRA_PATCHES=		${FILESDIR}/extra-patch-shared_output.c
-TESTS_CONFIGURE_ENABLE=		check
+.if !exists(/usr/lib/libmilter.so)
+MILTER_USE+=			localbase
+.endif
+MILTER_CMAKE_BOOL=		ENABLE_MILTER
+STDERR_EXTRA_PATCHES=		${FILESDIR}/extra-patch-common_output.c
 TESTS_BUILD_DEPENDS=		${LOCALBASE}/include/check.h:devel/check
 TESTS_USES=			python:build
-UNRAR_CONFIGURE_ENABLE=		unrar
+TESTS_CMAKE_BOOL=		ENABLE_TESTS
+UNRAR_CMAKE_BOOL=		ENABLE_UNRAR
 UNZOO_RUN_DEPENDS=		unzoo:archivers/unzoo
 
-CLAMAVUSER?=	clamav
-CLAMAVGROUP?=	clamav
-
-CLAMAV_CLAMD_SOCKET?=	${RUNDIR}/clamd.sock
-CLAMAV_CLAMD_PIDFILE?=	${RUNDIR}/clamd.pid
-CLAMAV_MILTER_SOCKET?=	${RUNDIR}/clmilter.sock
-
-.if ${CLAMAVUSER} == "clamav"
-USERS=		clamav
-.endif
+_CLAMAVUSER=	clamav
+_CLAMAVGROUP=	clamav
 
-.if ${CLAMAVGROUP} == "clamav"
-GROUPS=		clamav mail
-.endif
+_CLAMAV_CLAMD_SOCKET?=	${_RUNDIR}/clamd.sock
+_CLAMAV_CLAMD_PIDFILE?=	${_RUNDIR}/clamd.pid
+_CLAMAV_MILTER_SOCKET?=	${_RUNDIR}/clmilter.sock
 
-DBDIR=		/var/db/clamav
-LOGDIR=		/var/log/clamav
-RUNDIR=		/var/run/clamav
-PY_NO_THREAD=	${WRKDIR}/.python-has-no-threads
+_DBDIR=		/var/db/clamav
+_LOGDIR=	/var/log/clamav
+_RUNDIR=	/var/run/clamav
 
-SED_CONF=	-E -e 's|^\#?(Example)$$|\#\1|' -e \
-		's|^\#?((Update)?LogFile) .*/([a-z]+\.log)$$|\1 ${LOGDIR}/\3|' \
-		-e 's|^\#?(PidFile) .*/([a-z\-]+\.pid)$$|\1 ${RUNDIR}/\2|' -e \
-		's|^\#?(LocalSocket) .*$$|\1 ${CLAMAV_CLAMD_SOCKET}|' -e \
-		's|^\#?(User) .*$$|\1 ${CLAMAVUSER}|' -e \
+_SED_CONF=	-E -e 's|^\#?(Example)$$|\#\1|' -e \
+		's|^\#?((Update)?LogFile) .*/([a-z]+\.log)$$|\1 ${_LOGDIR}/\3|' \
+		-e 's|^\#?(PidFile) .*/([a-z\-]+\.pid)$$|\1 ${_RUNDIR}/\2|' -e \
+		's|^\#?(LocalSocket) .*$$|\1 ${_CLAMAV_CLAMD_SOCKET}|' -e \
+		's|^\#?(User) .*$$|\1 ${_CLAMAVUSER}|' -e \
 		's|^\#?(AllowSupplementaryGroups).*$$|\1 yes|' -e \
 		's|^\#?(ScanMail).*$$|\1 yes|' -e \
-		's|^\#?(DatabaseDirectory) .*$$|\1 ${DBDIR}|' -e \
-		's|^\#?(DatabaseOwner) .*$$|\1 ${CLAMAVUSER}|' -e \
+		's|^\#?(DatabaseDirectory) .*$$|\1 ${_DBDIR}|' -e \
+		's|^\#?(DatabaseOwner) .*$$|\1 ${_CLAMAVUSER}|' -e \
 		's|^\#?(FixStaleSocket).*$$|\1 yes|' -e \
 		's|^\#?(NotifyClamd) .*$$|\1 ${PREFIX}/etc/clamd.conf|' -e \
-		's|^\#?(MilterSocket) */tmp.*$$|\1 ${CLAMAV_MILTER_SOCKET}|' -e \
-		's|^\#?(ClamdSocket).*$$|\1 unix:${CLAMAV_CLAMD_SOCKET}|'
-
-.include <bsd.port.pre.mk>
+		's|^\#?(MilterSocket) */tmp.*$$|\1 ${_CLAMAV_MILTER_SOCKET}|' \
+		-e 's|^\#?(ClamdSocket).*$$|\1 unix:${_CLAMAV_CLAMD_SOCKET}|'
 
 post-patch:
-	@${REINPLACE_CMD} ${SED_CONF} \
+	@${REINPLACE_CMD} ${_SED_CONF} \
 		${WRKSRC}/etc/clamd.conf.sample \
 		${WRKSRC}/etc/freshclam.conf.sample \
 		${WRKSRC}/etc/clamav-milter.conf.sample
-.if ${CHOSEN_COMPILER_TYPE} == gcc
-	@${REINPLACE_CMD} -e 's|-Wno-logical-op-parentheses||' \
-			  -e 's|-Wno-dangling-else||' \
-		${WRKSRC}/libclamav/Makefile.am \
-		${WRKSRC}/libclamav/Makefile.in \
-		${WRKSRC}/libclamunrar/makefile
-.endif
-
-pre-configure-TESTS-on:
-	@if ! ${PYTHON_CMD} -c "import thread" >/dev/null 2>&1; then \
-		${ECHO_MSG} ""; \
-		${ECHO_MSG} "==========================================================================="; \
-		${ECHO_MSG} "= Unit tests REQUIRES python built with thread support, and yours is not. ="; \
-		${ECHO_MSG} "= It will not be called during this build                                 ="; \
-		${ECHO_MSG} "==========================================================================="; \
-		${ECHO_MSG} ""; \
-		${TOUCH} ${PY_NO_THREAD}; \
-	fi
-
-post-build-TESTS-on:
-	@if [ ! -f "${PY_NO_THREAD}" ]; then \
-		${MAKE_CMD} -C ${WRKSRC} check; \
-	fi
 
 post-install:
-	${INSTALL_DATA} ${WRKSRC}/clamav-config.h ${STAGEDIR}${PREFIX}/include
-	@${MKDIR} ${STAGEDIR}${DOCSDIR}/html \
-		  ${STAGEDIR}${DBDIR} \
-		  ${STAGEDIR}${LOGDIR} \
-		  ${STAGEDIR}${RUNDIR}
-	(cd ${WRKSRC}/docs/html; ${COPYTREE_SHARE} . ${STAGEDIR}${DOCSDIR}/html)
-
-.include <bsd.port.post.mk>
+	${INSTALL_DATA} ${INSTALL_WRKSRC}/clamav-config.h ${STAGEDIR}${PREFIX}/include
+	@${MKDIR} ${STAGEDIR}${_DBDIR} \
+		  ${STAGEDIR}${_LOGDIR} \
+		  ${STAGEDIR}${_RUNDIR}
+
+post-install-DOCS-on:
+	${MV} ${STAGEDIR}${PREFIX}/share/doc/ClamAV ${STAGEDIR}${DOCSDIR}
+
+post-install-DOCS-off:
+	${RM} -r ${STAGEDIR}${PREFIX}/share/doc/ClamAV
+
+pre-test-TESTS-off:
+	@${ECHO_MSG} '******************************************************************' && \
+	${ECHO_MSG} '***** You need to enable TESTS option to execute `make test` *****' && \
+	${ECHO_MSG} '******************************************************************' && \
+	${FALSE}
+
+.include <bsd.port.mk>
diff --git a/security/clamav/distinfo b/security/clamav/distinfo
index 808efe68f12a..e578511dfc6c 100644
--- a/security/clamav/distinfo
+++ b/security/clamav/distinfo
@@ -1,3 +1,3 @@
-TIMESTAMP = 1624295813
-SHA256 (clamav-0.103.3.tar.gz) = 9f6e3d18449f3d1a3992771d696685249dfa12736fe2b2929858f2c7d8276ae9
-SIZE (clamav-0.103.3.tar.gz) = 13389239
+TIMESTAMP = 1631019092
+SHA256 (clamav-0.104.0.tar.gz) = a079d64cd55d6184510adfe0f341b2f278f7fb1bcc080d28d374298160f19cb2
+SIZE (clamav-0.104.0.tar.gz) = 11896747
diff --git a/security/clamav/files/clamav-clamd.in b/security/clamav/files/clamav-clamd.in
index b9c562f47987..c6de79538080 100644
--- a/security/clamav/files/clamav-clamd.in
+++ b/security/clamav/files/clamav-clamd.in
@@ -23,11 +23,10 @@ rcvar=clamav_clamd_enable
 load_rc_config "$name"
 
 : ${clamav_clamd_enable:=NO}
-: ${clamav_clamd_socket="%%CLAMAV_CLAMD_SOCKET%%"}
 : ${clamav_clamd_pidfile="%%CLAMAV_CLAMD_PIDFILE%%"}
-: ${clamav_clamd_user="%%CLAMAVUSER%%"}
 
 command=%%PREFIX%%/sbin/clamd
+pidfile=${clamav_clamd_pidfile}
 required_dirs=%%DBDIR%%
 required_files=%%PREFIX%%/etc/clamd.conf
 
@@ -38,10 +37,6 @@ reload_cmd="%%PREFIX%%/bin/clamdscan --reload"
 #clamav .93 won't start without a valid main.c[vl]d file
 clamav_clamd_precmd()
 {
-	local rundir=${clamav_clamd_pidfile%/*}
-	if [ ! -d $rundir ] ; then
-		install -d -m 0755 -o ${clamav_clamd_user} -g ${clamav_clamd_user} $rundir
-	fi
 	if [ ! -f %%DBDIR%%/main.cvd -a ! -f %%DBDIR%%/main.cld ];then
 		echo "Missing %%DBDIR%%/*.cvd or *.cld files.  You must run freshclam first"
 		exit 1
diff --git a/security/clamav/files/clamav-freshclam.in b/security/clamav/files/clamav-freshclam.in
index affd41e1c6a3..a32de395b2c8 100644
--- a/security/clamav/files/clamav-freshclam.in
+++ b/security/clamav/files/clamav-freshclam.in
@@ -24,7 +24,6 @@ load_rc_config ${name}
 
 : ${clamav_freshclam_enable:=NO}
 : ${clamav_freshclam_pidfile=%%RUNDIR%%/freshclam.pid}
-: ${clamav_freshclam_user=%%CLAMAVUSER%%}
 
 command=%%PREFIX%%/bin/freshclam
 pidfile=${clamav_freshclam_pidfile}
@@ -32,14 +31,4 @@ command_args="--daemon -p ${pidfile}"
 required_dirs=%%DBDIR%%
 required_files=%%PREFIX%%/etc/freshclam.conf
 
-start_precmd=clamav_freshclam_precmd
-
-clamav_freshclam_precmd()
-{
-	local rundir=${clamav_freshclam_pidfile%/*}
-	if [ ! -d $rundir ] ; then
-		install -d -m 0755 -o ${clamav_freshclam_user} -g ${clamav_freshclam_user} $rundir
-	fi
-}
-
 run_rc_command "$1"
diff --git a/security/clamav/files/extra-patch-shared_output.c b/security/clamav/files/extra-patch-common_output.c
similarity index 71%
rename from security/clamav/files/extra-patch-shared_output.c
rename to security/clamav/files/extra-patch-common_output.c
index ddb4ab029f38..c87b4daaff95 100644
--- a/security/clamav/files/extra-patch-shared_output.c
+++ b/security/clamav/files/extra-patch-common_output.c
@@ -1,5 +1,5 @@
---- shared/output.c.orig	Thu May 18 22:10:40 2006
-+++ shared/output.c	Thu May 18 22:12:43 2006
+--- common/output.c.orig	Thu May 18 22:10:40 2006
++++ common/output.c	Thu May 18 22:12:43 2006
 @@ -236,7 +236,13 @@
  	return;
      }
diff --git a/security/clamav/files/patch-libclamav_c++_llvm_include_llvm_Support_CFG.h b/security/clamav/files/patch-libclamav_c++_llvm_include_llvm_Support_CFG.h
deleted file mode 100644
index dd70c2ca4d20..000000000000
--- a/security/clamav/files/patch-libclamav_c++_llvm_include_llvm_Support_CFG.h
+++ /dev/null
@@ -1,62 +0,0 @@
---- libclamav/c++/llvm/include/llvm/Support/CFG.h.orig	2016-04-22 15:02:19 UTC
-+++ libclamav/c++/llvm/include/llvm/Support/CFG.h
-@@ -27,8 +27,9 @@ namespace llvm {
- 
- template <class Ptr, class USE_iterator> // Predecessor Iterator
- class PredIterator : public std::iterator<std::forward_iterator_tag,
--                                          Ptr, ptrdiff_t> {
--  typedef std::iterator<std::forward_iterator_tag, Ptr, ptrdiff_t> super;
-+                                          Ptr, ptrdiff_t, Ptr*, Ptr*> {
-+  typedef std::iterator<std::forward_iterator_tag, Ptr, ptrdiff_t, Ptr*,
-+                                                                    Ptr*> super;
-   typedef PredIterator<Ptr, USE_iterator> Self;
-   USE_iterator It;
- 
-@@ -40,6 +41,7 @@ class PredIterator : public std::iterator<std::forward
- 
- public:
-   typedef typename super::pointer pointer;
-+  typedef typename super::reference reference;
- 
-   explicit inline PredIterator(Ptr *bb) : It(bb->use_begin()) {
-     advancePastNonTerminators();
-@@ -49,7 +51,7 @@ class PredIterator : public std::iterator<std::forward
-   inline bool operator==(const Self& x) const { return It == x.It; }
-   inline bool operator!=(const Self& x) const { return !operator==(x); }
- 
--  inline pointer operator*() const {
-+  inline reference operator*() const {
-     assert(!It.atEnd() && "pred_iterator out of range!");
-     return cast<TerminatorInst>(*It)->getParent();
-   }
-@@ -87,10 +89,11 @@ inline const_pred_iterator pred_end(const BasicBlock *
- 
- template <class Term_, class BB_>           // Successor Iterator
- class SuccIterator : public std::iterator<std::bidirectional_iterator_tag,
--                                          BB_, ptrdiff_t> {
-+                                          BB_, ptrdiff_t, BB_*, BB_*> {
-   const Term_ Term;
-   unsigned idx;
--  typedef std::iterator<std::bidirectional_iterator_tag, BB_, ptrdiff_t> super;
-+  typedef std::iterator<std::bidirectional_iterator_tag, BB_, ptrdiff_t, BB_*,
-+                                                                    BB_*> super;
-   typedef SuccIterator<Term_, BB_> Self;
- 
-   inline bool index_is_valid(int idx) {
-@@ -99,6 +102,7 @@ class SuccIterator : public std::iterator<std::bidirec
- 
- public:
-   typedef typename super::pointer pointer;
-+  typedef typename super::reference reference;
-   // TODO: This can be random access iterator, only operator[] missing.
- 
-   explicit inline SuccIterator(Term_ T) : Term(T), idx(0) {// begin iterator
-@@ -122,7 +126,7 @@ class SuccIterator : public std::iterator<std::bidirec
-   inline bool operator==(const Self& x) const { return idx == x.idx; }
-   inline bool operator!=(const Self& x) const { return !operator==(x); }
- 
--  inline pointer operator*() const { return Term->getSuccessor(idx); }
-+  inline reference operator*() const { return Term->getSuccessor(idx); }
-   inline pointer operator->() const { return operator*(); }
- 
-   inline Self& operator++() { ++idx; return *this; } // Preincrement
diff --git a/security/clamav/files/pkg-deinstall.in b/security/clamav/files/pkg-deinstall.in
deleted file mode 100644
index 47b5c7f8abf3..000000000000
--- a/security/clamav/files/pkg-deinstall.in
+++ /dev/null
@@ -1,25 +0,0 @@
-#!/bin/sh
-
-if [ "$2" != "POST-DEINSTALL" ]; then
-	exit 0
-fi
-
-CLAMAVUSER=%%CLAMAVUSER%%
-
-echo
-echo "===================================================="
-echo
-echo "If you want remove clamav permanently from you system"
-echo "execute following commands:"
-echo
-echo " # rm -rf %%LOGDIR%%"
-echo " # rm -rf %%RUNDIR%%"
-echo " # rm -rf %%DBDIR%%"
-if pw usershow "${CLAMAVUSER}" 2>/dev/null 1>&2; then
-	echo " # pw userdel ${CLAMAVUSER}"
-fi
-echo
-echo "===================================================="
-echo
-
-exit 0
diff --git a/security/clamav/files/pkg-message.in b/security/clamav/files/pkg-message.in
new file mode 100644
index 000000000000..91cd8d4e1ada
--- /dev/null
+++ b/security/clamav/files/pkg-message.in
@@ -0,0 +1,13 @@
+[
+{ type: remove
+  message: <<EOM
+If you want remove clamav permanently from you system
+execute following commands:
+
+ # rm -rf %%LOGDIR%%
+ # rm -rf %%RUNDIR%%
+ # rm -rf %%DBDIR%%
+ # pw userdel %%CLAMAVUSER%%
+EOM
+}
+]
diff --git a/security/clamav/pkg-plist b/security/clamav/pkg-plist
index 726d7d1722df..65c19807baf6 100644
--- a/security/clamav/pkg-plist
+++ b/security/clamav/pkg-plist
@@ -4,42 +4,9 @@ bin/clamconf
 bin/clamdscan
 bin/clamdtop
 bin/clamscan
-%%JSON%%bin/clamsubmit
+bin/clamsubmit
 bin/freshclam
 bin/sigtool
-%%PORTDOCS%%%%DOCSDIR%%/html/UserManual.html
-%%PORTDOCS%%%%DOCSDIR%%/html/UserManual/Contribute.html
-%%PORTDOCS%%%%DOCSDIR%%/html/UserManual/Installation-Unix.html
-%%PORTDOCS%%%%DOCSDIR%%/html/UserManual/Installation-Unix/Steps-Debian-Ubuntu.html
-%%PORTDOCS%%%%DOCSDIR%%/html/UserManual/Installation-Unix/Steps-Redhat-CentOS.html
-%%PORTDOCS%%%%DOCSDIR%%/html/UserManual/Installation-Unix/Steps-macOS.html
-%%PORTDOCS%%%%DOCSDIR%%/html/UserManual/Installation-Windows.html
-%%PORTDOCS%%%%DOCSDIR%%/html/UserManual/Introduction.html
-%%PORTDOCS%%%%DOCSDIR%%/html/UserManual/OnAccess.html
-%%PORTDOCS%%%%DOCSDIR%%/html/UserManual/Signatures.html
-%%PORTDOCS%%%%DOCSDIR%%/html/UserManual/Signatures/AllowLists.html
-%%PORTDOCS%%%%DOCSDIR%%/html/UserManual/Signatures/AuthenticodeRules.html
-%%PORTDOCS%%%%DOCSDIR%%/html/UserManual/Signatures/BodySignatureFormat.html
-%%PORTDOCS%%%%DOCSDIR%%/html/UserManual/Signatures/BytecodeSignatures.html
-%%PORTDOCS%%%%DOCSDIR%%/html/UserManual/Signatures/ContainerMetadata.html
-%%PORTDOCS%%%%DOCSDIR%%/html/UserManual/Signatures/DatabaseInfo.html
-%%PORTDOCS%%%%DOCSDIR%%/html/UserManual/Signatures/DynamicConfig.html
-%%PORTDOCS%%%%DOCSDIR%%/html/UserManual/Signatures/EncryptedArchives.html
-%%PORTDOCS%%%%DOCSDIR%%/html/UserManual/Signatures/ExtendedSignatures.html
-%%PORTDOCS%%%%DOCSDIR%%/html/UserManual/Signatures/FileTypeMagic.html
-%%PORTDOCS%%%%DOCSDIR%%/html/UserManual/Signatures/FileTypes.html
-%%PORTDOCS%%%%DOCSDIR%%/html/UserManual/Signatures/FunctionalityLevels.html
-%%PORTDOCS%%%%DOCSDIR%%/html/UserManual/Signatures/HashSignatures.html
-%%PORTDOCS%%%%DOCSDIR%%/html/UserManual/Signatures/LogicalSignatures.html
-%%PORTDOCS%%%%DOCSDIR%%/html/UserManual/Signatures/PhishSigs.html
-%%PORTDOCS%%%%DOCSDIR%%/html/UserManual/Signatures/YaraRules.html
-%%PORTDOCS%%%%DOCSDIR%%/html/UserManual/Usage.html
-%%PORTDOCS%%%%DOCSDIR%%/html/UserManual/Usage/Configuration.html
-%%PORTDOCS%%%%DOCSDIR%%/html/UserManual/Usage/Scanning.html
-%%PORTDOCS%%%%DOCSDIR%%/html/UserManual/Usage/SignatureManagement.html
-%%PORTDOCS%%%%DOCSDIR%%/html/UserManual/development.html
-%%PORTDOCS%%%%DOCSDIR%%/html/UserManual/images/demon.png
-%%PORTDOCS%%%%DOCSDIR%%/html/UserManual/libclamav.html
 include/clamav-config.h
 include/clamav-types.h
 include/clamav-version.h
@@ -47,23 +14,23 @@ include/clamav.h
 include/libfreshclam.h
 lib/libclamav.so
 lib/libclamav.so.9
-lib/libclamav.so.9.0.5
+lib/libclamav.so.9.1.0
 %%UNRAR%%lib/libclamunrar.so
 %%UNRAR%%lib/libclamunrar.so.9
-%%UNRAR%%lib/libclamunrar.so.9.0.5
+%%UNRAR%%lib/libclamunrar.so.9.1.0
 %%UNRAR%%lib/libclamunrar_iface.so
 %%UNRAR%%lib/libclamunrar_iface.so.9
-%%UNRAR%%lib/libclamunrar_iface.so.9.0.5
+%%UNRAR%%lib/libclamunrar_iface.so.9.1.0
 lib/libfreshclam.so
 lib/libfreshclam.so.2
-lib/libfreshclam.so.2.0.1
+lib/libfreshclam.so.2.0.2
 libdata/pkgconfig/libclamav.pc
 man/man1/clambc.1.gz
 man/man1/clamconf.1.gz
 man/man1/clamdscan.1.gz
 man/man1/clamdtop.1.gz
 man/man1/clamscan.1.gz
-%%JSON%%man/man1/clamsubmit.1.gz
+man/man1/clamsubmit.1.gz
 man/man1/freshclam.1.gz
 man/man1/sigtool.1.gz
 man/man5/clamav-milter.conf.5.gz
@@ -71,6 +38,126 @@ man/man5/clamd.conf.5.gz
 man/man5/freshclam.conf.5.gz
 man/man8/clamav-milter.8.gz
 man/man8/clamd.8.gz
+%%PORTDOCS%%%%DOCSDIR%%/html/404.html
+%%PORTDOCS%%%%DOCSDIR%%/html/FontAwesome/css/font-awesome.css
+%%PORTDOCS%%%%DOCSDIR%%/html/FontAwesome/fonts/FontAwesome.ttf
+%%PORTDOCS%%%%DOCSDIR%%/html/FontAwesome/fonts/fontawesome-webfont.eot
+%%PORTDOCS%%%%DOCSDIR%%/html/FontAwesome/fonts/fontawesome-webfont.svg
+%%PORTDOCS%%%%DOCSDIR%%/html/FontAwesome/fonts/fontawesome-webfont.ttf
+%%PORTDOCS%%%%DOCSDIR%%/html/FontAwesome/fonts/fontawesome-webfont.woff
+%%PORTDOCS%%%%DOCSDIR%%/html/FontAwesome/fonts/fontawesome-webfont.woff2
+%%PORTDOCS%%%%DOCSDIR%%/html/Introduction.html
+%%PORTDOCS%%%%DOCSDIR%%/html/ace.js
+%%PORTDOCS%%%%DOCSDIR%%/html/appendix/Appendix.html
+%%PORTDOCS%%%%DOCSDIR%%/html/appendix/Authenticode.html
+%%PORTDOCS%%%%DOCSDIR%%/html/appendix/CvdPrivateMirror.html
+%%PORTDOCS%%%%DOCSDIR%%/html/appendix/FileTypes.html
+%%PORTDOCS%%%%DOCSDIR%%/html/appendix/FunctionalityLevels.html
+%%PORTDOCS%%%%DOCSDIR%%/html/appendix/Terminology.html
+%%PORTDOCS%%%%DOCSDIR%%/html/ayu-highlight.css
+%%PORTDOCS%%%%DOCSDIR%%/html/book.js
+%%PORTDOCS%%%%DOCSDIR%%/html/clipboard.min.js
+%%PORTDOCS%%%%DOCSDIR%%/html/css/chrome.css
+%%PORTDOCS%%%%DOCSDIR%%/html/css/general.css
+%%PORTDOCS%%%%DOCSDIR%%/html/css/print.css
+%%PORTDOCS%%%%DOCSDIR%%/html/css/variables.css
+%%PORTDOCS%%%%DOCSDIR%%/html/editor.js
+%%PORTDOCS%%%%DOCSDIR%%/html/elasticlunr.min.js
+%%PORTDOCS%%%%DOCSDIR%%/html/faq/faq-cvd.html
+%%PORTDOCS%%%%DOCSDIR%%/html/faq/faq-eol.html
+%%PORTDOCS%%%%DOCSDIR%%/html/faq/faq-freshclam.html
+%%PORTDOCS%%%%DOCSDIR%%/html/faq/faq-ignore.html
+%%PORTDOCS%%%%DOCSDIR%%/html/faq/faq-misc.html
+%%PORTDOCS%%%%DOCSDIR%%/html/faq/faq-ml.html
+%%PORTDOCS%%%%DOCSDIR%%/html/faq/faq-pua.html
+%%PORTDOCS%%%%DOCSDIR%%/html/faq/faq-safebrowsing.html
+%%PORTDOCS%%%%DOCSDIR%%/html/faq/faq-scan-alerts.html
+%%PORTDOCS%%%%DOCSDIR%%/html/faq/faq-troubleshoot.html
+%%PORTDOCS%%%%DOCSDIR%%/html/faq/faq-uninstall.html
+%%PORTDOCS%%%%DOCSDIR%%/html/faq/faq-upgrade.html
+%%PORTDOCS%%%%DOCSDIR%%/html/faq/faq-whichversion.html
+%%PORTDOCS%%%%DOCSDIR%%/html/faq/faq-win32.html
+%%PORTDOCS%%%%DOCSDIR%%/html/faq/faq.html
+%%PORTDOCS%%%%DOCSDIR%%/html/favicon.png
+%%PORTDOCS%%%%DOCSDIR%%/html/fonts/OPEN-SANS-LICENSE.txt
+%%PORTDOCS%%%%DOCSDIR%%/html/fonts/SOURCE-CODE-PRO-LICENSE.txt
+%%PORTDOCS%%%%DOCSDIR%%/html/fonts/fonts.css
+%%PORTDOCS%%%%DOCSDIR%%/html/fonts/open-sans-v17-all-charsets-300.woff2
+%%PORTDOCS%%%%DOCSDIR%%/html/fonts/open-sans-v17-all-charsets-300italic.woff2
+%%PORTDOCS%%%%DOCSDIR%%/html/fonts/open-sans-v17-all-charsets-600.woff2
+%%PORTDOCS%%%%DOCSDIR%%/html/fonts/open-sans-v17-all-charsets-600italic.woff2
+%%PORTDOCS%%%%DOCSDIR%%/html/fonts/open-sans-v17-all-charsets-700.woff2
+%%PORTDOCS%%%%DOCSDIR%%/html/fonts/open-sans-v17-all-charsets-700italic.woff2
+%%PORTDOCS%%%%DOCSDIR%%/html/fonts/open-sans-v17-all-charsets-800.woff2
+%%PORTDOCS%%%%DOCSDIR%%/html/fonts/open-sans-v17-all-charsets-800italic.woff2
+%%PORTDOCS%%%%DOCSDIR%%/html/fonts/open-sans-v17-all-charsets-italic.woff2
+%%PORTDOCS%%%%DOCSDIR%%/html/fonts/open-sans-v17-all-charsets-regular.woff2
+%%PORTDOCS%%%%DOCSDIR%%/html/fonts/source-code-pro-v11-all-charsets-500.woff2
+%%PORTDOCS%%%%DOCSDIR%%/html/highlight.css
+%%PORTDOCS%%%%DOCSDIR%%/html/highlight.js
+%%PORTDOCS%%%%DOCSDIR%%/html/images/change-fork-name.png
+%%PORTDOCS%%%%DOCSDIR%%/html/images/cisco.png
+%%PORTDOCS%%%%DOCSDIR%%/html/images/clone-your-fork.png
+%%PORTDOCS%%%%DOCSDIR%%/html/images/create-a-fork.png
+%%PORTDOCS%%%%DOCSDIR%%/html/images/demon.png
+%%PORTDOCS%%%%DOCSDIR%%/html/images/flamegraph.svg
+%%PORTDOCS%%%%DOCSDIR%%/html/images/fork-is-behind.png
+%%PORTDOCS%%%%DOCSDIR%%/html/images/logo.png
+%%PORTDOCS%%%%DOCSDIR%%/html/images/new-git-workflow.png
+%%PORTDOCS%%%%DOCSDIR%%/html/images/old-git-workflow.png
+%%PORTDOCS%%%%DOCSDIR%%/html/index.html
+%%PORTDOCS%%%%DOCSDIR%%/html/manual/Development.html
+%%PORTDOCS%%%%DOCSDIR%%/html/manual/Development/Contribute.html
+%%PORTDOCS%%%%DOCSDIR%%/html/manual/Development/build-installer-packages.html
+%%PORTDOCS%%%%DOCSDIR%%/html/manual/Development/clamav-git-work-flow.html
+%%PORTDOCS%%%%DOCSDIR%%/html/manual/Development/code-coverage.html
+%%PORTDOCS%%%%DOCSDIR%%/html/manual/Development/development-builds.html
+%%PORTDOCS%%%%DOCSDIR%%/html/manual/Development/fuzzing-sanitizers.html
+%%PORTDOCS%%%%DOCSDIR%%/html/manual/Development/github-pr-basics.html
+%%PORTDOCS%%%%DOCSDIR%%/html/manual/Development/libclamav.html
+%%PORTDOCS%%%%DOCSDIR%%/html/manual/Development/performance-profiling.html
+%%PORTDOCS%%%%DOCSDIR%%/html/manual/Development/personal-forks.html
+%%PORTDOCS%%%%DOCSDIR%%/html/manual/Development/testing-pull-requests.html
+%%PORTDOCS%%%%DOCSDIR%%/html/manual/Development/tips-and-tricks.html
+%%PORTDOCS%%%%DOCSDIR%%/html/manual/Installing.html
+%%PORTDOCS%%%%DOCSDIR%%/html/manual/Installing/Add-clamav-user.html
+%%PORTDOCS%%%%DOCSDIR%%/html/manual/Installing/Community-projects.html
+%%PORTDOCS%%%%DOCSDIR%%/html/manual/Installing/Docker.html
+%%PORTDOCS%%%%DOCSDIR%%/html/manual/Installing/Installing-from-source-Unix-old.html
+%%PORTDOCS%%%%DOCSDIR%%/html/manual/Installing/Installing-from-source-Unix.html
+%%PORTDOCS%%%%DOCSDIR%%/html/manual/Installing/Installing-from-source-Windows.html
+%%PORTDOCS%%%%DOCSDIR%%/html/manual/Installing/Packages.html
+%%PORTDOCS%%%%DOCSDIR%%/html/manual/OnAccess.html
+%%PORTDOCS%%%%DOCSDIR%%/html/manual/Signatures.html
+%%PORTDOCS%%%%DOCSDIR%%/html/manual/Signatures/AllowLists.html
+%%PORTDOCS%%%%DOCSDIR%%/html/manual/Signatures/AuthenticodeRules.html
+%%PORTDOCS%%%%DOCSDIR%%/html/manual/Signatures/BodySignatureFormat.html
+%%PORTDOCS%%%%DOCSDIR%%/html/manual/Signatures/BytecodeSignatures.html
+%%PORTDOCS%%%%DOCSDIR%%/html/manual/Signatures/ContainerMetadata.html
+%%PORTDOCS%%%%DOCSDIR%%/html/manual/Signatures/DatabaseInfo.html
+%%PORTDOCS%%%%DOCSDIR%%/html/manual/Signatures/DynamicConfig.html
+%%PORTDOCS%%%%DOCSDIR%%/html/manual/Signatures/EncryptedArchives.html
+%%PORTDOCS%%%%DOCSDIR%%/html/manual/Signatures/ExtendedSignatures.html
+%%PORTDOCS%%%%DOCSDIR%%/html/manual/Signatures/FileTypeMagic.html
+%%PORTDOCS%%%%DOCSDIR%%/html/manual/Signatures/HashSignatures.html
+%%PORTDOCS%%%%DOCSDIR%%/html/manual/Signatures/LogicalSignatures.html
+%%PORTDOCS%%%%DOCSDIR%%/html/manual/Signatures/PhishSigs.html
+%%PORTDOCS%%%%DOCSDIR%%/html/manual/Signatures/YaraRules.html
+%%PORTDOCS%%%%DOCSDIR%%/html/manual/Usage.html
+%%PORTDOCS%%%%DOCSDIR%%/html/manual/Usage/Configuration.html
+%%PORTDOCS%%%%DOCSDIR%%/html/manual/Usage/ReportABug.html
+%%PORTDOCS%%%%DOCSDIR%%/html/manual/Usage/Scanning.html
+%%PORTDOCS%%%%DOCSDIR%%/html/manual/Usage/Services.html
+%%PORTDOCS%%%%DOCSDIR%%/html/manual/Usage/SignatureManagement.html
+%%PORTDOCS%%%%DOCSDIR%%/html/mark.min.js
+%%PORTDOCS%%%%DOCSDIR%%/html/mode-rust.js
+%%PORTDOCS%%%%DOCSDIR%%/html/print.html
+%%PORTDOCS%%%%DOCSDIR%%/html/searcher.js
+%%PORTDOCS%%%%DOCSDIR%%/html/searchindex.js
+%%PORTDOCS%%%%DOCSDIR%%/html/searchindex.json
+%%PORTDOCS%%%%DOCSDIR%%/html/theme-dawn.js
+%%PORTDOCS%%%%DOCSDIR%%/html/theme-tomorrow_night.js
+%%PORTDOCS%%%%DOCSDIR%%/html/tomorrow-night.css
 %%MILTER%%sbin/clamav-milter
 sbin/clamd
 @sample etc/clamd.conf.sample



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?202110292252.19TMqjHT023408>