## START: Set by rpmautospec ## (rpmautospec version 0.8.4) ## RPMAUTOSPEC: autorelease, autochangelog %define autorelease(e:s:pb:n) %{?-p:0.}%{lua: release_number = 1; base_release_number = tonumber(rpm.expand("%{?-b*}%{!?-b:1}")); print(release_number + base_release_number - 1); }%{?-e:.%{-e*}}%{?-s:.%{-s*}}%{!?-n:%{?dist}} ## END: Set by rpmautospec %global _hardened_build 1 ## Fedora COPR package %bcond_without clamonacc # Failing with llvm 14 https://github.com/Cisco-Talos/clamav/issues/581 %bcond_with llvm %global scanuser clamscan %global updateuser clamupdate %global milteruser clamilt %global homedir %{_var}/lib/clamav %global quarantinedir %{_var}/spool/quarantine %global forgeurl https://github.com/Cisco-Talos/clamav Summary: End-user tools for the Clam Antivirus scanner Name: clamav Version: 1.5.4 %global tag clamav-%{version} %if 0%{?buildtag:1} %forgemeta %global build_id %(echo '%{buildtag}' | sed 's/^\\.copr//') Release: %autorelease -s %{build_id} %else Release: %autorelease %forgemeta %endif License: GPL-2.0-only URL: https://www.clamav.net/ # Repacked from %%{forgesource}; remove libclamunrar/ and COPYING/COPYING.unrar # BEFORE creating the SRPM. Keep libclamunrar_iface/ (BSD interface headers). # The original upstream archive must not be included in the SRPM. Source0: %{name}-clamav-%{version}-norar.tar.zst # Multilib headers Source1: clamav-types.h Source3: clamd.logrotate Source5: clamd-README # To download the *.cvd, go to https://www.clamav.net and use the links # there (I renamed the files to add the -version suffix for verifying). # Check the first line of the file for version or run file *cvd # Attention file < 5.33-7 have bugs see https://bugzilla.redhat.com/show_bug.cgi?id=1539107 #http://database.clamav.net/main.cvd Source10: main-63.cvd #http://database.clamav.net/daily.cvd Source11: daily-28088.cvd #http://database.clamav.net/bytecode.cvd Source12: bytecode-339.cvd # Git dependency required by the Rust signature utility bindings. Source13: https://github.com/Cisco-Talos/clamav-signature-util/archive/refs/tags/1.2.4.tar.gz # Crates required by clam-sigutil but not packaged for Fedora 45. Source14: https://crates.io/api/v1/crates/change-case/0.2.0/download#/change-case-0.2.0.crate Source15: https://crates.io/api/v1/crates/enum-variants-strings/0.3.0/download#/enum-variants-strings-0.3.0.crate Source16: https://crates.io/api/v1/crates/flexi_logger/0.30.1/download#/flexi_logger-0.30.1.crate Source17: https://crates.io/api/v1/crates/enum-variants-strings-derive/0.3.0/download#/enum-variants-strings-derive-0.3.0.crate Source18: https://crates.io/api/v1/crates/either_n/0.2.0/download#/either_n-0.2.0.crate Source19: https://crates.io/api/v1/crates/string-cases/0.2.0/download#/string-cases-0.2.0.crate Source20: https://crates.io/api/v1/crates/fancy-regex/0.3.5/download#/fancy-regex-0.3.5.crate Source21: https://crates.io/api/v1/crates/bit-set/0.5.3/download#/bit-set-0.5.3.crate Source22: https://crates.io/api/v1/crates/bit-vec/0.6.3/download#/bit-vec-0.6.3.crate Source300: README.fedora.md Source330: clamav-milter.systemd Source530: clamd@.service # Fedora configuration defaults Patch1: clamav-default_confs.patch # Fix pkg-config flags for static linking, multilib Patch2: clamav-private.patch # Adjust clamav-clamonacc.service for Fedora Patch5: clamav-clamonacc-service.patch # Allow freshclam service to run if cron.d file is present Patch6: clamav-freshclam.service.patch # - Update the image crate dependency to 0.25, the current release, # https://github.com/Cisco-Talos/clamav/pull/1366/commits/24d1341e8e34aa325ac03718121e33a3b4e5b75e, # - Allow version 1.0 of the hex-literal crate dependency; not suitable for # upstream yet due to MSRV Patch8: clamav-rust-dependency-versions.patch BuildRequires: cmake BuildRequires: zstd BuildRequires: gettext-devel BuildRequires: make BuildRequires: gcc-c++ BuildRequires: rust BuildRequires: rust-packaging BuildRequires: cargo BuildRequires: cargo-rpm-macros # Dependencies of the bundled derive macro. BuildRequires: (crate(proc-macro2/default) >= 1.0 with crate(proc-macro2/default) < 2.0~) BuildRequires: (crate(quote/default) >= 1.0 with crate(quote/default) < 2.0~) BuildRequires: (crate(syn/default) >= 2.0 with crate(syn/default) < 3.0~) BuildRequires: (crate(syn/full) >= 2.0 with crate(syn/full) < 3.0~) BuildRequires: (crate(syn/extra-traits) >= 2.0 with crate(syn/extra-traits) < 3.0~) BuildRequires: bzip2-devel BuildRequires: check-devel BuildRequires: curl-devel BuildRequires: git-core BuildRequires: gmp-devel BuildRequires: json-c-devel BuildRequires: libxml2-devel BuildRequires: ncurses-devel BuildRequires: openssl3-devel BuildRequires: pcre2-devel BuildRequires: python3 BuildRequires: python3-pytest BuildRequires: python3-cgi BuildRequires: zlib-devel BuildRequires: bc BuildRequires: tcl BuildRequires: groff BuildRequires: graphviz # nc required for tests BuildRequires: nc %{?systemd_requires} BuildRequires: systemd BuildRequires: systemd-devel BuildRequires: systemd-rpm-macros BuildRequires: sendmail-devel %ifarch %{valgrind_arches} BuildRequires: valgrind %endif Requires: clamav-filesystem = %{version}-%{release} Requires: clamav-lib = %{version}-%{release} Requires: data(clamav) %description Clam AntiVirus is an anti-virus toolkit for UNIX. The main purpose of this software is the integration with mail servers (attachment scanning). The package provides a flexible and scalable multi-threaded daemon, a command line scanner, and a tool for automatic updating via Internet. The programs are based on a shared library distributed with the Clam AntiVirus package, which you can use with your own software. The virus database is based on the virus database from OpenAntiVirus, but contains additional signatures (including signatures for popular polymorphic viruses, too) and is KEPT UP TO DATE. %package filesystem Summary: Filesystem structure for clamav # Prevent version mix Conflicts: %{name} < %{version}-%{release} Conflicts: %{name} > %{version}-%{release} BuildArch: noarch %description filesystem This package provides the filesystem structure and contains the user-creation scripts required by clamav. %package lib Summary: Dynamic libraries for the Clam Antivirus scanner Provides: bundled(libmspack) = 0.5-0.1.alpha.modified_by_clamav # These crates are bundled because Fedora 45 does not package them. Provides: bundled(crate(clam-sigutil)) = 1.2.4 Provides: bundled(crate(change-case)) = 0.2.0 Provides: bundled(crate(enum-variants-strings)) = 0.3.0 Provides: bundled(crate(flexi_logger)) = 0.30.1 Provides: bundled(crate(enum-variants-strings-derive)) = 0.3.0 Provides: bundled(crate(either_n)) = 0.2.0 Provides: bundled(crate(string-cases)) = 0.2.0 Provides: bundled(crate(fancy-regex)) = 0.3.5 Provides: bundled(crate(bit-set)) = 0.5.3 Provides: bundled(crate(bit-vec)) = 0.6.3 # LICENSE.dependencies contains a full license breakdown # From the output of %%{cargo_license_summary}: # # 0BSD OR MIT OR Apache-2.0 # Apache-2.0 # Apache-2.0 OR MIT # Apache-2.0 WITH LLVM-exception OR Apache-2.0 OR MIT # BSD-2-Clause # BSD-2-Clause AND ISC # BSD-3-Clause # MIT # MIT OR Apache-2.0 (duplicate) # MIT OR Apache-2.0 OR Zlib # MIT OR Zlib OR Apache-2.0 (duplicate) # Unlicense OR MIT # Zlib OR Apache-2.0 OR MIT (duplicate) License: %{shrink: GPL-2.0-only AND (0BSD OR MIT OR Apache-2.0) AND Apache-2.0 AND (Apache-2.0 OR MIT) AND (Apache-2.0 WITH LLVM-exception OR Apache-2.0 OR MIT) AND BSD-2-Clause AND BSD-3-Clause AND ISC AND MIT AND (MIT OR Zlib OR Apache-2.0) AND (Unlicense OR MIT) AND Zlib } %description lib This package contains dynamic libraries shared between applications using the Clam Antivirus scanner. %package devel Summary: Header files and libraries for the Clam Antivirus scanner Requires: clamav-lib = %{version}-%{release} Requires: clamav-filesystem = %{version}-%{release} Requires: openssl3-devel %description devel This package contains headerfiles and libraries which are needed to build applications using clamav. %package data Summary: Virus signature data for the Clam Antivirus scanner Requires: clamav-filesystem = %{version}-%{release} # Validate database pairs after all transaction packages are installed. Requires(posttrans): %{_bindir}/sigtool Provides: data(clamav) = full Provides: clamav-db = %{version}-%{release} Obsoletes: clamav-db < %{version}-%{release} BuildArch: noarch %description data This package contains the virus-database needed by clamav. This database should be updated regularly; the 'clamav-update' package ships a corresponding cron-job. Use this package when you want a working (but perhaps outdated) virus scanner immediately after package installation. %package doc Summary: Documentation for the Clam Antivirus scanner Requires: clamav-filesystem = %{version}-%{release} BuildArch: noarch %description doc This package contains installation and container deployment guides for ClamAV. The HTML user manual is available at https://docs.clamav.net/. %package freshclam Summary: Auto-updater for the Clam Antivirus scanner data-files Requires: clamav-filesystem = %{version}-%{release} Requires: clamav-lib = %{version}-%{release} Supplements: clamd Provides: data(clamav) = empty Provides: clamav-data-empty = %{version}-%{release} Obsoletes: clamav-data-empty < %{version}-%{release} Provides: clamav-update = %{version}-%{release} Obsoletes: clamav-update < %{version}-%{release} %description freshclam This package contains the freshclam(1) program and clamav-freshclam service which can be used to update the clamav anti-virus database automatically. Most users should install this package in order to keep their definitions up to date. %package -n clamd Summary: The Clam AntiVirus Daemon Requires: data(clamav) Requires: clamav-filesystem = %{version}-%{release} Requires: clamav-lib = %{version}-%{release} Requires: coreutils # This is still used by clamsmtp and exim-clamav Provides: clamav-server = %{version}-%{release} Provides: clamav-scanner-systemd = %{version}-%{release} Provides: clamav-server-systemd = %{version}-%{release} Obsoletes: clamav-scanner-systemd < %{version}-%{release} Obsoletes: clamav-server-systemd < %{version}-%{release} %description -n clamd The Clam AntiVirus Daemon See the README file how this can be done with a minimum of effort. This package contains a generic system wide clamd service which is e.g. used by the clamav-milter package. %package milter Summary: Milter module for the Clam Antivirus scanner # clamav-milter could work without clamd and without sendmail #Requires: clamd = %%{version}-%%{release} #Requires: /usr/sbin/sendmail Requires: clamav-filesystem = %{version}-%{release} Provides: clamav-milter-systemd = %{version}-%{release} Obsoletes: clamav-milter-systemd < %{version}-%{release} Requires: group(clamscan) %description milter This package contains files which are needed to run the clamav-milter. %prep %forgesetup # Refuse an accidentally unsanitized source archive. test ! -e libclamunrar test ! -e COPYING/COPYING.unrar %cargo_prep # Cargo is offline in COPR, so stage the pinned Git dependency locally. mkdir -p vendor/clamav-signature-util tar -xzf %{SOURCE13} --strip-components=1 -C vendor/clamav-signature-util mkdir -p vendor/change-case vendor/enum-variants-strings vendor/flexi_logger tar -xzf %{SOURCE14} --strip-components=1 -C vendor/change-case tar -xzf %{SOURCE15} --strip-components=1 -C vendor/enum-variants-strings tar -xzf %{SOURCE16} --strip-components=1 -C vendor/flexi_logger mkdir -p vendor/enum-variants-strings-derive tar -xzf %{SOURCE17} --strip-components=1 -C vendor/enum-variants-strings-derive mkdir -p vendor/either_n tar -xzf %{SOURCE18} --strip-components=1 -C vendor/either_n mkdir -p vendor/string-cases tar -xzf %{SOURCE19} --strip-components=1 -C vendor/string-cases mkdir -p vendor/fancy-regex tar -xzf %{SOURCE20} --strip-components=1 -C vendor/fancy-regex mkdir -p vendor/bit-set tar -xzf %{SOURCE21} --strip-components=1 -C vendor/bit-set mkdir -p vendor/bit-vec tar -xzf %{SOURCE22} --strip-components=1 -C vendor/bit-vec # Allow dependency metadata queries from each bundled crate directory. sed -i '/^\[workspace\]$/a exclude = ["vendor/clamav-signature-util", "vendor/change-case", "vendor/enum-variants-strings", "vendor/flexi_logger", "vendor/enum-variants-strings-derive", "vendor/either_n", "vendor/string-cases", "vendor/fancy-regex", "vendor/bit-set", "vendor/bit-vec"]' Cargo.toml cat >> Cargo.toml <<'EOF' [patch.crates-io] change-case = { path = "vendor/change-case" } enum-variants-strings = { path = "vendor/enum-variants-strings" } flexi_logger = { path = "vendor/flexi_logger" } enum-variants-strings-derive = { path = "vendor/enum-variants-strings-derive" } either_n = { path = "vendor/either_n" } string-cases = { path = "vendor/string-cases" } fancy-regex = { path = "vendor/fancy-regex" } bit-set = { path = "vendor/bit-set" } bit-vec = { path = "vendor/bit-vec" } EOF cd libclamav_rust sed -i -e '/^base64 *=/s/= .*/= "0.22"/' Cargo.toml sed -i -e '/^bindgen *=/s/= .*/= "0.72"/' Cargo.toml sed -i -e '/^cbindgen *=/s/= *".*"/= "0.26"/' Cargo.toml sed -i -e '/^onenote_parser *=/s/= *.*/= "0.3.1"/' Cargo.toml sed -i -e '/^clam-sigutil *=/c\clam-sigutil = { path = "../vendor/clamav-signature-util" }' Cargo.toml %cargo_prep cd .. %patch -P1 -p1 -b .default_confs %patch -P2 -p1 -b .private %patch -P5 -p1 -b .clamonacc-service %patch -P6 -p1 -b .freshclam-service %patch -P8 -p1 -b .rust-dependencies install -p -m0644 %{SOURCE300} clamav-milter/ # Create sysusers.d config files cat >clamav.sysusers.conf <clamd.sysusers.conf <clamav-milter.sysusers.conf < ../LICENSES.dependencies %install rm -rf _doc* %cmake_install install -d -m 0755 \ %{buildroot}%{_tmpfilesdir} \ %{buildroot}%{homedir} \ %{buildroot}%{quarantinedir} ### data install -D -m 0644 -p %{SOURCE10} %{buildroot}%{homedir}/main.cvd install -D -m 0644 -p %{SOURCE11} %{buildroot}%{homedir}/daily.cvd install -D -m 0644 -p %{SOURCE12} %{buildroot}%{homedir}/bytecode.cvd ### The freshclam stuff sed -ri \ -e 's!^Example!#Example!' \ -e 's!^#?(UpdateLogFile )!#\1!g;' \ -e 's!(DatabaseOwner *)clamav$!\1%{updateuser}!g' %{buildroot}%{_sysconfdir}/freshclam.conf.sample mv %{buildroot}%{_sysconfdir}/freshclam.conf{.sample,} # Can contain HTTPProxyPassword (bugz#1733112) chmod 600 %{buildroot}%{_sysconfdir}/freshclam.conf ### The scanner stuff install -D -m 0644 -p %{SOURCE3} _doc_server/clamd.logrotate install -D -m 0644 -p %{SOURCE5} _doc_server/README ## For compatibility with 0.102.2-7 ln -s clamav-clamonacc.service %{buildroot}%{_unitdir}/clamonacc.service install -D -p -m 0644 %{SOURCE530} %{buildroot}%{_unitdir}/clamd@.service sed -ri \ -e 's!^Example!#Example!' \ -e 's!^#?(LogFile ).*!#\1/var/log/clamd.!g' \ -e 's!^#?(LocalSocket ).*!#\1%{_rundir}/clamd./clamd.sock!g' \ -e 's!^(#?PidFile ).*!\1%{_rundir}/clamd./clamd.pid!g' \ -e 's!^#?(User ).*!\1!g' \ -e 's!^#?(AllowSupplementaryGroups|LogSyslog).*!\1 yes!g' \ -e 's! /usr/local/share/clamav,! %{homedir},!g' \ %{buildroot}%{_sysconfdir}/clamd.conf.sample install -d -m 0755 %{buildroot}%{_sysconfdir}/clamd.d sed -e 's!!scan!g;s!!%{scanuser}!g' \ %{buildroot}%{_sysconfdir}/clamd.conf.sample > %{buildroot}%{_sysconfdir}/clamd.d/scan.conf mv %{buildroot}%{_sysconfdir}/clamd.conf.sample _doc_server/clamd.conf cat << EOF > %{buildroot}%{_tmpfilesdir}/clamd.scan.conf d %{_rundir}/clamd.scan 0710 %{scanuser} virusgroup EOF ### The milter stuff sed -ri \ -e 's!^#?(User).*!\1 %{milteruser}!g' \ -e 's!^#?(AllowSupplementaryGroups|LogSyslog) .*!\1 yes!g' \ -e 's! /tmp/clamav-milter.socket! %{_rundir}/clamav-milter/clamav-milter.socket!g' \ -e 's! /var/run/clamav-milter.pid! %{_rundir}/clamav-milter/clamav-milter.pid!g' \ -e 's!:/var/run/clamd/clamd.socket!:%{_rundir}/clamd.scan/clamd.sock!g' \ -e 's! /tmp/clamav-milter.log! %{_var}/log/clamav-milter.log!g' \ %{buildroot}%{_sysconfdir}/clamav-milter.conf.sample install -d -m 0755 %{buildroot}%{_sysconfdir}/mail mv %{buildroot}%{_sysconfdir}/clamav-milter.conf.sample %{buildroot}%{_sysconfdir}/mail/clamav-milter.conf install -D -p -m 0644 %{SOURCE330} %{buildroot}%{_unitdir}/clamav-milter.service cat << EOF > %{buildroot}%{_tmpfilesdir}/clamav-milter.conf d %{_rundir}/clamav-milter 0710 %{milteruser} %{milteruser} EOF #Fixup headers and scripts for multilib %if 0%{?__isa_bits} == 64 mv %{buildroot}%{_includedir}/clamav-types.h \ %{buildroot}%{_includedir}/clamav-types-64.h %else mv %{buildroot}%{_includedir}/clamav-types.h \ %{buildroot}%{_includedir}/clamav-types-32.h %endif install -m 0644 %SOURCE1 %{buildroot}%{_includedir}/clamav-types.h # TODO: Evaluate using upstream's unit with clamav-daemon.socket rm %{buildroot}%{_unitdir}/clamav-daemon.* install -m0644 -D clamav.sysusers.conf %{buildroot}%{_sysusersdir}/clamav.conf install -m0644 -D clamd.sysusers.conf %{buildroot}%{_sysusersdir}/clamd.conf install -m0644 -D clamav-milter.sysusers.conf %{buildroot}%{_sysusersdir}/clamav-milter.conf %check %ifarch s390x # Tests fail on s390x # https://github.com/Cisco-Talos/clamav/issues/759 %ctest -E valgrind || : %else %ctest -E valgrind %endif %post %systemd_post clamav-clamonacc.service %preun %systemd_preun clamav-clamonacc.service %postun %systemd_postun_with_restart clamav-clamonacc.service %posttrans data # RPM may restore shipped .cvd files beside databases maintained by FreshClam. # Compare verified database versions, not filesystem timestamps. Run after the # transaction so sigtool and its matching libraries have finished installing. database_version() { database_info=$(LC_ALL=C %{_bindir}/sigtool --info "$1" 2>/dev/null) || return 1 while read -r label version extra; do [ "$label" = 'Version:' ] || continue case "$version" in ''|*[!0-9]*) return 1 ;; esac [ -z "$extra" ] && [ "${#version}" -le 10 ] || return 1 printf '%%s\n' "$version" return 0 done <&2 fi done : %post -n clamd # Point to the new service unit [ -L /etc/systemd/system/multi-user.target.wants/clamd@scan.service ] && ln -sf /usr/lib/systemd/system/clamd@.service /etc/systemd/system/multi-user.target.wants/clamd@scan.service || : %systemd_post clamd@scan.service %preun -n clamd %systemd_preun clamd@scan.service %postun -n clamd %systemd_postun_with_restart clamd@scan.service %post milter %systemd_post clamav-milter.service %preun milter %systemd_preun clamav-milter.service %postun milter %systemd_postun_with_restart clamav-milter.service %post freshclam %systemd_post clamav-freshclam.service %preun freshclam %systemd_preun clamav-freshclam.service %postun freshclam %systemd_postun_with_restart clamav-freshclam.service %ldconfig_scriptlets lib %files %license COPYING.txt COPYING %doc NEWS.md README.md %{_bindir}/clambc %{_bindir}/clamconf %{_bindir}/clamdscan %{_bindir}/clamdtop %{_bindir}/clamscan %{_bindir}/clamsubmit %{_bindir}/sigtool %if %{with clamonacc} %{_sbindir}/clamonacc %endif %{_mandir}/man[15]/* %{_mandir}/man8/clamonacc.8* %exclude %{_mandir}/*/freshclam* %exclude %{_mandir}/man5/clamd.conf.5* %{_unitdir}/clamonacc.service %{_unitdir}/clamav-clamonacc.service %attr(0750,root,root) %dir %{quarantinedir} %files lib # Licenses for ClamAV and statically linked Rust dependencies %license COPYING.txt COPYING %license LICENSES.dependencies %{_libdir}/libclamav.so.12* %{_libdir}/libclammspack.so.0* %dir %{_datadir}/clamav %{_datadir}/clamav/certs/ %files devel %{_includedir}/* %{_libdir}/*.so %{_libdir}/libclamav_rust.a %{_libdir}/pkgconfig/* %{_bindir}/clamav-config %files filesystem %attr(-,%{updateuser},%{updateuser}) %dir %{homedir} %dir %{_sysconfdir}/clamd.d # Used by both clamd, clamdscan, and clamonacc %config(noreplace) %{_sysconfdir}/clamd.d/scan.conf %{_sysusersdir}/clamav.conf %files data %defattr(-,%{updateuser},%{updateuser},-) # use %%config to keep files which were updated by 'freshclam' # already. Without this tag, they would be overridden with older # versions whenever a new -data package is installed. %config %verify(not size md5 mtime) %{homedir}/*.cvd %files doc %license COPYING.txt COPYING # The forge archive does not include the generated HTML user manual. %doc INSTALL.md INSTALL-cross-linux-arm64.md INSTALL-cross-windows-arm64.md README.Docker.md %files freshclam %{_bindir}/freshclam %{_libdir}/libfreshclam.so.4* %{_mandir}/*/freshclam* %{_unitdir}/clamav-freshclam.service %{_unitdir}/clamav-freshclam-once.service %{_unitdir}/clamav-freshclam-once.timer %config(noreplace) %verify(not mtime) %{_sysconfdir}/freshclam.conf %ghost %attr(0644,%{updateuser},%{updateuser}) %{homedir}/bytecode.cld %ghost %attr(0644,%{updateuser},%{updateuser}) %{homedir}/bytecode.cvd %ghost %attr(0644,%{updateuser},%{updateuser}) %{homedir}/freshclam.dat %ghost %attr(0644,%{updateuser},%{updateuser}) %{homedir}/daily.cld %ghost %attr(0644,%{updateuser},%{updateuser}) %{homedir}/daily.cvd %ghost %attr(0644,%{updateuser},%{updateuser}) %{homedir}/main.cld %ghost %attr(0644,%{updateuser},%{updateuser}) %{homedir}/main.cvd %files -n clamd %doc _doc_server/* %{_mandir}/man5/clamd.conf.5* %{_mandir}/man8/clamd.8* %{_sbindir}/clamd %{_unitdir}/clamd@.service %{_tmpfilesdir}/clamd.scan.conf %{_sysusersdir}/clamd.conf %files milter %doc clamav-milter/README.fedora.md %{_sbindir}/*milter* %{_unitdir}/clamav-milter.service %{_mandir}/man8/clamav-milter* %dir %{_sysconfdir}/mail %config(noreplace) %{_sysconfdir}/mail/clamav-milter.conf %{_tmpfilesdir}/clamav-milter.conf %{_sysusersdir}/clamav-milter.conf %changelog ## START: Generated by rpmautospec * Fri Nov 06 2026 gbcox - 1.5.4-1 - Uncommitted changes * Thu Sep 10 2026 Zbigniew Jędrzejewski-Szmek - 1.4.6-2 - Rebuilt for libxml-2.5.4 * Mon Aug 10 2026 Gwyn Ciesla - 1.4.6-1 - 1.4.6 * Wed Jul 15 2026 Fedora Release Engineering - 1.4.5-4 - Rebuilt for https://fedoraproject.org/wiki/Fedora_45_Mass_Rebuild * Fri Jul 10 2026 Jerry James - 1.4.5-3 - Remove unused ocaml BuildRequires * Mon Jul 06 2026 Yaakov Selkowitz - 1.4.5-2 - Build with openssl3 on ELN * Thu Jul 02 2026 Gwyn Ciesla - 1.4.5-1 - 1.4.5 * Fri Jun 12 2026 Yaakov Selkowitz - 1.4.4-2 - Rebuilt for openssl 4.0 * Thu Mar 05 2026 Gwyn Ciesla - 1.4.4-1 - 1.4.4 * Thu Jan 29 2026 Fabio Valentini - 1.4.3-7 - Bump rust-bindgen version to 0.72 for compatibility with LLVM 22 * Fri Jan 16 2026 Fedora Release Engineering - 1.4.3-6 - Rebuilt for https://fedoraproject.org/wiki/Fedora_44_Mass_Rebuild * Fri Jan 16 2026 Fedora Release Engineering - 1.4.3-5 - Rebuilt for https://fedoraproject.org/wiki/Fedora_44_Mass_Rebuild * Thu Dec 04 2025 Gwyn Ciesla - 1.4.3-4 - Bump EVR * Thu Dec 04 2025 Benjamin A. Beasley - 1.4.3-3 - Allow hex-literal 1.0 * Wed Jul 23 2025 Fedora Release Engineering - 1.4.3-2 - Rebuilt for https://fedoraproject.org/wiki/Fedora_43_Mass_Rebuild * Wed Jun 18 2025 Gwyn Ciesla - 1.4.3-1 - 1.4.3 * Tue Feb 11 2025 Zbigniew Jędrzejewski-Szmek - 1.4.2-2 - Add sysusers.d config file to allow rpm to create users/groups automatically * Sun Jan 26 2025 Orion Poplawski - 1.4.2-1 - Update to 1.4.2 * Thu Jan 16 2025 Fedora Release Engineering - 1.4.1-2 - Rebuilt for https://fedoraproject.org/wiki/Fedora_42_Mass_Rebuild * Fri Oct 18 2024 Orion Poplawski - 1.4.1-1 - Update to 1.4.1 * Wed Sep 18 2024 Benjamin A. Beasley - 1.0.7-4 - Document licenses of statically linked Rust dependencies * Wed Sep 18 2024 Benjamin A. Beasley - 1.0.7-3 - Update the image crate dependency to 0.25, the current release * Thu Sep 12 2024 Miroslav Suchý - 1.0.7-2 - Migrate to SPDX license * Thu Sep 05 2024 Yaakov Selkowitz - 1.0.7-1 - Update to 1.0.7 * Wed Jul 17 2024 Fedora Release Engineering - 1.0.6-5 - Rebuilt for https://fedoraproject.org/wiki/Fedora_41_Mass_Rebuild * Wed May 29 2024 Sérgio M. Basto - 1.0.6-4 - sync with epel8 * Mon Apr 29 2024 Sérgio M. Basto - 1.0.6-3 - README.fedora.md little better markdown * Fri Apr 26 2024 Orion Poplawski - 1.0.6-2 - Add f40 to upddate_clamav.sh * Fri Apr 26 2024 Orion Poplawski - 1.0.6-1 - Update to 1.0.6 * Mon Apr 08 2024 Sérgio M. Basto - 1.0.5-7 - Update clamav-data and README.fedora.md * Sun Apr 07 2024 John Sullivan - 1.0.5-6 - Simplify and update EL7 and EL8 support. * Sat Mar 16 2024 Sérgio M. Basto - 1.0.5-5 - (#1679375) fixes syntax error in /etc/logrotate.d/clamd.exim * Tue Mar 05 2024 Sérgio M. Basto - 1.0.5-4 - RPMAUTOSPEC: unresolvable merge ## END: Generated by rpmautospec