From ea0d6a0b3dc7b04bd4184d9de914ee7eb3b9acbe Mon Sep 17 00:00:00 2001 From: Alex Hultman Date: Wed, 13 Mar 2019 17:21:05 +0100 Subject: [PATCH] Also fuzz handshakes --- fuzzing/Handshake.cpp | 20 ++++++++++++++++++++ fuzzing/Makefile | 1 + 2 files changed, 21 insertions(+) create mode 100644 fuzzing/Handshake.cpp diff --git a/fuzzing/Handshake.cpp b/fuzzing/Handshake.cpp new file mode 100644 index 0000000..39f5ba8 --- /dev/null +++ b/fuzzing/Handshake.cpp @@ -0,0 +1,20 @@ +/* This is a fuzz test of the websocket handshake generator */ + +#define WIN32_EXPORT + +#include +#include + +/* We test the websocket handshake generator */ +#include "../src/libwshandshake.hpp" + +extern "C" int LLVMFuzzerTestOneInput(const uint8_t *data, size_t size) { + + char output[28]; + if (size >= 24) { + WebSocketHandshake::generate((char *) data, output); + } + + return 0; +} + diff --git a/fuzzing/Makefile b/fuzzing/Makefile index 817cbed..f6fd107 100644 --- a/fuzzing/Makefile +++ b/fuzzing/Makefile @@ -2,3 +2,4 @@ default: clang++ -std=c++17 -fsanitize=address,fuzzer -O3 WebSocket.cpp -o WebSocket clang++ -std=c++17 -fsanitize=address,fuzzer -O3 Http.cpp -o Http clang++ -std=c++17 -fsanitize=address,fuzzer -O3 Extensions.cpp -o Extensions + clang++ -std=c++17 -fsanitize=address,fuzzer -O3 Handshake.cpp -o Handshake