7577 Commits

Author SHA1 Message Date
van Hauser
16cc444ae5
Merge pull request #2460 from AFLplusplus/dev
update frida
2025-05-30 18:14:52 +02:00
van Hauser
a9900f02cb
Merge pull request #2459 from WorksButNotTested/update-frida
Update FRIDA again
2025-05-29 22:36:07 +02:00
WorksButNotTested
e82de006a7 Update FRIDA again 2025-05-29 17:33:39 +01:00
WorksButNotTested
4a923e59fd
Update FRIDA (#2458) 2025-05-28 22:52:27 +02:00
van Hauser
20348a63bd
Merge pull request #2455 from AFLplusplus/dev
enable llvm 21
2025-05-27 15:11:16 +02:00
vanhauser-thc
cafcb343b1 enable llvm 21 2025-05-27 13:35:04 +02:00
van Hauser
588dda3e84
Merge pull request #2453 from AFLplusplus/dev
push to stable
2025-05-26 11:20:25 +02:00
vanhauser-thc
a17d1daab8 deepwiki 2025-05-26 11:19:04 +02:00
vanhauser-thc
affe7cf5b4 set errno=0 when no afl-fuzz present 2025-05-25 11:38:05 +02:00
van Hauser
fa1ac051eb
Merge pull request #2451 from kcwu/revise-map-resize
Revise map resize
2025-05-25 11:08:05 +02:00
vanhauser-thc
f21cc2da58 nit 2025-05-25 11:05:01 +02:00
vanhauser-thc
8c1ab19ebe add libaflppdesock 2025-05-25 11:04:00 +02:00
Kuang-che Wu
2e7f191f3b extract function to resize map buffers 2025-05-25 09:33:34 +08:00
Kuang-che Wu
8090c82c63 fix resize afl->top_rated 2025-05-24 23:36:54 +08:00
Kuang-che Wu
f610f53838 remove redundent code
these field are already copied in afl_fsrv_init_dup
2025-05-24 22:28:26 +08:00
van Hauser
0012f710d8
Merge pull request #2450 from AFLplusplus/dev
push to stable
2025-05-24 13:24:03 +02:00
van Hauser
be00ea9f00
Merge pull request #2446 from kcwu/fix-save_if_interesting
fix save_if_interesting
2025-05-24 12:43:26 +02:00
Kuang-che Wu
d0df78f07a use functions instead of macros 2025-05-24 16:39:31 +08:00
vanhauser-thc
7e1dc85450 nit 2025-05-23 09:19:42 +02:00
vanhauser-thc
8152def40e changelog 2025-05-23 09:18:55 +02:00
van Hauser
e6ed31d550
Merge pull request #2449 from AFLplusplus/hidden
instrument all hidden edges
2025-05-23 09:16:17 +02:00
vanhauser-thc
77758a1343 nits in calibrate_case 2025-05-23 08:50:37 +02:00
van Hauser
ea1fbb75b3
Merge pull request #2448 from kcwu/setup-ld-preload
Refactor and simplify handling of AFL_PRELOAD
2025-05-23 08:22:03 +02:00
Kuang-che Wu
d62a885f0f simplify code 2025-05-23 10:48:56 +08:00
Kuang-che Wu
55d534cd6d extract function afl_fsrv_setup_preload 2025-05-23 10:39:03 +08:00
Kuang-che Wu
cee764689c fix save_if_interesting
The value of `classified`, `bits_new`, and `cksum`, were not always
correctly maintained.
 1. In the past, `afl->queue_top->exec_cksum` was always assigned when
    `add_to_queue`, however it became conditional since cd5764170595.
    This doesn't change correctness because calibrate_case() will
    calculate the checksum. However, this mean one calibration run is
    wasted.

 2. Sometimes `classified` is set incorrectly.
    For example, this code snippet
    ```
    new_bits = has_new_bits_unclassified(afl, afl->virgin_bits);
    classified = 1;
    ```
    should be changed to
    ```
    new_bits = has_new_bits_unclassified(afl, afl->virgin_bits);
    if (new_bits) classified = 1;
    ```

This commit fixed above issues and use macros to make the code easier to
understand. This should prevent to forget to set classified in the
future (like the bug fixed by 30c93d132166).

The macros also defers the calculations to where the values are really
needed. This could save cpu if the code returns earlier. For example,
if a case is timeout first and not timeout the second time, the current
code does classify_counts, which is not always needed.
2025-05-22 23:14:40 +08:00
vanhauser-thc
d02390e62e add desock option 2025-05-22 17:08:12 +02:00
van Hauser
1f878f1b7c
Merge pull request #2438 from AFLplusplus/dev
push to stable
2025-05-22 12:00:37 +02:00
vanhauser-thc
ff1e0580b0 changelog 2025-05-22 12:00:10 +02:00
van Hauser
4730fa4226
Merge pull request #2444 from AFLplusplus/better_sync
Better sync
2025-05-22 11:55:53 +02:00
vanhauser-thc
50fb923691 nit 2025-05-22 11:55:39 +02:00
vanhauser-thc
300fc1f002 fix startup check 2025-05-21 11:52:57 +02:00
vanhauser-thc
4ff40ee6fd add comment 2025-05-20 17:09:52 +02:00
vanhauser-thc
c3d5f3f471 skip entried synced from us if we have not restarted 2025-05-20 17:07:30 +02:00
van Hauser
45a7d65207
Merge pull request #2433 from kcwu/not-sync-known-case
skip known case if the file is actually coming from us
2025-05-20 16:09:14 +02:00
van Hauser
b8d1f16979
Merge pull request #2441 from abhisen7/fix/afl-cmin
Execute ASan targets without leak checks to read AFL_MAP_SIZE
2025-05-19 14:11:00 +02:00
Kuang-che Wu
c699aa252d reduce overhead 2025-05-19 18:53:22 +08:00
Kuang-che Wu
7c27fc7cfe skip known case if the file is actually coming from us
Assume we have one main node and N secondary nodes in a parallel
fuzzing campaign. Every time the main node found a new case, the case
will be synced to all secondary nodes. Later when the main node sync,
the main node need to run the file again to see if the file is
interesting because they are "new" cases on the secondary nodes.

In other words, for one new case, the main node has to run the redundent
test N times. This is wasteful and slowed down the progress of main
node.

The wasteful issue on secondary nodes is acceptable because we can run
more secondary nodes to mitigate the inefficiency. OTOH, increasing the
number of secondary nodes slow down the main node further.
2025-05-19 18:50:22 +08:00
abhisen7
46b9efbf7d Execute ASan targets without leak checks to read AFL_MAP_SIZE 2025-05-19 11:52:40 +02:00
vanhauser-thc
92d1a60096 print deubg on before missed instrumented instructions 2025-05-19 10:23:22 +02:00
van Hauser
f90fafc07a
Merge pull request #2440 from AFLplusplus/dev
push to hidden
2025-05-19 10:02:12 +02:00
van Hauser
59c2198532
Merge pull request #2437 from AFLplusplus/fixsync
Fix sync for restarted instances
2025-05-18 17:30:30 +02:00
vanhauser-thc
c7654c028d nit 2025-05-18 17:26:57 +02:00
vanhauser-thc
ccc7ab5944 use goto and free glob 2025-05-18 17:23:53 +02:00
vanhauser-thc
06afa48e02 code format 2025-05-18 14:07:03 +02:00
van Hauser
816334000a
Merge branch 'stable' into dev 2025-05-18 14:06:09 +02:00
vanhauser-thc
2573ccb66e flush stdout for AFL_DUMP_MAP_SIZE 2025-05-18 14:02:58 +02:00
vanhauser-thc
767b990af6 fix syncing to restarted instances 2025-05-18 11:03:40 +02:00
vanhauser-thc
1631e5988f nit 2025-05-17 13:57:24 +02:00
vanhauser-thc
3ee3b5c384 code format 2025-05-17 00:05:31 +02:00