Official Release v1.0.0
About bug fixing
This official release resolved a number of panic bugs (#39, #38, #41, #40, #30, #26) that were reported by users last year. We also made a lot of attempts to avoid PromptFuzz panic when it encounters corner cases in LLM-generated harnesses (79d4bb8, 212689b, b3d0931, a3565bd, 58c2d79, 368cf80, 07ecf25, 7519850, f7773cd, 7574ce0, 42f8e0d).
About network isolation
Since testing network libraries could be dangerous, such as testing the DNS parsing library (c-ares), even in the Docker environment. We cannot disable the entire network for Docker containers as we need to send LLM requests, so we adopted bwrap to isolate the network effect in the library testing procedures (e807559, df5a064, 16cde61).
Support new libraries
Some users asked for the support of more popular libraries, we supported these new ones: expat, ffmpeg, freetype, liblouis, libpsl, libxml2, libyaml, opencv, openssl, zstd. To support these libraries, each one costs us nearly 8 hours. This is truely a hard work as we need to handle the library building and various fuzzing instrumentation properly. Thanks to those contributors who provided their build scripts.
Support AFLPlusPlus
We provided scripts to support AFLPlusPlus in fuzzing PromptFuzz-generated drivers. See AFLPlusPlus how to use it.