Commit Graph

54 Commits

Author SHA1 Message Date
Mickey Sola
46a35abe56 mass update of copyright headers 2015-09-17 13:41:26 -04:00
Kevin Lin
0ff13b3138 clambc: added diagnostic tools for bytecode IR
clambc: added option to print bytecode IR
TODO: add diagnostic functions to win32 project

Conflicts:

	shared/optparser.c
2014-07-25 12:06:13 -04:00
Steve Morgan
16c4fcdd10 performance statistics for bytecode hooks 2012-12-07 08:09:10 -08:00
Steve Morgan
54402320c0 Add bytecode performance statistics 2012-12-05 15:48:52 -08:00
Steve Morgan
6ad45a2931 add initial allscan/allmatch mode to libclamav, clamd, clamdscan, and clamscan with unit tests 2012-10-18 14:12:58 -07:00
Török Edvin
540fc128a0 freshclam is using private symbol that changed proto (bb #2187).
Change name to prevent crash with 0.96.1 freshclam and 0.96.2 libclamav.
You'll get a missing symbol error.
2010-08-11 14:26:10 +03:00
Török Edvin
762d46e8ea Fix matchicon bytecode API (bb #2139).
Now you can call it both from a normal lsig triggered BC, and from a PE hook BC.
The normal lsig triggered BC has exe_info (but not PE info) which allows it to
invoke the icon matcher API.
Also putting ICONGROUP1 into the ldb trigger of the bytecode works.
2010-08-02 21:52:15 +03:00
Török Edvin
dc200c6b19 Add bytecode API for pdf. 2010-08-02 18:21:24 +03:00
Török Edvin
927d054838 Add engine param to bytecode, and remove dconf from _init. 2010-07-29 13:48:18 +03:00
Török Edvin
2545f9767c Rearrange some fields in structs to avoid holes. 2010-06-09 13:44:29 +03:00
Török Edvin
2a7f1cdaf5 Print C++ compiler version.
This requires exporting a function from libclamav, since clamconf is not C++...
2010-04-19 18:35:30 +03:00
Török Edvin
20327f931f compute global offsets. 2010-03-06 16:28:08 +02:00
Török Edvin
6eeadbfeda dconf for bytecode. 2010-02-15 17:32:41 +02:00
Török Edvin
236fb13647 New pointer handling rules. 2010-02-15 17:32:40 +02:00
Török Edvin
57f14280a7 Fix use-after-free on bytecode load/execution.
lsig->bc was referring to the bytecode directly (via a pointer),
but the bytecode struct changes place in memory (it is realloced on each .cbc
load). So use an index instead of the direct pointer.
2010-02-02 15:30:20 +02:00
Török Edvin
847d7fc1b8 2009->2010 2010-02-02 14:03:32 +02:00
Tomasz Kojm
baf2e702e2 libclamav: provide information about lsig matches to bytecode (bb#1799) 2010-01-28 12:54:28 +01:00
Török Edvin
a35cfe5137 print bytecode metadata. 2010-01-22 16:50:35 +02:00
Török Edvin
be43f951c6 BytecodeSecurity setting. 2010-01-22 16:50:35 +02:00
Török Edvin
f4e3421592 Support PE hook bytecodes triggered by logical signature. 2010-01-19 16:41:26 +02:00
Tomasz Kojm
12c6a97e9b fix some compiler warnings 2010-01-12 16:16:08 +01:00
Török Edvin
688799d126 yc_bytecode is able to unpack a file now! 2009-12-17 17:40:35 +02:00
Török Edvin
92ba8d661c Attempt to fix SunC build: enum/unsigned mismatch is not allowed. 2009-12-12 15:14:40 +02:00
Török Edvin
853b6e5da1 Add LLVM win32 proj files generated by cmake.
Fix win32 build issues.
Enable CPU detection on win32 too.
Enable LLVM JIT on win32 too.
Define NDEBUG for libclamavc++ for release win32 builds.
2009-12-12 15:14:39 +02:00
Török Edvin
29cbf0787b stdint.h -> cltypes.h 2009-12-11 21:07:36 +02:00
Török Edvin
d0934caf99 Distcheck fixes. 2009-12-11 21:02:19 +02:00
Török Edvin
0a11015bf5 Refactor trace API, so that trace printing happens in clambc.
This will allow clambc to implement breakpoints, and watchpoints.
2009-12-09 17:05:05 +02:00
Török Edvin
65c740d7d8 Add support for tracing (if bytecode compiled with support).
TODO: global id 0 is now a null pointer, need to adjust rest of conversion code
accordingly.
2009-12-08 23:02:49 +02:00
Török Edvin
74b0023374 Fix after merge: update to fmap API. 2009-12-03 11:37:38 +02:00
Török Edvin
3ae0a76d03 Support for scanning files created by bytecode. 2009-12-02 17:30:17 +02:00
Török Edvin
53bd5bb14d read optional debug metadata. 2009-11-30 15:22:20 +02:00
Török Edvin
250d92c533 Sync with compiler. 2009-11-06 16:34:46 +02:00
Török Edvin
ec41017bba WiP 2009-10-06 17:32:38 +03:00
Török Edvin
ab63657088 Add generic and PE hooks. 2009-10-02 17:33:11 +03:00
Török Edvin
9fac78c72e Update to latest bytecode format. 2009-10-02 10:26:47 +03:00
Török Edvin
d38d6dadef Logical signature hook for bytecode. 2009-09-22 11:04:33 +03:00
Török Edvin
dcee45cce2 Update to latest bytecode format. 2009-09-21 18:48:43 +03:00
Török Edvin
ec07792943 Support for constant global with global initializers. 2009-09-10 22:51:11 +03:00
Török Edvin
a1781898ec inputfile support 2009-09-08 22:25:33 +03:00
Török Edvin
2922746173 Fix make distcheck. 2009-09-07 19:29:50 +03:00
Török Edvin
4789b8a5a6 Add draft file API, doesn't work yet. 2009-09-04 17:29:13 +03:00
Török Edvin
1a486dca3b Add hidden ctx param to APIcalls. 2009-09-04 12:09:17 +03:00
Török Edvin
2487a4a342 Various bytecode JIT fixes, teach clamconf about JIT, and make sure make check runs the JIT! 2009-08-28 20:07:25 +03:00
Török Edvin
85a25497bd really execute the JITed code. 2009-08-27 20:41:29 +03:00
Török Edvin
d1487222f7 Draft of libclamav <-> jit communication. 2009-08-25 19:06:32 +03:00
Török Edvin
cf0cd429e9 Implement API calls from bytecode. 2009-08-20 16:33:58 +03:00
Török Edvin
8cc286f57d Add support for type loader. 2009-08-17 15:25:12 +03:00
Török Edvin
6922903ad9 bytecode: fully switch to a stack based allocation, and operands with various bitwidths. 2009-08-17 15:13:29 +03:00
Török Edvin
30188fccb9 constify 2009-07-13 19:40:24 +03:00
Török Edvin
f3b2dc9e28 Implement ICMP_*. 2009-07-09 23:58:57 +03:00