aboutsummaryrefslogtreecommitdiff
path: root/fuzz/fuzz_libinjection.c
diff options
context:
space:
mode:
authorIvan Nardi <12729895+IvanNardi@users.noreply.github.com>2023-02-16 18:04:34 +0100
committerGitHub <noreply@github.com>2023-02-16 18:04:34 +0100
commit4075324e2b81c11254a28362942a477594be6b28 (patch)
tree6d2412efd764f97cfd3bdefd9ee623248b718efb /fuzz/fuzz_libinjection.c
parent06d4f8c7e56816d20636dc3838fa3a9825ad2ac8 (diff)
fuzz: extend fuzz coverage (#1888)
Diffstat (limited to 'fuzz/fuzz_libinjection.c')
-rw-r--r--fuzz/fuzz_libinjection.c25
1 files changed, 25 insertions, 0 deletions
diff --git a/fuzz/fuzz_libinjection.c b/fuzz/fuzz_libinjection.c
new file mode 100644
index 000000000..9fd60107b
--- /dev/null
+++ b/fuzz/fuzz_libinjection.c
@@ -0,0 +1,25 @@
+#include "ndpi_api.h"
+#include "../src/lib/third_party/include/libinjection.h"
+#include "../src/lib/third_party/include/libinjection_xss.h"
+#include "../src/lib/third_party/include/libinjection_sqli.h"
+
+int LLVMFuzzerTestOneInput(const uint8_t *data, size_t size) {
+ char *query;
+ char fingerprint[8];
+
+ /* No memory allocations involved */
+
+ /* Libinjection: it wants null-terminated string */
+
+ query = malloc(size + 1);
+ memcpy(query, data, size);
+ query[size] = '\0';
+
+ libinjection_sqli(query, strlen(query), fingerprint);
+
+ libinjection_xss(query, strlen(query));
+
+ free(query);
+
+ return 0;
+}