fuzz-ndisc-rs: avoid assertion failure on samples which dont fit in pipe
authorZbigniew Jędrzejewski-Szmek <zbyszek@in.waw.pl>
Tue, 26 Feb 2019 12:12:53 +0000 (13:12 +0100)
committerZbigniew Jędrzejewski-Szmek <zbyszek@in.waw.pl>
Tue, 26 Feb 2019 12:14:56 +0000 (13:14 +0100)
Fixes https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=11605.

src/fuzz/fuzz-ndisc-rs.c
src/fuzz/fuzz-ndisc-rs.options [new file with mode: 0644]

index 3a1e60f..d8d256d 100644 (file)
@@ -43,6 +43,9 @@ int LLVMFuzzerTestOneInput(const uint8_t *data, size_t size) {
         _cleanup_(sd_event_unrefp) sd_event *e = NULL;
         _cleanup_(sd_ndisc_unrefp) sd_ndisc *nd = NULL;
 
+        if (size > 2048)
+                return 0;
+
         assert_se(sd_event_new(&e) >= 0);
         assert_se(sd_ndisc_new(&nd) >= 0);
         assert_se(sd_ndisc_attach_event(nd, e, 0) >= 0);
diff --git a/src/fuzz/fuzz-ndisc-rs.options b/src/fuzz/fuzz-ndisc-rs.options
new file mode 100644 (file)
index 0000000..60bd9b0
--- /dev/null
@@ -0,0 +1,2 @@
+[libfuzzer]
+max_len = 2048