diff --git a/Meta/Lagom/Fuzzers/FuzzHIDReportDescriptor.cpp b/Meta/Lagom/Fuzzers/FuzzHIDReportDescriptor.cpp new file mode 100644 index 00000000000..4d20258ef89 --- /dev/null +++ b/Meta/Lagom/Fuzzers/FuzzHIDReportDescriptor.cpp @@ -0,0 +1,15 @@ +/* + * Copyright (c) 2025, Sönke Holz + * + * SPDX-License-Identifier: BSD-2-Clause + */ + +#include + +extern "C" int LLVMFuzzerTestOneInput(u8 const* data, size_t size) +{ + AK::set_debug_enabled(false); + HID::ReportDescriptorParser parser { { data, size } }; + (void)parser.parse(); + return 0; +} diff --git a/Meta/Lagom/Fuzzers/fuzzers.cmake b/Meta/Lagom/Fuzzers/fuzzers.cmake index 07c21cbae45..85a30dda64f 100644 --- a/Meta/Lagom/Fuzzers/fuzzers.cmake +++ b/Meta/Lagom/Fuzzers/fuzzers.cmake @@ -14,6 +14,7 @@ set(FUZZER_TARGETS GIFLoader GzipDecompression GzipRoundtrip + HIDReportDescriptor HttpRequest ICCProfile ICOLoader @@ -89,6 +90,7 @@ set(FUZZER_DEPENDENCIES_Gemini LibGemini) set(FUZZER_DEPENDENCIES_GIFLoader LibGfx) set(FUZZER_DEPENDENCIES_GzipDecompression LibCompress) set(FUZZER_DEPENDENCIES_GzipRoundtrip LibCompress) +set(FUZZER_DEPENDENCIES_HIDReportDescriptor LibHID) set(FUZZER_DEPENDENCIES_HttpRequest LibHTTP) set(FUZZER_DEPENDENCIES_ICCProfile LibGfx) set(FUZZER_DEPENDENCIES_ICOLoader LibGfx) diff --git a/Userland/Utilities/test-fuzz.cpp b/Userland/Utilities/test-fuzz.cpp index 13a949b057f..abff69f1e56 100644 --- a/Userland/Utilities/test-fuzz.cpp +++ b/Userland/Utilities/test-fuzz.cpp @@ -28,6 +28,7 @@ T(GIFLoader) \ T(GzipDecompression) \ T(GzipRoundtrip) \ + T(HIDReportDescriptor) \ T(HttpRequest) \ T(ICCProfile) \ T(ICOLoader) \