Friday, December 15, 2023

The ClamAV 1.3.0 release candidate is now available.

You may find the source code and installers for this release on the clamav.net/downloads page or the ClamAV GitHub release page.

Tip: If you are downloading the source from the GitHub release page, the package labeled "clamav-1.3.0-rc.tar.gz" does not require an internet connection to build. All dependencies are included in this package.  But if you download the ZIP or TAR.GZ generated by GitHub, located at the very bottom, then an internet connection will be required during the build to download additional Rust dependencies.

For Docker users, there is no specific Docker tag for the release candidate, but you can use the clamav:unstable or clamav:unstable_base tags.

The release candidate phase is expected to last two to three weeks before we publish the stable release or a second release candidate. Please take this time to evaluate ClamAV 1.3.0.  

Please help us validate this release by providing feedback via the ClamAV mailing list or on our Discord.

ClamAV 1.3.0 includes the following improvements and changes:

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.

    Patch courtesy of driverxdw.

  • 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".

  • Assorted minor improvements and typo fixes.

Bug fixes

Acknowledgments

Special thanks to the following people for code contributions and bug reports:

  • Albert Chin-A-Young
  • Andrew Kiggins
  • driverxdw
  • Luca D'Amico
  • RainRat