Files
bpfire/lfs/clamav
Matthias Fischer bb25f15cf9 clamav: Update to 1.3.0
For details see:
https://blog.clamav.net/2023/11/clamav-130-122-105-released.html

Excerpts from changelog:

"Major changes

    Added support for extracting and scanning attachments found in
    Microsoft OneNote section files. OneNote parsing will be enabled by
    default, but may be optionally disabled using one of the following
    options:
    a. The clamscan command line option: --scan-onenote=no,
    b. The clamd.conf config option: ScanOneNote no,
    c. The libclamav scan option options.parse &= ~CL_SCAN_PARSE_ONENOTE;,
    d. A signature change to the daily.cfg dynamic configuration (DCONF).

Other improvements

    Fixed issue when building ClamAV on the Haiku (BeOS-like) operating
    system. Patch courtesy of Luca D'Amico

    ClamD: When starting, ClamD will now check if the directory specified
    by TemporaryDirectory in clamd.conf exists. If it doesn't, ClamD will
    print an error message and will exit with exit code 1. Patch courtesy
    of Andrew Kiggins.

    CMake: If configured to build static libraries, CMake will now also
    install the libclamav_rust, libclammspack, libclamunrar_iface, and
    libclamunrar static libraries required by libclamav.
    Note: These libraries are all linked into the clamscan, clamd, sigtool,
    and freshclam programs, which is why they did not need to be installed
    to function. However, these libraries would be required if you wish to
    build some other program that uses the libclamav static library.
    Added file type recognition for compiled Python (`.pyc`) files.

      The file type appears as a string parameter for these callback
      functions:

      - clcb_pre_cache
      - clcb_pre_scan
      - clcb_file_inspection

      When scanning a `.pyc` file, the `type` parameter will now show

      "CL_TYPE_PYTHON_COMPILED" instead of "CL_TYPE_BINARY_DATA".

    Improved support for decrypting PDFs with empty passwords.

    Assorted minor improvements and typo fixes.

Bug fixes

    Fixed a warning when scanning some HTML files.

    Fixed an issue decrypting some PDF's with an empty password.

    ClamOnAcc: Fixed an infinite loop when a watched directory does not
    exist.

    ClamOnAcc: Fixed an infinite loop when a file has been deleted before a
    scan.
    Patch courtesy of gsuehiro.

    Fixed a possible crash when processing VBA files on HP-UX/IA 64bit.
    Patch courtesy of Albert Chin-A-Young.

    ClamConf: Fixed an issue printing `MaxScanSize` introduced with the
    change to allow a `MaxScanSize` greater than 4 GB.
    Fix courtesy of teoberi.

    Fixed an issue building a ClamAV RPM in some configurations.
    The issue was caused by faulty CMake logic that intended to create an
    empty database directory during the installation."

Signed-off-by: Matthias Fischer <matthias.fischer@ipfire.org>
Reviewed-by: Adolf Belka <adolf.belka@ipfire.org>
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
2024-02-10 11:52:39 +00:00

118 lines
4.1 KiB
Plaintext

###############################################################################
# #
# IPFire.org - A linux based firewall #
# Copyright (C) 2007-2024 IPFire Team <info@ipfire.org> #
# #
# This program is free software: you can redistribute it and/or modify #
# it under the terms of the GNU General Public License as published by #
# the Free Software Foundation, either version 3 of the License, or #
# (at your option) any later version. #
# #
# This program is distributed in the hope that it will be useful, #
# but WITHOUT ANY WARRANTY; without even the implied warranty of #
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the #
# GNU General Public License for more details. #
# #
# You should have received a copy of the GNU General Public License #
# along with this program. If not, see <http://www.gnu.org/licenses/>. #
# #
###############################################################################
###############################################################################
# Definitions
###############################################################################
include Config
SUMMARY = Antivirus Toolkit
VER = 1.3.0
THISAPP = clamav-$(VER)
DL_FILE = $(THISAPP).tar.gz
DL_FROM = $(URL_IPFIRE)
DIR_APP = $(DIR_SRC)/$(THISAPP)
TARGET = $(DIR_INFO)/$(THISAPP)
PROG = clamav
PAK_VER = 71
DEPS =
SERVICES = clamav
DATABASE_DIR = /var/lib/clamav
###############################################################################
# Top-level Rules
###############################################################################
objects = $(DL_FILE)
$(DL_FILE) = $(DL_FROM)/$(DL_FILE)
$(DL_FILE)_BLAKE2 = dc411b1a905d2699c497870877fbe99e3910f8e29bc77830085c8ab75161c80066ca1396f47c3cd6a098c06c839464dbe31feb2e7e64622c657ad4a6a9401282
install : $(TARGET)
check : $(patsubst %,$(DIR_CHK)/%,$(objects))
download :$(patsubst %,$(DIR_DL)/%,$(objects))
b2 : $(subst %,%_BLAKE2,$(objects))
dist:
$(PAK)
###############################################################################
# Downloading, checking, b2sum
###############################################################################
$(patsubst %,$(DIR_CHK)/%,$(objects)) :
@$(CHECK)
$(patsubst %,$(DIR_DL)/%,$(objects)) :
@$(LOAD)
$(subst %,%_BLAKE2,$(objects)) :
@$(B2SUM)
###############################################################################
# Installation Details
###############################################################################
$(TARGET) : $(patsubst %,$(DIR_DL)/%,$(objects))
@$(PREBUILD)
@rm -rf $(DIR_APP) && cd $(DIR_SRC) && tar zxf $(DIR_DL)/$(DL_FILE)
cd $(DIR_APP) && mkdir -pv build
cd $(DIR_APP)/build && cmake .. -G Ninja \
-DCMAKE_BUILD_TYPE=Release \
-DCMAKE_INSTALL_PREFIX=/usr \
-DCMAKE_INSTALL_LIBDIR=/usr/lib \
-DOPTIMIZE=ON \
-DBYTECODE_RUNTIME="interpreter" \
-DENABLE_TESTS=OFF \
-DENABLE_CLAMONACC=OFF \
-DENABLE_MILTER=OFF \
-DENABLE_MAN_PAGES=OFF \
-DENABLE_EXTERNAL_MSPACK=OFF \
-DENABLE_FRESHCLAM_DNS_FIX=ON \
-DAPP_CONFIG_DIRECTORY=/var/ipfire/clamav \
-DCURSES_LIBRARY=/usr/lib/libncurses.so \
-DDATABASE_DIRECTORY=$(DATABASE_DIR)
cd $(DIR_APP)/build && ninja $(MAKETUNING) && ninja install
mkdir -pv $(DATABASE_DIR)
chown clamav.clamav -R $(DATABASE_DIR)
rm -rfv $(DATABASE_DIR)/*.cvd
mkdir -pv /var/ipfire/clamav
cp -rf $(DIR_SRC)/config/clamav/* /var/ipfire/clamav/
mkdir -pv /var/run/clamav
chown clamav:clamav /var/run/clamav
#install initscripts
$(call INSTALL_INITSCRIPTS,$(SERVICES))
@rm -rf $(DIR_APP)
@$(POSTBUILD)