diff --git a/tests/fuzzing/eap-aka-peer/eap-aka-peer.c b/tests/fuzzing/eap-aka-peer/eap-aka-peer.c index db06ed52b..ce7b0438c 100644 --- a/tests/fuzzing/eap-aka-peer/eap-aka-peer.c +++ b/tests/fuzzing/eap-aka-peer/eap-aka-peer.c @@ -91,6 +91,7 @@ int LLVMFuzzerTestOneInput(const uint8_t *data, size_t size) struct eap_sm *sm; void *priv; struct eap_method_ret ret; + unsigned int count = 0; wpa_fuzzer_set_debug_level(); @@ -104,7 +105,7 @@ int LLVMFuzzerTestOneInput(const uint8_t *data, size_t size) pos = data; end = pos + size; - while (end - pos > 2) { + while (end - pos > 2 && count < 100) { u16 flen; struct wpabuf *buf, *req; @@ -121,6 +122,7 @@ int LLVMFuzzerTestOneInput(const uint8_t *data, size_t size) wpabuf_free(req); wpabuf_free(buf); pos += flen; + count++; } registered_eap_method->deinit(sm, priv); diff --git a/tests/fuzzing/eap-sim-peer/eap-sim-peer.c b/tests/fuzzing/eap-sim-peer/eap-sim-peer.c index b6798ee47..743a94bbf 100644 --- a/tests/fuzzing/eap-sim-peer/eap-sim-peer.c +++ b/tests/fuzzing/eap-sim-peer/eap-sim-peer.c @@ -85,6 +85,7 @@ int LLVMFuzzerTestOneInput(const uint8_t *data, size_t size) struct eap_sm *sm; void *priv; struct eap_method_ret ret; + unsigned int count = 0; wpa_fuzzer_set_debug_level(); @@ -98,7 +99,7 @@ int LLVMFuzzerTestOneInput(const uint8_t *data, size_t size) pos = data; end = pos + size; - while (end - pos > 2) { + while (end - pos > 2 && count < 100) { u16 flen; struct wpabuf *buf, *req; @@ -115,6 +116,7 @@ int LLVMFuzzerTestOneInput(const uint8_t *data, size_t size) wpabuf_free(req); wpabuf_free(buf); pos += flen; + count++; } registered_eap_method->deinit(sm, priv);