Compare commits

1 Commits
main ... 1.1

12 changed files with 333 additions and 90 deletions

Binary file not shown.

View File

@@ -1,16 +0,0 @@
-----BEGIN PGP SIGNATURE-----
iQIcBAABAgAGBQJoUsvRAAoJEHB/DbSAg2dxNuoQAMrw86PFXjfnQi4FwUvIjnxj
A7NlsmazuzA2rWvf1jJ0ngMomZNydFfN6kYGNKLVKk7KVFm8VajhAdJs89/SGazy
CzM9VPz1KoiIXnwo5OL4SgUROQYA+pJ2f3JdQ48SLob+AW291GcmSFN2uEdOkF9X
EO4znWphfzTiTGW6nd8C7tbrbRDxATeEx+TPUdHSLRzbp+9xO5D0b46hjtOorbCi
Op1k02S6BbG9LcymY+7xFjCUpxWSX/XsbJ+WCczIoUNHphql5PLIXLFoYL71kM0n
wZu6ns5Hi1v4U6mui5aIDlRoEMu+k0odWPC6c21n5dAsf/iREjtElO9cc9Sg9srN
Ay0NMtA9tSmSyQBD0ryP/bXt/8hTs5piw/3LfQOVRHBn+e6CH8knwLhTgRJyyeFh
wk4UtYVkbnCB6V7CX16sw2PnGdr+nztUhPQoj1TrPQ9rN6YmUk5nP+ri/hzCJdR0
kb+19n+oLjx9N2u0ZIX57zvZmm3slAMoyCm7Sn3FsYUBsEg1IoSeODPyqUvFHTgW
Z2O0h4WGJx+GUf82JETNlq/5MU7g5UxXq+SSMxbPgavt4C74YlhMf9jzttifdIwz
hKlg49bkiiWblWybjFna2AdMXD1524pYmvp+ffY/m0NhkN/+1z+7p512yEUPfKYZ
yOY5vXZHbKvBxJpuOFl8
=Sx56
-----END PGP SIGNATURE-----

BIN
clamav-1.5.1.tar.gz LFS Normal file

Binary file not shown.

16
clamav-1.5.1.tar.gz.sig Normal file
View File

@@ -0,0 +1,16 @@
-----BEGIN PGP SIGNATURE-----
iQIcBAABAgAGBQJo8DJxAAoJEHB/DbSAg2dx66YQAKIAD0BtNVLZz58NqYt6+h5k
GZHU/N8hWjrM9MSkZi1MqRG4+hRZh0HRRqp1W3D9pHTWaDMN7eCYX2UTRk94UDyh
c2GXKVj+2GSESHbKbAJ7VVVep+IAOoRWHkamqBtQxMruj2DcoMp+HJ+w23eQ1irI
P6MOQPf2ubvz7fw/E/50G2yzw36vnX0HHqhkqeQGdDQfzFjX512ZNfBK/64qmAqC
We8huMMfYYqdUzgs6XTT1DmRJXMJpuDZf7ExnnStnmRo/HBwoJdGuG2MSnlUQu9j
RXZvUETtxpT0JrVFNJpgp1B4n3qGbZFzm1C26phuULkQifLqUg9ubpjjBeljgVVW
j4uqK8LHwHHO33YqIVsayPVWE3feCMlFkSTOWkXxvabD3UTmMuMSm/VfKULxXD37
EHPlDEIOOdLD6slE9Az7tUkZyyJyBNhjse0DBnF/wmnMVyPiArTTShsDBf/980Pa
eiZHixmifDAvJDKkTmXtjrFEGpbdKLwUP2Uf2RYdrc6JD+ytYdelWr0+8Iip3keg
YOd0O+p+xBwnY45ZKMjxnjuFhyUfP7/0EF4S4VVtQxGZDlTSe9ihsXC8Qu6x8p7N
QyO08Gzzj8P9on6YFzcN0D/+TnODQxNOW9x5IH53tFN8j2ylnaIv+iiKYDtd7WKY
XUPL9+z4EW4Pd6ifqjgr
=pSyl
-----END PGP SIGNATURE-----

View File

@@ -105,7 +105,7 @@
# Optional path to the global temporary directory.
# Default: system specific (usually /tmp or /var/tmp).
@@ -98,7 +94,7 @@ Example
@@ -109,7 +105,7 @@ Example
# Path to a local socket file the daemon will listen on.
# Default: disabled (must be specified by a user)
@@ -114,7 +114,7 @@
#LocalSocket /tmp/clamd.sock
# Sets the group ownership on the unix socket.
@@ -230,7 +226,7 @@ Example
@@ -266,7 +262,7 @@ Example
# Run as another user (clamd must be started by root for this option to work)
# Default: don't drop privileges
@@ -123,7 +123,7 @@
# Stop daemon when libclamav reports out of memory condition.
#ExitOnOOM yes
@@ -727,7 +723,7 @@ Example
@@ -781,7 +777,7 @@ Example
# multiple OnAccessIncludePath directives but each directory must be added
# in a separate line.
# Default: disabled
@@ -132,7 +132,7 @@
#OnAccessIncludePath /students
# Set the exclude paths. All subdirectories are also excluded.
@@ -797,7 +793,7 @@ Example
@@ -851,7 +847,7 @@ Example
# It has the same potential race condition limitations of the
# OnAccessExcludeUID option.
# Default: disabled
@@ -157,7 +157,7 @@
# Path to the database directory.
# WARNING: It must match clamd.conf's directive!
# WARNING: It must already exist, be an absolute path, be writeable by
@@ -54,12 +50,12 @@ Example
@@ -68,12 +64,12 @@ Example
# It is recommended that the directory where this file is stored is
# also owned by root to keep other users from tampering with it.
# Default: disabled
@@ -172,7 +172,7 @@
# Use DNS to verify virus database version. FreshClam uses DNS TXT records
# to verify database and software versions. With this directive you can change
@@ -150,7 +146,7 @@ DatabaseMirror database.clamav.net
@@ -164,7 +160,7 @@ DatabaseMirror database.clamav.net
# Send the RELOAD command to clamd.
# Default: no

View File

@@ -1,12 +0,0 @@
--- libclamav/crypto.c.orig
+++ libclamav/crypto.c
@@ -145,6 +145,9 @@ int cl_initialize_crypto(void)
ERR_load_crypto_strings();
#endif
+ /* avoid fips issues */
+ EVP_add_digest(EVP_md5());
+
return 0;
}

View File

@@ -1,10 +0,0 @@
--- unit_tests/freshclam_test.py.orig
+++ unit_tests/freshclam_test.py
@@ -50,6 +50,7 @@ class TC(testcase.TestCase):
def tearDown(self):
if TC.mock_mirror != None:
TC.mock_mirror.terminate()
+ TC.mock_mirror.join()
TC.mock_mirror = None
# Clear the database directory

View File

@@ -1,6 +1,6 @@
--- common/optparser.c.orig
+++ common/optparser.c
@@ -602,6 +602,13 @@ const struct clam_option __clam_options[
@@ -637,6 +637,13 @@ const struct clam_option __clam_options[
{"MailFollowURLs", "mail-follow-urls", 0, CLOPT_TYPE_BOOL, MATCH_BOOL, -1, NULL, 0, OPT_CLAMD | OPT_CLAMSCAN | OPT_DEPRECATED, "", ""},
{"AllowSupplementaryGroups", NULL, 0, CLOPT_TYPE_BOOL, MATCH_BOOL, 0, NULL, 0, OPT_CLAMD | OPT_FRESHCLAM | OPT_MILTER | OPT_DEPRECATED, "Initialize a supplementary group access (the process must be started by root).", "no"},
{"ScanOnAccess", NULL, 0, CLOPT_TYPE_BOOL, MATCH_BOOL, -1, NULL, 0, OPT_CLAMD | OPT_DEPRECATED, "", ""},

136
clamav-workaround.patch Normal file
View File

@@ -0,0 +1,136 @@
--- libclamav/clamav.h.orig
+++ libclamav/clamav.h
@@ -22,6 +22,15 @@
#ifndef __CLAMAV_H
#define __CLAMAV_H
+/*
+ * This workaround can be removed once the SONAME version of libclamav
+ * gets bumped beyond 12.
+ */
+#define WA(VER, RET, SYM) __attribute__ (( \
+ __symver__ (#SYM "@@CLAMAV_PUBLIC"), \
+ __symver__ (#SYM "@CLAMAV_" VER))) \
+ RET wa_ ## SYM
+
#ifdef _WIN32
#ifndef OWN_WINSOCK
#include <winsock2.h>
--- libclamav/cvd.c.orig
+++ libclamav/cvd.c
@@ -416,7 +416,7 @@ cl_error_t cl_cvdverify(const char *file
return cl_cvdverify_ex(file, NULL, 0);
}
-cl_error_t cl_cvdverify_ex(const char *file, const char *certs_directory, uint32_t dboptions)
+WA("1.5.0", cl_error_t, cl_cvdverify_ex)(const char *file, const char *certs_directory, uint32_t dboptions)
{
struct cl_engine *engine = NULL;
cl_error_t ret;
@@ -749,7 +749,7 @@ done:
return status;
}
-cl_error_t cl_cvdunpack_ex(const char *file, const char *dir, const char *certs_directory, uint32_t dboptions)
+WA("1.5.0", cl_error_t, cl_cvdunpack_ex)(const char *file, const char *dir, const char *certs_directory, uint32_t dboptions)
{
cl_error_t status = CL_SUCCESS;
cvd_t *cvd = NULL;
@@ -823,7 +823,7 @@ done:
return status;
}
-cl_error_t cl_cvdunpack(const char *file, const char *dir, bool dont_verify)
+WA("1.0.0", cl_error_t, cl_cvdunpack)(const char *file, const char *dir, bool dont_verify)
{
cl_error_t status = CL_SUCCESS;
cvd_t *cvd = NULL;
@@ -914,7 +914,7 @@ done:
return status;
}
-cl_error_t cl_cvdgetage(const char *path, time_t *age_seconds)
+WA("1.1.0", cl_error_t, cl_cvdgetage)(const char *path, time_t *age_seconds)
{
STATBUF statbuf;
struct dirent *dent;
--- libclamav/libclamav.map.orig
+++ libclamav/libclamav.map
@@ -91,6 +91,34 @@ CLAMAV_PUBLIC {
cl_scan_layer_get_attributes;
cl_engine_set_scan_callback;
};
+
+# This block can be removed once the SONAME version of libclamav
+# gets bumped beyond 12...
+#
+CLAMAV_0.104.0 {
+# local:
+# wa_cl_engine_set_clcb_engine_compile_progress;
+# wa_cl_engine_set_clcb_engine_free_progress;
+# wa_cl_engine_set_clcb_sigload_progress;
+} CLAMAV_PUBLIC;
+CLAMAV_1.0.0 {
+# local:
+# wa_cl_cvdunpack;
+# wa_cl_engine_set_clcb_file_inspection;
+} CLAMAV_0.104.0;
+CLAMAV_1.1.0 {
+# local:
+# wa_cl_cvdgetage;
+# wa_cl_engine_set_clcb_vba;
+} CLAMAV_1.0.0;
+CLAMAV_1.5.0 {
+# local:
+# wa_cl_cvdunpack_ex;
+# wa_cl_cvdverify_ex;
+} CLAMAV_1.1.0;
+#
+# ... up to here
+
CLAMAV_PRIVATE {
global:
cli_sigperf_print;
--- libclamav/others.c.orig
+++ libclamav/others.c
@@ -2767,7 +2767,7 @@ void cl_engine_set_clcb_pre_cache(struct
engine->cb_pre_cache = callback;
}
-void cl_engine_set_clcb_file_inspection(struct cl_engine *engine, clcb_file_inspection callback)
+WA("1.0.0", void, cl_engine_set_clcb_file_inspection)(struct cl_engine *engine, clcb_file_inspection callback)
{
engine->cb_file_inspection = callback;
}
@@ -2793,19 +2793,19 @@ void cl_engine_set_clcb_sigload(struct c
engine->cb_sigload_ctx = callback ? context : NULL;
}
-void cl_engine_set_clcb_sigload_progress(struct cl_engine *engine, clcb_progress callback, void *context)
+WA("0.104.0", void, cl_engine_set_clcb_sigload_progress)(struct cl_engine *engine, clcb_progress callback, void *context)
{
engine->cb_sigload_progress = callback;
engine->cb_sigload_progress_ctx = callback ? context : NULL;
}
-void cl_engine_set_clcb_engine_compile_progress(struct cl_engine *engine, clcb_progress callback, void *context)
+WA("0.104.0", void, cl_engine_set_clcb_engine_compile_progress)(struct cl_engine *engine, clcb_progress callback, void *context)
{
engine->cb_engine_compile_progress = callback;
engine->cb_engine_compile_progress_ctx = callback ? context : NULL;
}
-void cl_engine_set_clcb_engine_free_progress(struct cl_engine *engine, clcb_progress callback, void *context)
+WA("0.104.0", void, cl_engine_set_clcb_engine_free_progress)(struct cl_engine *engine, clcb_progress callback, void *context)
{
engine->cb_engine_free_progress = callback;
engine->cb_engine_free_progress_ctx = callback ? context : NULL;
@@ -2826,7 +2826,7 @@ void cl_engine_set_clcb_file_props(struc
engine->cb_file_props = callback;
}
-void cl_engine_set_clcb_vba(struct cl_engine *engine, clcb_generic_data callback)
+WA("1.1.0", void, cl_engine_set_clcb_vba)(struct cl_engine *engine, clcb_generic_data callback)
{
engine->cb_vba = callback;
}

View File

@@ -1,3 +1,94 @@
-------------------------------------------------------------------
Fri Nov 28 12:44:30 UTC 2025 - Reinhard Max <max@suse.com>
- Fix testsuite error on SLE-15-SP6 by falling back to rust1.86.
-------------------------------------------------------------------
Fri Nov 21 15:47:35 UTC 2025 - Reinhard Max <max@suse.com>
- Provide a better fix for boo#1249404 by disabling debug mode.
-------------------------------------------------------------------
Sat Nov 15 03:38:29 UTC 2025 - Bernhard Wiedemann <bwiedemann@suse.com>
- Build with older rust 1.87 for reproducible builds (boo#1249404)
-------------------------------------------------------------------
Tue Nov 4 16:09:50 UTC 2025 - Reinhard Max <max@suse.com>
- Add clamav-workaround.patch to work around symbol removals in
version 1.5.0 and 1.5.1.
-------------------------------------------------------------------
Thu Oct 16 16:12:58 UTC 2025 - Reinhard Max <max@suse.com>
- New version: 1.5.1:
* Fixed a significant performance issue when scanning some PE
files.
* Fixed an issue recording file entries from a ZIP archive
central directory which resulted in
"Heuristics.Limits.Exceeded.MaxFiles" alerts when using the
ClamScan --alert-exceeds-max command line option or ClamD
AlertExceedsMax config file option.
* Improved performance when scanning TNEF email attachments.
* Fixed an issue with recording metadata for OOXML office
documents.
* Fixed an issue with signature matches for VBA in OLE2 office
documents.
* Loosened overly restrictive rules for embedded file
identification and increased the limit for finding PE files
embedded in other PE files.
* Fixed an issue with extracting some RAR archives embedded in
other files.
* Fixed an issue with calculating fuzzy hashes affecting some
images by updating the version for several Rust library
dependencies.
-------------------------------------------------------------------
Tue Oct 14 09:02:43 UTC 2025 - Reinhard Max <max@suse.com>
- Add json-c-json-c-0.18-20240915.tar.gz and link it statically
into libclamav on SLE-12, because version 0.12 is too old.
-------------------------------------------------------------------
Wed Oct 8 08:56:26 UTC 2025 - Reinhard Max <max@suse.com>
- New version 1.5.0:
* Added checks to determine if an OLE2-based Microsoft Office
document is encrypted.
* Added the ability to record URIs found in HTML if the
generate-JSON-metadata feature is enabled.
* Added the ability to record URIs found in PDFs if the
generate-JSON-metadata feature is enabled.
* Added regex support for the clamd.conf OnAccessExcludePath
config option.
* Added CVD signing/verification with external .sign files.
* Freshclam, ClamD, ClamScan, and Sigtool: Added an option to
enable FIPS-like limits disabling MD5 and SHA1 from being used
for verifying digital signatures or for being used to trust a
file when checking for false positives
* ClamD: Added an option to disable select administrative
commands including SHUTDOWN, RELOAD, STATS and VERSION.
* libclamav: Added extended hashing functions with a "flags"
parameter that allows the caller to choose if they want to
bypass FIPS hash algorithm limits.
* See the release announcement for the full list of changes:
https://blog.clamav.net/2025/10/clamav-150-released.html
- Obsoleted patches:
* clamav-freshclam_test.patch
* clamav-disable-administrative-commands.patch
* clamav-fips.patch
- Use macros for library versions
- Remove service symlinks: rcclamd, rcfreshclam, rcclamav-milter,
and clamonacc.
- Use rust 1.86 for SLE-12 and SLE-15-SP2.
-------------------------------------------------------------------
Mon Jun 30 16:13:30 UTC 2025 - Reinhard Max <max@suse.com>
- bsc#1240363, clamav-disable-administrative-commands.patch: clamd:
Add an option to toggle SHUTDOWN, RELOAD, STATS and VERSION.
-------------------------------------------------------------------
Thu Jun 19 20:40:22 UTC 2025 - Arjen de Korte <suse+build@de-korte.org>

View File

@@ -1,7 +1,7 @@
#
# spec file for package clamav
#
# Copyright (c) 2025 SUSE LLC
# Copyright (c) 2025 SUSE LLC and contributors
# Copyright (c) 2024 Andreas Stieger <Andreas.Stieger@gmx.de>
#
# All modifications and additions to the file contributed by third parties
@@ -25,15 +25,26 @@
%endif
%if 0%{?suse_version} <= 1500
%define vgcc 13
%if 0%{?sle_version} < 150400
%define vrust 1.78
%if 0%{?sle_version} <= 150600
%define vrust 1.86
%endif
%if 0%{?suse_version} < 1500
%define vcmake 3
%bcond_without static_jsonc
%else
%bcond_with static_jsonc
%endif
%endif
%global confdir %_prefix%_sysconfdir
%define v_libclamav 12
%define v_libfreshclam 4
%define v_libclammspack 0
%define vjsonc 0.18
%define jsonc json-c-json-c-%vjsonc-20240915
Name: clamav
Version: 1.4.3
Version: 1.5.1
Release: 0
Summary: Antivirus Toolkit
License: GPL-2.0-only
@@ -41,6 +52,7 @@ Group: Productivity/Security
URL: https://www.clamav.net
Source0: https://www.clamav.net/downloads/production/%{name}-%{version}.tar.gz
Source1: https://www.clamav.net/downloads/production/%{name}-%{version}.tar.gz.sig
Source2: %jsonc.tar.gz
Source4: clamav-rpmlintrc
Source6: clamav-tmpfiles.conf
Source7: service.clamd
@@ -52,11 +64,10 @@ Source11: clamav.keyring
Source12: service.clamonacc
Source65: system-user-vscan.conf
Patch1: clamav-conf.patch
Patch2: clamav-freshclam_test.patch
Patch5: clamav-obsolete-config.patch
Patch12: clamav-fips.patch
Patch14: clamav-document-maxsize.patch
Patch15: clamav-format.patch
Patch16: clamav-workaround.patch
ExcludeArch: %{arml}
BuildRequires: cargo%{?vrust}
@@ -65,8 +76,16 @@ BuildRequires: gcc%{?vgcc}
BuildRequires: gcc%{?vgcc}-PIE
BuildRequires: gcc%{?vgcc}-c++
BuildRequires: libbz2-devel
%if %{with static_jsonc}
Provides: bundles(json-c) = %vjsonc
%else
BuildRequires: libjson-c-devel
%endif
%if 0%{?suse_version} < 1500
BuildRequires: libopenssl-1_1-devel
%else
BuildRequires: libopenssl-devel >= 1.0.2
%endif
BuildRequires: libxml2-devel
BuildRequires: make
BuildRequires: rust%{?vrust}
@@ -143,35 +162,35 @@ than one clamd(8) server and seamlessly hot-swap to even the load
between different machines and to keep scanning for viruses even
when a server goes down.
%package -n libclamav12
%package -n libclamav%v_libclamav
Summary: ClamAV antivirus engine runtime
Group: System/Libraries
%description -n libclamav12
%description -n libclamav%v_libclamav
ClamAV is an antivirus engine designed for detecting trojans,
viruses, malware and other malicious threats.
%package -n libfreshclam3
%package -n libfreshclam4
Summary: ClamAV updater library
Group: System/Libraries
%description -n libfreshclam3
%description -n libfreshclam%v_libfreshclam
ClamAV is an antivirus engine designed for detecting trojans,
viruses, malware and other malicious threats.
%package -n libclammspack0
%package -n libclammspack%v_libclammspack
Summary: ClamAV antivirus engine runtime
Group: System/Libraries
%description -n libclammspack0
%description -n libclammspack%v_libclammspack
ClamAV is an antivirus engine designed for detecting trojans,
viruses, malware and other malicious threats.
%package devel
Summary: Development files for libclamav, an antivirus engine
Group: Development/Libraries/C and C++
Requires: libclamav12 = %{version}
Requires: libfreshclam3 = %{version}
Requires: libclamav%v_libclamav = %{version}
Requires: libfreshclam%v_libfreshclam = %{version}
%description devel
ClamAV is an antivirus engine designed for detecting trojans,
@@ -182,12 +201,14 @@ that want to make use of libclamav.
%prep
%setup -q
%if %{with static_jsonc}
%setup -D -T -b 2 -q
%endif
%patch -P 1
%patch -P 2
%patch -P 5
%patch -P 12
%patch -P 14
%patch -P 15
%patch -P 16
chmod -x docs/html/images/flamegraph.svg
%build
@@ -195,12 +216,26 @@ chmod -x docs/html/images/flamegraph.svg
# Create vscan user
%sysusers_generate_pre %{SOURCE65} vscan
%endif
%if %{with static_jsonc}
pushd ../%jsonc
cmake . \
%if "%{?vgcc}" != ""
-DCMAKE_C_COMPILER=gcc-%{vgcc} \
-DCMAKE_CXX_COMPILER=g++-%{vgcc} \
%endif
-DCMAKE_BUILD_TYPE=None \
-DCMAKE_POLICY_VERSION_MINIMUM=3.5 \
-DBUILD_SHARED_LIBS=OFF
make
popd
%endif
%cmake \
%if "%{?vgcc}" != ""
-DCMAKE_C_COMPILER=gcc-%{vgcc} \
-DCMAKE_CXX_COMPILER=g++-%{vgcc} \
%endif
-DCMAKE_BUILD_TYPE=DEBUG \
-DCLAMAV_USER=vscan \
-DCLAMAV_GROUP=vscan \
-DCMAKE_INSTALL_DOCDIR:PATH=%{_docdir}/%name \
@@ -211,8 +246,15 @@ chmod -x docs/html/images/flamegraph.svg
-DSYSTEMD_UNIT_DIR=%{_unitdir} \
-DPCRE2_LIBRARY=%{_libdir}/libpcre2-8.so \
%if %{without clammspack}
-DENABLE_EXTERNAL_MSPACK=ON
-DENABLE_EXTERNAL_MSPACK=ON \
%endif
%if %{with static_jsonc}
-DENABLE_JSON_SHARED=OFF \
-DJSONC_INCLUDE_DIR=../../%jsonc \
-DJSONC_LIBRARY=../../%jsonc/libjson-c.a
%endif
%cmake_build
%install
@@ -238,9 +280,6 @@ install -m 0644 %SOURCE8 %{buildroot}%{_unitdir}/freshclam.service
install -m 0644 %SOURCE9 %{buildroot}%{_unitdir}/clamav-milter.service
install -m 0644 %SOURCE10 %{buildroot}%{_unitdir}/freshclam.timer
install -m 0644 %SOURCE12 %{buildroot}%{_unitdir}/clamonacc.service
for srvname in clamd freshclam clamav-milter clamonacc; do
(export PATH=%_prefix/sbin:/sbin:$PATH ;ln -sf service %{buildroot}/%{_sbindir}/rc${srvname})
done
%check
# regression tests
@@ -287,19 +326,19 @@ fi
%service_del_postun clamav-milter.service
%if 0%{?suse_version} > 1500
%ldconfig_scriptlets -n libclamav12
%ldconfig_scriptlets -n libfreshclam3
%ldconfig_scriptlets -n libclamav%v_libclamav
%ldconfig_scriptlets -n libfreshclam%v_libfreshclam
%if %{with clammspack}
%ldconfig_scriptlets -n libclammspack0
%ldconfig_scriptlets -n libclammspack%v_libclammspack
%endif
%else
%post -n libclamav12 -p /sbin/ldconfig
%postun -n libclamav12 -p /sbin/ldconfig
%post -n libfreshclam3 -p /sbin/ldconfig
%postun -n libfreshclam3 -p /sbin/ldconfig
%post -n libclamav%v_libclamav -p /sbin/ldconfig
%postun -n libclamav%v_libclamav -p /sbin/ldconfig
%post -n libfreshclam%v_libfreshclam -p /sbin/ldconfig
%postun -n libfreshclam%v_libfreshclam -p /sbin/ldconfig
%if %{with clammspack}
%post -n libclammspack0 -p /sbin/ldconfig
%postun -n libclammspack0 -p /sbin/ldconfig
%post -n libclammspack%v_libclammspack -p /sbin/ldconfig
%postun -n libclammspack%v_libclammspack -p /sbin/ldconfig
%endif
%endif
@@ -307,6 +346,7 @@ fi
%license COPYING.txt COPYING/*
%config(noreplace) %{_sysconfdir}/clamd.conf
%config(noreplace) %{_sysconfdir}/freshclam.conf
%{_sysconfdir}/certs
%{_bindir}/clamav-config
%{_bindir}/clambc
%{_bindir}/clamconf
@@ -318,9 +358,6 @@ fi
%{_bindir}/sigtool
%{_sbindir}/clamd
%{_sbindir}/clamonacc
%{_sbindir}/rcclamd
%{_sbindir}/rcfreshclam
%{_sbindir}/rcclamonacc
%{_mandir}/man1/clambc.1%{?ext_man}
%{_mandir}/man1/clamconf.1%{?ext_man}
%{_mandir}/man1/clamdscan.1%{?ext_man}
@@ -352,26 +389,24 @@ fi
%config(noreplace) %{_sysconfdir}/clamav-milter.conf
%{_unitdir}/clamav-milter.service
%{_sbindir}/clamav-milter
%{_sbindir}/rcclamav-milter
%{_mandir}/man5/clamav-milter.conf.5%{?ext_man}
%{_mandir}/man8/clamav-milter.8%{?ext_man}
%files -n libclamav12
%{_libdir}/libclam*.so.12*
%files -n libclamav%v_libclamav
%{_libdir}/libclam*.so.%{v_libclamav}*
%files -n libfreshclam3
%{_libdir}/libfreshclam.so.3*
%files -n libfreshclam%v_libfreshclam
%{_libdir}/libfreshclam.so.%{v_libfreshclam}*
%if %{with clammspack}
%files -n libclammspack0
%{_libdir}/libclammspack.so.0*
%files -n libclammspack%v_libclammspack
%{_libdir}/libclammspack.so.%{v_libclammspack}*
%endif
%files devel
%{_includedir}/*
%{_libdir}/pkgconfig/*
%{_libdir}/libclam*.so
%{_libdir}/libfreshclam*.so
%{_libdir}/lib*clam*.so
%{_libdir}/libclamav_rust.a
%changelog

Binary file not shown.