Dominik Maier
68fbfc8914
Fix Clippy ( #926 )
...
* Fix clippy
* undo comment fmt
* add unstracked nyx files to gitignore
* fix
* windows, no_std
* fix
* fix
* more
* macos
* remove doctest
Co-authored-by: Dongjia "toka" Zhang <tokazerkje@outlook.com>
2022-12-06 00:05:42 +09: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
a22c76e02e
Improve Apple support for libafl_cc dll_extensions ( #892 )
2022-11-15 18:28:52 +01:00
Andrea Fioraldi
31077765de
Fix CI ( #862 )
...
* Autofix with new clippy
* Clippy
2022-10-26 09:41:08 +02: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
Andrea Fioraldi
089bc49d55
Bump to 0.8.2 and update versions script ( #828 )
2022-10-12 14:57:08 +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
eac7307c5a
0.8.1 ( #732 )
2022-08-18 10:23:57 +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
Dominik Maier
5a8bdae26f
Update requirements ( #714 )
...
* Update requirements
* more updates
* nits
* more updates
* update nix for fuzzers
* use any regex 1 instead of 1.6
2022-07-29 09:54:16 +02:00
Dongjia Zhang
999eaadc16
fix ( #703 )
2022-07-17 21:15:45 +02:00
Dongjia Zhang
ffe8dbf6af
Bump to 0.8.0 ( #696 )
...
* upd
* more
2022-07-11 21:59:11 +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
Dominik Maier
828ebcff39
Clippy nits & fixes ( #640 )
...
* release autofix
* fix unused backtrace
* clippy fixes
* clippy
* more clippy
* more autofix
* clippy for frida
* more clippy
2022-05-22 02:43:25 +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
Dominik Maier
196569577f
Clippy nightly fixes ( #622 )
...
* removed unused errors
* Fixes
2022-05-06 19:11:09 +02: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
Dominik Maier
6bfbdd6318
Add sdk linker flag for broken MacOS systems ( #527 )
2022-02-08 18:29:48 +01:00
Andrea Fioraldi
1fca710813
llvm-config --libs only for apple ( #522 )
...
* Fuck apple
* fix fuzzbench_text
2022-02-04 11:49:02 +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
Dominik Maier
6810e6085b
Builder for CommandExecutor & Tokens Refactoring ( #508 )
...
* builder for CommandExecutor
* tokens api cleanup, clippy
* fix doctest
* cleanup
* added testcase, remodelled
* command executor builder fix
* fix fuzzer(?)
* implemented From for configurator
* nits
* clippy
* unused
* autotokens
* cleanup
* nits
* Err instead of empty tokens
* fix tokens fn
* fix err
* more error fixing
* tokens remodelling
* typo
* recoverable fail on missing autotokens
* clippy, nostd
* asslice, into_iter, etc. for tokens
* adapt fuzzers
* iter
* fixes, clippy
* fix
* more clippy
* no_std
* more fix
* fixed typo
* cmd_executor builds again
* bring back ASAN stuff to Command Executor
* forkserver speedup
* no need to static
* back to earlier
2022-02-01 10:10:47 +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
Andrea Fioraldi
95ba7d61ce
remvoe fprintf from autotokens pass ( #505 )
2022-01-28 13:51:55 +01:00
Dongjia Zhang
62614ce101
LLVM AutoTokens ( #470 )
...
* posix dict2file llvm pass
* new PM
* working
* clean up
* fmt
* fix
* silence clippy
* bring the println back
* early return
* rename
* weak symbols
* linux onky
* fuzzbench change
* only linux
* linux only
* cfg
* cfg
* fix
* fix
* fix
* why
* fix
* bug fix
* rename
* rename
* macros & rename
* add_from_autotokens
* fix fuzzbench
* std -> core
* builder pattern?
* clippy
* wrong cfg
* cfgstd
* fuzzbench fmt
* no unsafe
* update fuzzbench_text
* use TokenSectiopn
Co-authored-by: Andrea Fioraldi <andreafioraldi@gmail.com>
2022-01-26 19:23:04 +01:00
Dominik Maier
2dd88998bd
Clippy fixes for latest toolchain ( #471 )
...
* from warning
* fix latest clippy
* clippy fixes++
* more nits
2022-01-17 11:02:42 +01:00
Andrea Fioraldi
9b3a435778
Add --libafl arg in libafl_cc and enable it for fuzzbench ( #466 )
2022-01-13 15:40:39 +01:00
Andrea Fioraldi
bca1f392a7
Bump to 0.7.1 ( #465 )
...
* bump to 0.7.1
* bump libafl_qemu
2022-01-13 11:32:57 +01:00
Andrea Fioraldi
906bb4e653
--libaf-no-link ( #464 )
2022-01-13 10:03:02 +01:00
Dominik Maier
a1a6d5f478
Disable pita 🥙 compiler in debug mode ( #454 )
2022-01-04 16:20:52 +01:00
Dominik Maier
af3d321213
Derive debug for all structs in LibAFL ( #442 )
...
* documentation, warnings
* fixed docs
* docs
* no_std
* test
* windows
* nautilus docs
* more fixes
* more docs
* nits
* windows clippy
* docs, windows
* nits
* debug all the things
* derive debug for all core library components
* Docu for libafl_targets
* nits
* reordered generics
* add docs to frida, debug
* nits
* fixes
* more docu for frida, nits
* more docu
* more docu
* Sugar docs
* debug for qemu
* more debug
* import debug
* fmt
* debug
* anyap_debug feature no longer needed
* tidy up unused fn
* indicate if we left out values for struct debug
* implement Debug for sugar
* debug allthethings
* ci
2022-01-03 00:47:17 +01:00
Dominik Maier
217a7dee1d
Use Structopt instead of yaml for example fuzzers, introduce Cores API ( #420 )
...
* reworked generic_inmemory to structopt
* moved core parsing to a struct
* added Cores
* added structopt to libpng_ctx
* improved libafl, added structopt to libpng launcher
* fix deexit ub
* move more to structopt
* improve llvm-config detection
* move construct_automata to structopt
* clippy, fixes, ...
* no_std
* clippy
* frida core parsing
* fixed no-fork cores
* updated clap
* added missing import
* missing borrow
* reworked frida to structopt
* fixed build
* using Cores api for atheris
Co-authored-by: Dominik Maier <d.maier@avm.de>
2021-12-15 03:58:35 +01:00
Andrea Fioraldi
37b8cb0d2f
Bump to 0.7
2021-12-01 17:22:09 +01:00
Andrea Fioraldi
2fb1c3520a
More LLVM passes from AFL++ ( #394 )
...
* afl coverage pass
* working ctx coverage
* MAYBE_THREAD_LOCAL
* doh
* fix for msvc
* ci
* clippy
* atheris
* thread_local
2021-12-01 13:27:39 +01:00