Seems to extract most pdf/openaction/and streams (flate, ascii85, asciihex).
Doesn't normalize extracted JS, that will be done once bytecode hooks are added.
For these commits:
e67790c658 Add clamd handling.
d049a2f72b Make bytecode tests use testmode if they want.
9f3afdb874 Add clamscan flag --bytecode-mode.
b1018ea52e Fix another interpreter bug accessing structs.
669623d5a6 Fix computation of type sizes in interpreter.
9f1715ccea Add new bytecode APIs to access the environment.
0d4c99465e Add the builtin bytecode.
d5ffa2acff Introduce BC_STARTUP bytecode (bb #2101, #2078).
927d054838 Add engine param to bytecode, and remove dconf from _init.
ed6cd43ef0 Make clamconf use cli_detect_environment.
78f73f0f77 Add new files to build system.
c85060ff79 Move environment detection code to bytecode_detect.c.
Detect PaX and fallback to intepreter if needed (bb #2092).
Recent PaX versions deny the RWX mapping, but older versions silently change it
to RW, which causes the program to die as soon as it tries to execute JITed
code.
Add selfcheck on startup (bb #2092).
This will run a very simple bytecode on startup in both JIT and interpreter
mode. The bytecode only calls 1 libclamav API and returns.
IMPORTANT NOTE: --test-sigs now only works against the final target file
(after all processing, normalization, etc. for which the tested
signature was directly created)
Avoid loading signatures that go into an offset-mode BM trie into the prefilter,
since this trie doesn't use the prefilter for BM anyway.
This improves load time, and filter performance.
Also set unroll to 4 in sha256.c, this seems to give best performance.
Overall this is a 16% improvement in DB load time.