880 Commits

Author SHA1 Message Date
toka
e4a584c02a pass Duration and move timeout stuff to post_exec 2021-03-16 19:20:40 +09:00
Andrea Fioraldi
21301f2cf8 more doc 2021-03-16 10:53:32 +01:00
toka
b321675aa9 add TimeoutFeedback and send ExitKind::Timeout from the handler 2021-03-16 18:48:40 +09:00
toka
ab3d070f1a add TimeoutExecutor 2021-03-16 18:13:18 +09:00
s1341
058f88977e
Make unix sockets abstract and fix ashmem device path (#33)
* Make unix sockets abstract

Also fix ashmem device path. These two changes allow us to run on Android without root

* fmt

* make the dependency on uds cfg(unix)
2021-03-15 22:00:04 +01:00
toka
b259e57524 add cfg(unix) guards 2021-03-15 10:37:46 +09:00
toka
30716e2483 cast to i64 later in pre_exec 2021-03-15 10:23:33 +09:00
toka
ff759e2ca7 add with_timeout constructor for Observer 2021-03-15 10:20:13 +09:00
Dominik Maier
b33cb5d721 debugging llmp 2021-03-14 19:58:04 +01:00
Dominik Maier
8315f9200d no restarts on crash 2021-03-14 18:43:10 +01:00
toka
ae9486814e move timeouts to observer 2021-03-14 07:55:14 +09:00
toka
cad5e339d9 add timeouts for executors 2021-03-13 07:25:28 +09:00
Dominik Maier
84a5627bed added shutdown forwarding to clients 2021-03-11 02:12:01 +01:00
Andrea Fioraldi
87cad475e3 TimeFeedback 2021-03-09 15:12:48 +01:00
Dominik Maier
8459997d9f volatile for signal handlers 2021-03-06 16:32:42 +01:00
Dominik Maier
edd239ce95 more stable raw mem access in signal handlers 2021-03-05 21:38:48 +01:00
Andrea Fioraldi
03a8f380f0 useful comment 2021-03-05 16:08:49 +01:00
s1341
b048ddf470
Better Unix Signal Handling Abstractions (#22)
* WIP: unix_signal_handling

* WIP: unix_signal_handling, another try

* only emit a single illegal instruction

* unix_signal_handling: Now working

* unix_signal_handling: squash warnings

* unix_signal_handling: formatting

* fix spelling

* unix_signal_handling: add missing file

* unix_signal_handling: port LlmpBroker

* unix_signal_handling: fix missing import

* moving towards no_std compatibility

* unix_signal_handling: get rid of HashMap, Mutex and lazy-static

* unix_signal_handling: formatting

* readme

* no_std fixes

* fixed windows build

Co-authored-by: Dominik Maier <domenukk@gmail.com>
Co-authored-by: Andrea Fioraldi <andreafioraldi@gmail.com>
2021-03-05 15:36:44 +01:00
Andrea Fioraldi
55def9b966 format 2021-03-05 14:34:25 +01:00
Andrea Fioraldi
58619beb7d start working on power scheduling 2021-03-05 14:33:58 +01:00
Andrea Fioraldi
2f4f719e64 remove some useless commented code 2021-03-05 14:20:37 +01:00
Andrea Fioraldi
0a4a40101a fix executor post exec 2021-03-05 14:19:17 +01:00
Dominik Maier
ef861cbbcf fixed no_std 2021-03-04 19:32:41 +01:00
Dominik Maier
bb54d551ac included more clippy suggestions 2021-03-04 19:11:36 +01:00
Dominik Maier
eb451e577f reenabled testcases 2021-03-03 17:30:39 +01:00
Dominik Maier
447e5e0e59 fixed queuecorpus test 2021-03-03 17:17:47 +01:00
Dominik Maier
eaa3dc786b
Fork (#20)
* wip forking

* fixed build

* fixed build

* import cleanup

* more fork

* added windows ci

* fmt

* no_std fixes

* windows

* unix build fixed

* ignoring tests on windows

* fixed windows tests
2021-03-03 17:06:17 +01:00
Dominik Maier
69c3581f1a fmt 2021-03-03 16:19:51 +01:00
Dominik Maier
909d0f8574 fix windows build 2021-03-03 16:19:35 +01:00
s1341
fde48be53e
unix_domain_sockets/ashmem: Add ability to connect over unix domain sockets instead of just TCP; Add ashmem support for android (#19)
* unix_domain_sockets: Added Listener abstraction

Tested and TCP is still working

* unix_domain_sockets: turn off the unstable feature except on android

* unix_domain_sockets: more turn off the unstable feature except on android

* unix_domain_sockets: always import UnixListener

* unix_domain_sockets: Finished implementation. Tested working on android when both sides are root

* unix_domain_sockets: adjust conditional compilation

* unix_domain_sockets: formatting

* unix_domain_sockets/android: implement ashmem hooks

* unix_domain_sockets/android: formatting

* unix_domain_sockets: make Listener abstraction public

* unix_domain_sockets: add cfg(std) to Listener

* unix_domain_sockets: add cfg(std) to imports

* unix_domain_sockets: formatting

* unix_domain_sockets: Handle SIGTERM, SIGQUIT and SIGINT gracefully and cleanup the unix socket

* unix_domain_sockets: formatting

* unix_domain_sockets: fix conditional compilation

* unix_domain_sockets: use String::default instead of a literal

* unix_domain_sockets: socket_name should be an Option<>

* fixed build

* fmt

* fixed warnings

* using volatile reads and writes for shutdown flag

* reordered compiler fence on write

* moved the signal handler method to its own function

* readme

* moved to HasShmId

* unix_domain_sockets: fix warnings

* renamed HasShmId to HasFd

Co-authored-by: Dominik Maier <domenukk@gmail.com>
2021-03-03 12:31:29 +01:00
Dominik Maier
a3b22acb04 clippy 2021-03-02 20:44:17 +01:00
Dominik Maier
c7f1d83b6e more clippy fixes 2021-03-02 19:57:43 +01:00
Dominik Maier
dbd3cbd99c some clippy fixes 2021-03-02 19:33:03 +01:00
Andrea Fioraldi
ff99a442e5
Merge branch 'main' into dev 2021-03-01 18:41:45 +01:00
Marcin Kozlowski
959c8f0dd8
Libmozjpeg example added (#15)
* WIP Harness for libmozjpeg

* Taskset removal (wrong invocation, without -c)

* Clean up
Fixed taskset in test.sh

* Docs

* Formatting

* Formatting

* Formatting

* Formatting

* jpeg example now uses a tokens file

* fixed testcases

* fixing build

* fixed more bugs

* metadatas->metadata

* token files

* added doctest test

Co-authored-by: Dominik Maier <domenukk@gmail.com>
2021-03-01 17:54:47 +01:00
s1341
d0d9d2887f
Support running on Android aarch64 (#17)
* android: cleanup build.rs and allow for cross-compilation

* aarch64: use an aarch64 undefined instruction

* android: i8 should be u8

* android: siginfo_t is different on arm

* android: cast to c_char instead of u8/i8

It turns out that c_char is different on android and linux

* android: handle LDFLAGS being empty

* android: formatting

* fixed warning

Co-authored-by: Dominik Maier <domenukk@gmail.com>
2021-03-01 15:18:27 +01:00
Andrea Fioraldi
f18af45d09 libafl_derive proc macro crate 2021-03-01 14:11:37 +01:00
Andrea Fioraldi
24e9f70b83
Merge pull request #16 from AFLplusplus/dev
Minimizer Corpus Scheduler & hitcounts
2021-03-01 10:59:50 +01:00
Andrea Fioraldi
405bfc5294 fix #14 2021-03-01 10:31:47 +01:00
Andrea Fioraldi
dc39a5591a format 2021-03-01 10:04:59 +01:00
Andrea Fioraldi
34cba3e59c fix bug in queue scheduler 2021-03-01 10:00:53 +01:00
Andrea Fioraldi
c245d5e5fb pass scheduler to stage 2021-03-01 09:54:39 +01:00
Dominik Maier
061a8dd77c OnDiskCorpus autocreates dictionaries 2021-03-01 02:27:21 +01:00
Andrea Fioraldi
3aa9439e80 scheduler half finished 2021-02-28 23:22:18 +01:00
Andrea Fioraldi
fd83c10c1e finish minimizer scheduler 2021-02-26 22:22:10 +01:00
Andrea Fioraldi
bb29e6dd72 errors in minset for missing meta 2021-02-26 17:21:03 +01:00
Andrea Fioraldi
204076bb1e track meta in map feedback 2021-02-26 17:11:46 +01:00
Andrea Fioraldi
140a303546 format 2021-02-26 16:24:24 +01:00
Andrea Fioraldi
913968a68d almost finished MinimizerCorpusScheduler 2021-02-26 16:23:09 +01:00
Dominik Maier
15a64c3e17 moved new -> with_seed, with_random_seed -> new 2021-02-26 09:27:34 +01:00