grub-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[PATCH 4/6] tests: create a fuzzer for the jpeg image format


From: Daniel Axtens
Subject: [PATCH 4/6] tests: create a fuzzer for the jpeg image format
Date: Tue, 28 Mar 2023 01:04:57 +1100

As with png, but this time testing jpeg.

Signed-off-by: Daniel Axtens <dja@axtens.net>
---
 .gitignore                  |  1 +
 Makefile.util.def           | 21 +++++++++++++++++++++
 grub-core/tests/fuzz/jpeg.c |  3 +++
 3 files changed, 25 insertions(+)
 create mode 100644 grub-core/tests/fuzz/jpeg.c

diff --git a/.gitignore b/.gitignore
index 05cb43189156..1e0340662033 100644
--- a/.gitignore
+++ b/.gitignore
@@ -37,6 +37,7 @@ grub-emu
 grub-emu-lite
 grub-emu-lite.exe
 grub-emu.exe
+grub-fuzz-jpeg
 grub-fuzz-png
 grub-macho2img
 grub_emu_init.c
diff --git a/Makefile.util.def b/Makefile.util.def
index decced46ec19..49d2c67a29f1 100644
--- a/Makefile.util.def
+++ b/Makefile.util.def
@@ -1487,3 +1487,24 @@ program = {
 
   condition = COND_ENABLE_FUZZERS;
 };
+
+program = {
+  name = grub-fuzz-jpeg;
+
+  nostrip = common;
+
+  common = grub-core/video/readers/jpeg.c;
+  common = grub-core/video/bitmap.c;
+  common = grub-core/io/bufio.c;
+
+  extra_dist = grub-core/tests/fuzz/imageXX.c;
+  common = grub-core/tests/fuzz/jpeg.c;
+
+  ldadd = 'libfuzzkern.a grub-core/lib/gnulib/libgnu.a $(LIBDEVMAPPER)';
+
+  cppflags = '-DFUZZING_BUILD_MODE_UNSAFE_FOR_PRODUCTION';
+  cflags='-fsanitize=fuzzer-no-link';
+  ldflags='-fsanitize=fuzzer';
+
+  condition = COND_ENABLE_FUZZERS;
+};
diff --git a/grub-core/tests/fuzz/jpeg.c b/grub-core/tests/fuzz/jpeg.c
new file mode 100644
index 000000000000..f23923d91789
--- /dev/null
+++ b/grub-core/tests/fuzz/jpeg.c
@@ -0,0 +1,3 @@
+#define IMG_EXTENSION "jpg"
+#define MODULE_INIT grub_jpeg_init
+#include "imageXX.c"
-- 
2.25.1




reply via email to

[Prev in Thread] Current Thread [Next in Thread]