Compare commits
1 Commits
| Author | SHA256 | Date | |
|---|---|---|---|
| e6b70b740d |
BIN
clamav-1.4.3.tar.gz
LFS
BIN
clamav-1.4.3.tar.gz
LFS
Binary file not shown.
@@ -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
BIN
clamav-1.5.1.tar.gz
LFS
Normal file
Binary file not shown.
16
clamav-1.5.1.tar.gz.sig
Normal file
16
clamav-1.5.1.tar.gz.sig
Normal 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-----
|
||||
@@ -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
|
||||
|
||||
@@ -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;
|
||||
}
|
||||
|
||||
@@ -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
|
||||
@@ -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
136
clamav-workaround.patch
Normal 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;
|
||||
}
|
||||
@@ -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>
|
||||
|
||||
|
||||
119
clamav.spec
119
clamav.spec
@@ -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
|
||||
|
||||
BIN
json-c-json-c-0.18-20240915.tar.gz
LFS
Normal file
BIN
json-c-json-c-0.18-20240915.tar.gz
LFS
Normal file
Binary file not shown.
Reference in New Issue
Block a user