From 58232e3ffb319d27b41cfe040cfea8e43a3fb7e9 Mon Sep 17 00:00:00 2001 From: practicalswift Date: Sun, 24 Jan 2021 18:45:44 +0000 Subject: fuzz: Avoid -fsanitize=integer warnings in fuzzing harnesses --- src/test/fuzz/crypto_chacha20_poly1305_aead.cpp | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) (limited to 'src/test/fuzz/crypto_chacha20_poly1305_aead.cpp') diff --git a/src/test/fuzz/crypto_chacha20_poly1305_aead.cpp b/src/test/fuzz/crypto_chacha20_poly1305_aead.cpp index 1f122082b2..0e1c44cded 100644 --- a/src/test/fuzz/crypto_chacha20_poly1305_aead.cpp +++ b/src/test/fuzz/crypto_chacha20_poly1305_aead.cpp @@ -45,18 +45,24 @@ FUZZ_TARGET(crypto_chacha20_poly1305_aead) assert(ok); }, [&] { + if (AdditionOverflow(seqnr_payload, static_cast(1))) { + return; + } seqnr_payload += 1; aad_pos += CHACHA20_POLY1305_AEAD_AAD_LEN; if (aad_pos + CHACHA20_POLY1305_AEAD_AAD_LEN > CHACHA20_ROUND_OUTPUT) { aad_pos = 0; + if (AdditionOverflow(seqnr_aad, static_cast(1))) { + return; + } seqnr_aad += 1; } }, [&] { - seqnr_payload = fuzzed_data_provider.ConsumeIntegral(); + seqnr_payload = fuzzed_data_provider.ConsumeIntegral(); }, [&] { - seqnr_aad = fuzzed_data_provider.ConsumeIntegral(); + seqnr_aad = fuzzed_data_provider.ConsumeIntegral(); }, [&] { is_encrypt = fuzzed_data_provider.ConsumeBool(); -- cgit v1.2.3