README.txt 889 B

12345678910111213141516171819202122232425
  1. For fuzz testing civetweb, perform the following steps:
  2. - Switch to civetweb root directory
  3. - make clean
  4. First fuzz target: vary URI for HTTP1 server
  5. - make WITH_ALL=1 TEST_FUZZ=1
  6. - mv civetweb civetweb_fuzz1
  7. - sudo ./civetweb_fuzz1 -max_len=2048 fuzztest/url/
  8. Second fuzz target: vary HTTP1 request for HTTP1 server
  9. - make WITH_ALL=1 TEST_FUZZ=2
  10. - mv civetweb civetweb_fuzz2
  11. - sudo ./civetweb_fuzz2 -max_len=2048 -dict=fuzztest/http1.dict fuzztest/http1/
  12. Open issues:
  13. * Need "sudo" for container? (ASAN seems to needs it on WSL test)
  14. * let "make" create "civetweb_fuzz#" instead of "mv"
  15. * useful initial corpus and directory
  16. * Planned additional fuzz test:
  17. * vary HTTP1 response for HTTP1 client API
  18. * vary HTTP2 request for HTTP2 server (in HTTP2 feature branch)
  19. * use internal function to bypass socket (bottleneck)
  20. * where to put fuzz corpus?