Add initial build.sh and Dockerfile for irssi#279
Add initial build.sh and Dockerfile for irssi#279inferno-chromium merged 1 commit intogoogle:masterfrom
Conversation
|
Thanks for your pull request. It looks like this may be your first contribution to a Google open source project. Before we can look at your pull request, you'll need to sign a Contributor License Agreement (CLA). 📝 Please visit https://cla.developers.google.com/ to sign. Once you've signed, please reply here (e.g.
|
|
I signed it! |
|
CLAs look good, thanks! |
|
|
||
| # configure script doesn't like the oss-fuzz CFLAGS | ||
| ./autogen.sh CFLAGS= | ||
| export LIB_FUZZING_ENGINE=/usr/lib/libFuzzingEngine.a |
There was a problem hiding this comment.
LIB_FUZZING_ENGINE is already defined, i will remove after landing.
|
Did you try verifying your fuzz target works using I see See https://github.com/google/oss-fuzz/blob/master/docs/fuzzer_environment.md#dependencies |
|
I tried with the ossfuzz/base-libfuzzer docker image and it worked. Changed last minute to ossfuzz/base-builder. I'll try verifying that it works with ossfuzz/base-builder locally. |
|
No, base-builder and base-libfuzzer are builder images and have dependencies installed in build.sh. But for ClusterFuzz, we test with base-runner image that does not the build time install dependencies. Made doc changes to make this more clear - fe049a4. python infra/helper.py run_fuzzer command use base-runner image (make sure to git pull to latest oss-fuzz code). |
|
@inferno-chromium - Thanks, it runs for me with I ran into an issue with the amount of output that irssi was generating when fuzzing it. My terminal eventually becomes unresponsive (whether or not the fuzzer is running inside of Docker). If irssi with this change wfm locally with |
|
@josephbisch, the best way to disable excessive logging is to do it during compilation. For example:
If For more info about the |
|
@josephbisch - check out @Dor1s comment for the answer. Regarding "python infra/helper.py run_fuzzer irssi irssi-fuzz" is similar to ClusterFuzz, but ClusterFuzz has an additional enforcer using Minijail for a secure environment, that is why /dev is unavailable (@oliverchang, can you confirm). Best to disable logging during compilation phase, otherwise close_fd_mask=3 is fine (remember that it will exclude all output, including any debug asserts that you want us to catch as crashes). |
|
@josephbisch , I've noticed your blog about fuzzing irssi: https://irssi.org/2017/05/12/fuzzing-irssi/ |
|
@kcc - Other irssi people showed me the coverage info, so I did see it. The particular function that is being fuzzed on oss-fuzz now (printtext_string) was chosen because it can be reached over the network by other clients and servers. I definitely think this is a case where it will help if I add more fuzz targets, since there is just a lot of irssi code that isn't reached by calling that one function. |
This report did not include fuzz targets with `.c++`, causing [previous report](https://llm-exp.oss-fuzz.com/Result-reports/scheduled/2024-05-18-weekly-all/benchmark/output-capnproto-_zn5capnp13dynamicstruct7builder5adopten2kj9stringptreons_6orphanins_12dynamicvalueeee/index.html) failed to show them.
run_tests.sh is used as part of Chronos with cached builds: https://github.com/google/oss-fuzz/tree/master/infra/experimental/chronos#check-tests ``` $ infra/experimental/chronos/check_tests.sh h3 c++ 277/283 Test #277: testCliUncompactCellsStdin3_test139 .............. Passed 0.01 sec Start 278: testCliUncompactCellsArg1_test139 278/283 Test #278: testCliUncompactCellsArg1_test139 ................ Passed 0.01 sec Start 279: testCliUncompactCellsArg2_test139 279/283 Test #279: testCliUncompactCellsArg2_test139 ................ Passed 0.01 sec Start 280: testCliUncompactCellsArg3_test139 280/283 Test #280: testCliUncompactCellsArg3_test139 ................ Passed 0.01 sec Start 281: testCliVertexToLatLng_test139 281/283 Test #281: testCliVertexToLatLng_test139 .................... Passed 0.01 sec Start 282: testCliNotVertexToLatLng_test139 282/283 Test #282: testCliNotVertexToLatLng_test139 ................. Passed 0.01 sec Start 283: testH3Memory_test140 283/283 Test #283: testH3Memory_test140 ............................. Passed 0.01 sec 100% tests passed, 0 tests failed out of 283 ``` Signed-off-by: David Korczynski <david@adalogics.com>
This integrates irssi fe-fuzz with oss-fuzz.
Thanks for providing this service!