The 0.105.1, 1.0.0, and unstable images do not have clamav shared libs. The story is:
Some new versions of Rust dependencies required a newer version of rust/cargo than was provided by Alpine 3.16. We needed the newer versions to get some crash fixes.
The default x86_64-unknown-linux-musl target for rustc switched to use the -static-pie linker option, which means it won't link executables with shared libs, which broke testing of the libclamav_rust module when running ctest. (The Alpine package provided x86_64-alpine-linux-musl which did not set `-static-pie). This is why we switched to a static build.
Now 3.17 is out and we can use the Alpine rust/cargo packages instead, meaning we can go back to shared libs.
Also, with improvements coming in 0.105.2 and 1.0.0 we should catch any panics from Rust code so it doesn't crash clam, meaning we're more comfortable pinning the dependency versions by checking in Cargo.lock here.
This commit pins the Rust dependencies by adding Cargo.lock files.
This commit reverts to using Alpine packages for the dependencies and does away with the Mussels builds.
This commit reverts to building clam shared libs instead of static.
The 0.105.1, 1.0.0, and unstable images do not have clamav shared libs. The story is:
-static-pie
linker option, which means it won't link executables with shared libs, which broke testing of the libclamav_rust module when runningctest
. (The Alpine package provided x86_64-alpine-linux-musl which did not set `-static-pie). This is why we switched to a static build.Now 3.17 is out and we can use the Alpine rust/cargo packages instead, meaning we can go back to shared libs. Also, with improvements coming in 0.105.2 and 1.0.0 we should catch any panics from Rust code so it doesn't crash clam, meaning we're more comfortable pinning the dependency versions by checking in Cargo.lock here.
This commit pins the Rust dependencies by adding Cargo.lock files.
This commit reverts to using Alpine packages for the dependencies and does away with the Mussels builds.
This commit reverts to building clam shared libs instead of static.
Resolves: https://github.com/Cisco-Talos/clamav-docker/issues/7 Resolves: https://github.com/Cisco-Talos/clamav/issues/802