libmicrohttpd2

HTTP server C library (MHD 2.x, alpha)
Log | Files | Refs | README | LICENSE

README (1063B)


      1 Introduction
      2 ============
      3 
      4 This README describes how to prepare MHD2 for fuzzing
      5 with "zzuf".
      6 
      7 Preparation
      8 ===========
      9 
     10 To run the fuzzer tests, you first need to install "zzuf".
     11 You may furthermore need to build MHD using:
     12 
     13  ./configure OTHER_OPTIONS mhd_cv_have_func_accept4=no
     14 
     15 to ensure MHD2 does not use "accept4()" which is not supported
     16 by zzuf.  Naturally, the OTHER_OPTIONS should also be set to catch
     17 as many errors as possible, such as --enable-build-type=release-hardened.
     18 Note that --enable-build-type=debug does not work as ASAN and zzuf
     19 both want to preload libraries and step on each others toes.
     20 
     21 Fuzzing
     22 =======
     23 
     24 You should now be able to run "zzuf_test_runner.sh" manually.
     25 This may take a bit.
     26 
     27 Note that the console output will contain a ton of error messages
     28 as MHD logging is not enabled and fuzzing naturally creates tons of
     29 malformed requests. That is expected!
     30 
     31 Options
     32 =======
     33 
     34 You may
     35 
     36 $ export MHD_TEST_FUZZING=$ROUNDS
     37 
     38 to change the number of rounds of fuzzing. Set "ZZUF_FLAGS" to
     39 pass additional options (like a new seed) to zzuf.