David CARLIER
83f739f010
libafl_cc using hwasan on Linux/Android arm64 ( #1399 )
2023-08-04 01:50:41 +02:00
David CARLIER
f4f55088e3
ControlFlowGraph::calculate_difference_all_edges build warning fix. ( #1390 )
...
get_edge returns a reference, anyhow CfgEdge does implement the Borrow's trait neither.
2023-08-02 09:58:49 +02:00
s1341
71aa0221a0
Add feature to build variants/configurations automatically, with libtool/cc/cxx shims ( #1322 )
...
* Add feature to build variants/configurations automatically, with libtool/cc/cxx shims
* Fixes
* Clippy
* Add brief comment describing usage
* Fix
* Fix fuzzers: add ToolWrapper
* Clippy
* More clippy
* More clippy
* Add Compound configuration
* Clippy
* Fix
* Clippy
* Damn that Clippy
* Change names of Configurations
* Add ar wrapper
* Fix
* Clippy
* Windows build
* Clippy
* Clippy
* Clippy
2023-06-22 16:17:33 +02:00
Dongjia "toka" Zhang
594ce420fc
Fix libafl_cc ( #1295 )
...
* push
* fix
2023-05-24 18:44:13 +02:00
David CARLIER
0d7d52decf
afl_cc fix build for LLVM 17 ( #1286 )
2023-05-22 12:42:56 +02:00
Dongjia "toka" Zhang
52557aefdd
Fix #1276
2023-05-17 15:39:21 +02:00
Dongjia "toka" Zhang
3fd5671909
add ( #1276 )
2023-05-17 15:22:49 +02:00
Dongjia "toka" Zhang
66127d8492
Revert "Don't pass LLVM pass & its args during linking ( #1274 )" ( #1275 )
...
This reverts commit efc5756e3fac9ed3b82e6d82b770b578b47b42d0.
2023-05-17 14:53:17 +02:00
Dongjia "toka" Zhang
efc5756e3f
Don't pass LLVM pass & its args during linking ( #1274 )
2023-05-17 14:32:56 +02:00
Dongjia "toka" Zhang
b7c1591b00
Linking arguments for LLVM passes ( #1273 )
2023-05-17 13:53:02 +02:00
Dongjia "toka" Zhang
b9a540561b
Don't add llvm pass args when there're no passes & Don't pass -mllvm
arguments when compiling asm files ( #1266 )
...
* f
* fix
* clp
2023-05-12 11:48:12 +02:00
Dongjia "toka" Zhang
abd8efabd3
Add additional security sensitive functions for coverage accounting ( #1246 )
2023-05-03 15:45:07 +02:00
Dongjia "toka" Zhang
eab7c32e9f
Dump whole program's CFG pass ( #1226 )
...
* skelton
* pass
* compiles
* python
* optional pass
* rev
* chg
2023-04-24 14:57:24 +02:00
Andrea Fioraldi
0f633962ff
Bump to 0.10.0 ( #1156 )
...
* Bump to 0.10.0
* fix
* Fix CI
* Fix copyright
* fmt
---------
Co-authored-by: Dominik Maier <domenukk@gmail.com>
Co-authored-by: Dongjia "toka" Zhang <tokazerkje@outlook.com>
2023-04-05 17:49:53 +02:00
Dongjia "toka" Zhang
ccd1211cd2
Remove qemu_arm_launcher test from CI ( #1179 )
...
* remove qemu arm
* trigger all
* debug
* revert
* api chg
* fix
* try
* debug
* remove qemu
* no_std
* Update build_and_test.yml
* llvm16
* revert z3
* macos
* fix
* remove test
* don't grep on mac
* fix
* ok
* f
* f
* f
* aaa
2023-04-04 14:49:58 +02:00
Dongjia "toka" Zhang
0fa815f2b8
Rename MetaData to Metadata
2023-03-14 23:57:55 +09:00
Dominik Maier
2ed6583041
CI: Run miri tests ( #1130 )
...
* Fixes/ignores for miri support
* linux
* fix doctest for miri
* fix docs
* fix UB in baby_fuzzer
* no custom allocator in miri
2023-03-08 19:21:17 +01:00
Dongjia "toka" Zhang
5b4ae61cdd
SimpleLogger API improvements, printing to stdout, timestamps ( #1109 )
...
* log
* fix
* a
* rev
* remove
* 2 logger
* cfg std
* more
* more
* cf
* no_std
* features
* optional
* rename
* current_time()
2023-03-02 14:07:46 +01:00
Dongjia "toka" Zhang
20958a979f
Weak link token section ( #1080 )
...
* fix
* a
2023-02-17 10:38:46 +01:00
Elsa Granger
44b69666da
Fix fuzzbench build ( #1004 )
...
* Fix -z,defs handle
* Add libfuzzer_no_link_main option in libfuzzer
* Use libfuzzer_no_link_main for fuzzbench
* no_link_main feature
---------
Co-authored-by: Andrea Fioraldi <andreafioraldi@gmail.com>
2023-02-15 11:58:32 +01:00
Fabian Freyer
53dba5f49d
Use the log facade instead of println ( #1060 )
...
* switched a couple of println / dbg statements to use log crate
* Use pyo3-log for logging in python bindings
2023-02-14 10:01:51 +01:00
David CARLIER
3b68399cc9
libafl_cc fixes for clang 16 ( #1010 )
...
None constant being deprecated, it is recommended
to use the std::nullopt_t type instead.
2023-01-23 11:00:42 +01:00
Max Ammann
4d8b566a87
[Windows] Add libfuzzer example for windows with ASAN ( #934 )
...
* Add libfuzzer example for window with ASAN
* Fix formatting
* Add link
* Fix cpp format
* Skip windows fuzzers
* Fix format
* Fix testing fuzzer
* Fix taks name
Co-authored-by: Dongjia "toka" Zhang <tokazerkje@outlook.com>
Co-authored-by: Andrea Fioraldi <andreafioraldi@gmail.com>
Co-authored-by: Dominik Maier <domenukk@gmail.com>
2022-12-21 10:41:58 +01:00
David CARLIER
32dc796234
Extend autotokens pass support to other unixes ( #900 )
2022-11-20 09:24:30 +01:00
David CARLIER
d77769540a
fixing freebsd unused import warning in core affinity. ( #897 )
...
fixing clang wrapper test passing llvm pass api support when there are actual passes.
Co-authored-by: Dongjia "toka" Zhang <tokazerkje@outlook.com>
2022-11-17 10:28:22 +01:00
Dominik Maier
b035b70f4e
Expose OUT_DIR for compiler passes to other components ( #840 )
...
* Expose OUT_DIR for compiler passes to other components
* not updating nyx
2022-10-21 09:36:22 +02:00
Dominik Maier
94f0c7f56e
Moving to named parameters in format strings ( #827 )
...
* autofix
* you're just asking for a clamping
* autofmt on linux
* fix nits
* change back nit
* unfixing as u64 for GuestAddr
* fix
* ignoring clippy for GuestAddress
2022-10-11 13:45:01 +02:00
Dominik Maier
cc0c2f32ae
Additional errors only in test ( #809 )
2022-09-30 20:28:51 +02:00
David CARLIER
8cff2ce745
Reduce clang warnings for version output in libafl_cc. ( #778 )
2022-09-13 13:59:35 +02:00
Dominik Maier
5823320206
Fixes for new Clippy ( #755 )
2022-09-02 16:21:06 +02:00
Dongjia "toka" Zhang
2389f677f4
OSX force_load option ( #743 )
...
* Update clang.rs
* fmt
2022-08-27 09:51:11 -04:00
Dongjia Zhang
93c361bcd9
New Pass Manager Arguments ( #724 )
...
* new pm arguments
* enable abgeana's code
2022-08-18 19:26:52 +02:00
Dongjia Zhang
5d9a19f955
Mac OS Autotokens ( #723 )
...
* mac_tokens
* more
* win fix
* fmt
* fmt c
2022-08-13 02:58:22 +02:00
Alexandru Geană
c1aafe3e98
LLVM passes for Windows ( #710 )
...
* libafl_cc fixes for windows
* libafl_cc checks for llvm-config (again)
* libafl_cc clang-format
* libafl_cc fixes for macos
* maintain libafl_cc pass manager selection logic
* libafl_cc rustfmt
2022-08-12 20:25:59 +02:00
syheliel
2504b6dae3
Add rustfmt.toml
( #722 )
...
* add `rustfmt.toml`
* format fix
Co-authored-by: syheliel <syheliel@gmail.com>
2022-08-12 02:28:32 +02:00
Dongjia Zhang
999eaadc16
fix ( #703 )
2022-07-17 21:15:45 +02:00
Dongjia Zhang
49de0046e8
Fix AFLCoverage Pass & small fixes ( #678 )
...
* fix
* more
* declare LIBAFL_CC_LLVM_VERSION at least when no llvm-config found
* More llvm14 fixes
2022-06-23 17:55:06 +02:00
Andrea Fioraldi
323b8e23ee
LIBAFL_DEBUG_OUTPUT in Launcher and OnDiskTOMLMonitor to create fuzzer_stats ( #666 )
...
* LIBAFL_DEBUG_OUTPUT in launcher on unix
* OnDiskTOMLMonitor
* fix
* clp
* clippy
* fix
* fix
* allow all
Co-authored-by: tokatoka <tokazerkje@outlook.com>
2022-06-08 17:32:58 +02:00
Dominik Maier
bfe69aea09
Format C/Cpp code in ./scripts/fmt_all.sh ( #653 )
...
* format all (clang format 13)
* added clang-format check
* re-add missing newline
* cargo doc was missing
* more brackets
* fixed fmt workflow
* clang format
* shellcheck
* install clang-format-13
* update ubuntu for maximum clang-formattability
* yml whitespaces
* fmt
* shellcheck only for .sh
* oops path
* ignored shellcheck warning
2022-05-29 03:23:02 +02:00
Dongjia Zhang
afb32fb351
Cmplog New Pass Manager & LLVM 14 Fixes ( #626 )
...
* wip
* more
* match aflpp
* llvm14
* fix
* more llvm14
* check llvm version in libafl_cc
* safe access
* more
* fmt
* no windows
* no windows
2022-05-17 08:45:48 +02:00
Dongjia Zhang
a02b90be44
Autotokens New PM ( #605 )
...
* autotokens newpm
* typo
* fmt
* clp
* fix
* fix
* include &fmt
* include
* fmt
* llvm14 & clippy fix
* fix
2022-05-09 18:41:53 +09:00
Dongjia Zhang
6b76e53bfa
C(pp) formatting & autotokens fix ( #614 )
...
* fix
* a
* format
* .clang-format
2022-05-04 03:42:43 +09:00
Andrea Fioraldi
a99d0b2967
Fix clang linking without --libafl arg ( #608 )
...
* Fix clang linking without --libafl arg
* clippy
2022-04-12 20:34:38 +02:00
Andrea Fioraldi
e8f5949aec
Fix linking with -z defs ( #601 )
...
* Always link no-link-rt when not linking a fuzzer
* Handle dynamic
* fuzzbench
* Handle -z defs
* fix
* clippy
* clippy
* windowa
* fix
2022-04-08 18:06:27 +02:00
Chaofan Shou
4e3091eace
Dump Control Flow Graph in AFLCoverage LLVM Pass ( #557 )
...
* Allow dumping CFG in AFLCoverage pass
* Consider cases of edges from zeros to entry basic block.
* Expose public structs and traits
* linting
* fix doc
* clippy
* Remove unnecessary dependency
* add missing derive
2022-03-02 11:19:19 +01:00
Chaofan Shou
df84d39242
Add function call level granularity for coverage accounting ( #552 )
...
* Add func call level granularity for coverage accounting
* code linting
2022-02-24 10:16:12 +01:00
Dominik Maier
7dad2153e2
Clippy for Cargo ( #532 )
...
* Clippy for Cargo
* clippy fixes
* clippy fixes
* edition
* fix
* wrong self hidden
* fix
* more clippy
2022-02-11 14:34:01 +01:00
Andrea Fioraldi
0062bab412
libafl_cc: -fsanitize=fuzzer is an alias to --libafl ( #518 )
...
* libafl_cc: -fsanitize=fuzzer is an alias to --libafl
* no link runtime
2022-02-02 21:47:23 +01:00
Andrea Fioraldi
dd002a081b
Implement coverage accounting (BB metric atm) ( #507 )
...
* bb accounting llvm pass
* bb metric
* accoutning corpus scheduler
* fix warnings
* alloc
* clippy
* fix dockerfile
* clippy
* coverage accounting example
* finish CoverageAccountingCorpusScheduler
* fmt
* --libs in llvm-config
* merge
2022-02-01 14:08:38 +01:00
Dongjia Zhang
c61fed6ca9
Use Unix timer_* API instead of setitimer ( #510 )
...
* fix linter errors for armv7 (docs)
* introduce HasOnCrashReset trait; use timer_* API instead of setitimer for unix TimeoutExecutor
* fixes: PR #469 annotations and CI issues
* reintroduce setitimer for apple as macOS does not feature the POSIX timer API
* more macos and windows CI fixes
* more macos and windows CI fixes cont.
* HasOnCrashReset -> HasPostRunReset
* remove drop impl for Windows TimeoutExecutor
* adjust target cfgs for timeout stuff (android also did not work)
* add call to inner post_run_reset
* remove HasPostRunReset in favor of making it a trait fn of Executor
* add post_run_reset's to CombinedExecutor
* clippy: addr_of! instead of raw pointer casts
* link librt in libafl_cc (required by timer_* API)
* minor fixes and cleanup
* remove unused import for targets other than linux
* fix win
* merge
* fix
Co-authored-by: pr0me <g33sus@gmail.com>
2022-02-01 04:48:03 +01:00