From 666b4c9b25f4ed39ea5bf0df7f145788a479459c Mon Sep 17 00:00:00 2001 From: Fabrice Fontaine Date: Tue, 17 Jun 2025 13:48:01 +0200 Subject: [PATCH] feat(checker): add catdoc checker Signed-off-by: Fabrice Fontaine --- cve_bin_tool/checkers/__init__.py | 1 + cve_bin_tool/checkers/catdoc.py | 20 +++++++++++++++ .../catdoc-0.95-27.fc42.aarch64.rpm.tar.gz | Bin 0 -> 15246 bytes .../catdoc_0.95-4.1_amd64.deb.tar.gz | Bin 0 -> 29243 bytes test/test_data/catdoc.py | 24 ++++++++++++++++++ 5 files changed, 45 insertions(+) create mode 100644 cve_bin_tool/checkers/catdoc.py create mode 100644 test/condensed-downloads/catdoc-0.95-27.fc42.aarch64.rpm.tar.gz create mode 100644 test/condensed-downloads/catdoc_0.95-4.1_amd64.deb.tar.gz create mode 100644 test/test_data/catdoc.py diff --git a/cve_bin_tool/checkers/__init__.py b/cve_bin_tool/checkers/__init__.py index 293baa18f4..ccbefc7e34 100644 --- a/cve_bin_tool/checkers/__init__.py +++ b/cve_bin_tool/checkers/__init__.py @@ -54,6 +54,7 @@ "cairo", "capnproto", "captive_portal", + "catdoc", "ceph", "cflow", "chess", diff --git a/cve_bin_tool/checkers/catdoc.py b/cve_bin_tool/checkers/catdoc.py new file mode 100644 index 0000000000..c1f0cb9ebe --- /dev/null +++ b/cve_bin_tool/checkers/catdoc.py @@ -0,0 +1,20 @@ +# Copyright (C) 2025 Orange +# SPDX-License-Identifier: GPL-3.0-or-later + + +""" +CVE checker for catdoc + +https://www.cvedetails.com/product/139726/Catdoc-Project-Catdoc.html?vendor_id=30573 + +""" +from __future__ import annotations + +from cve_bin_tool.checkers import Checker + + +class CatdocChecker(Checker): + CONTAINS_PATTERNS: list[str] = [] + FILENAME_PATTERNS: list[str] = [] + VERSION_PATTERNS = [r"([0-9]+\.[0-9]+)\r?\nCatdoc Version"] + VENDOR_PRODUCT = [("catdoc_project", "catdoc"), ("fossies", "catdoc")] diff --git a/test/condensed-downloads/catdoc-0.95-27.fc42.aarch64.rpm.tar.gz b/test/condensed-downloads/catdoc-0.95-27.fc42.aarch64.rpm.tar.gz new file mode 100644 index 0000000000000000000000000000000000000000..19ac6502bd711d5b46d225b8ac6fb060159f3699 GIT binary patch literal 15246 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
@;V_rdqX&E{`;lcQT?( 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 literal 0 HcmV?d00001 diff --git a/test/condensed-downloads/catdoc_0.95-4.1_amd64.deb.tar.gz b/test/condensed-downloads/catdoc_0.95-4.1_amd64.deb.tar.gz new file mode 100644 index 0000000000000000000000000000000000000000..eae5771a2b3e9c4787247e4524bbe9682cbcf6f9 GIT binary patch literal 29243 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 literal 0 HcmV?d00001 diff --git a/test/test_data/catdoc.py b/test/test_data/catdoc.py new file mode 100644 index 0000000000..db21bdbec7 --- /dev/null +++ b/test/test_data/catdoc.py @@ -0,0 +1,24 @@ +# Copyright (C) 2025 Orange +# SPDX-License-Identifier: GPL-3.0-or-later + +mapping_test_data = [ + { + "product": "catdoc", + "version": "0.95", + "version_strings": ["0.95\nCatdoc Version"], + } +] +package_test_data = [ + { + "url": "http://rpmfind.net/linux/fedora/linux/development/rawhide/Everything/aarch64/os/Packages/c/", + "package_name": "catdoc-0.95-27.fc42.aarch64.rpm", + "product": "catdoc", + "version": "0.95", + }, + { + "url": "http://ftp.debian.org/debian/pool/main/c/catdoc/", + "package_name": "catdoc_0.95-4.1_amd64.deb", + "product": "catdoc", + "version": "0.95", + }, +]