doc: Update fuzzing docs for afl-clang-lto #21398

pull MarcoFalke wants to merge 1 commits into bitcoin:master from MarcoFalke:2103-docFuzzAflPlusPlus changing 1 files +9 −10
  1. MarcoFalke commented at 5:55 PM on March 9, 2021: member

    Update the docs to default to afl-clang-lto. The afl-gcc (and other afl legacy fuzz engines) are still supported, though discouraged.

  2. doc: Update fuzzing docs for afl-clang-lto fab633d2db
  3. MarcoFalke force-pushed on Mar 9, 2021
  4. DrahtBot added the label Docs on Mar 9, 2021
  5. practicalswift commented at 10:44 PM on March 9, 2021: contributor

    Concept ACK

    Will verify instructions.

  6. jarolrod commented at 10:53 PM on March 9, 2021: member

    Concept ACK on moving from the stagnating afl to afl++

  7. MarcoFalke commented at 8:09 AM on March 10, 2021: member

    To compile afl-clang-lto, on Ubuntu you need clang-11 (or higher):

    sudo apt install build-essential python3-dev automake flex bison libglib2.0-dev libpixman-1-dev python3-setuptools clang lld llvm llvm-dev
    
  8. MarcoFalke commented at 10:06 AM on March 13, 2021: member

    The switch to afl++ is also being done by other major projects. E.g. https://github.com/google/oss-fuzz/pull/5046

  9. fanquake approved
  10. fanquake commented at 8:48 AM on March 15, 2021: member

    ACK fab633d2dbfed1efcc3a02061685d56327ae51fd - seems to work for me. Compiled and ran some fuzzers using Clang 11 on Bionic. Set llvm-config so that clang-11 would be used over clang (10).

    make[1]: Entering directory '/home/ubuntu/bitcoin/AFLplusplus'
    [+] llvm_mode detected llvm 10+, enabling neverZero implementation and c++14
    [+] llvm_mode detected llvm 11+, enabling afl-lto LTO implementation
    [+] shmat seems to be working.
    [*] Checking for working 'llvm-config'...
    [*] Checking for working '/usr/lib/llvm-11/bin/clang'...
    [*] Checking for matching versions of '/usr/lib/llvm-11/bin/clang' and 'llvm-config-11'
    [*] We have llvm-config version 11.0.0 with a clang version 11.0.0, good.
    
  11. MarcoFalke commented at 9:20 AM on March 15, 2021: member

    @practicalswift Anything left to do here?

  12. DrahtBot commented at 4:48 PM on March 15, 2021: member

    <!--4a62be1de6b64f3ed646cdc7932c8cf5-->

    🕵️ @harding has been requested to review this pull request as specified in the REVIEWERS file.

  13. jarolrod commented at 5:26 PM on March 15, 2021: member

    ACK fab633d2dbfed1efcc3a02061685d56327ae51fd, tested on Ubuntu Focal

    Ran through the instructions. The afl++ error messages let you know if you are missing any packages. Was able to build afl-clang-lto and run through the example thin-air-input test in the docs. Also tried building with llvm/clang-10 and ran through the same process with afl-clang-fast/fast++.

  14. MarcoFalke merged this on Mar 15, 2021
  15. MarcoFalke closed this on Mar 15, 2021

  16. MarcoFalke deleted the branch on Mar 15, 2021
  17. sidhujag referenced this in commit da07265c8b on Mar 16, 2021
  18. DrahtBot locked this on Aug 16, 2022

github-metadata-mirror

This is a metadata mirror of the GitHub repository bitcoin/bitcoin. This site is not affiliated with GitHub. Content is generated from a GitHub metadata backup.
generated: 2026-04-17 06:14 UTC

This site is hosted by @0xB10C
More mirrored repositories can be found on mirror.b10c.me