From 3eb5a106ffa6678e23c6bc244e843e264cae9b31 Mon Sep 17 00:00:00 2001 From: Jonathan Hui Date: Fri, 22 Feb 2019 09:00:23 -0800 Subject: [PATCH] [fuzz] process pending tasklets to increase coverage (#3617) --- tests/fuzz/cli_uart_received.cpp | 6 ++++++ tests/fuzz/ip6_send.cpp | 6 ++++++ tests/fuzz/ncp_uart_received.cpp | 6 ++++++ tests/fuzz/radio_receive_done.cpp | 6 ++++++ 4 files changed, 24 insertions(+) diff --git a/tests/fuzz/cli_uart_received.cpp b/tests/fuzz/cli_uart_received.cpp index 7b35a869d..b2c70105c 100644 --- a/tests/fuzz/cli_uart_received.cpp +++ b/tests/fuzz/cli_uart_received.cpp @@ -33,6 +33,7 @@ #include #include #include +#include #include #include #include @@ -65,6 +66,11 @@ extern "C" int LLVMFuzzerTestOneInput(const uint8_t *data, size_t size) otPlatUartReceived(buf, (uint16_t)size); + while (otTaskletsArePending(instance)) + { + otTaskletsProcess(instance); + } + exit: if (buf != NULL) diff --git a/tests/fuzz/ip6_send.cpp b/tests/fuzz/ip6_send.cpp index 675ec7ca0..4431c20f3 100644 --- a/tests/fuzz/ip6_send.cpp +++ b/tests/fuzz/ip6_send.cpp @@ -32,6 +32,7 @@ #include #include #include +#include #include #include @@ -71,6 +72,11 @@ extern "C" int LLVMFuzzerTestOneInput(const uint8_t *data, size_t size) message = NULL; + while (otTaskletsArePending(instance)) + { + otTaskletsProcess(instance); + } + exit: if (message != NULL) diff --git a/tests/fuzz/ncp_uart_received.cpp b/tests/fuzz/ncp_uart_received.cpp index 7e42fb163..edf3f6ceb 100644 --- a/tests/fuzz/ncp_uart_received.cpp +++ b/tests/fuzz/ncp_uart_received.cpp @@ -33,6 +33,7 @@ #include #include #include +#include #include #include #include @@ -65,6 +66,11 @@ extern "C" int LLVMFuzzerTestOneInput(const uint8_t *data, size_t size) otPlatUartReceived(buf, (uint16_t)size); + while (otTaskletsArePending(instance)) + { + otTaskletsProcess(instance); + } + exit: if (buf != NULL) diff --git a/tests/fuzz/radio_receive_done.cpp b/tests/fuzz/radio_receive_done.cpp index 6b84214f1..b41158f38 100644 --- a/tests/fuzz/radio_receive_done.cpp +++ b/tests/fuzz/radio_receive_done.cpp @@ -32,6 +32,7 @@ #include #include #include +#include #include #include #include @@ -69,6 +70,11 @@ extern "C" int LLVMFuzzerTestOneInput(const uint8_t *data, size_t size) otPlatRadioReceiveDone(instance, &frame, OT_ERROR_NONE); + while (otTaskletsArePending(instance)) + { + otTaskletsProcess(instance); + } + exit: if (buf != NULL)