Coverage Report

Created: 2025-06-06 15:08

/root/bitcoin/src/test/fuzz/crypto_hkdf_hmac_sha256_l32.cpp
Line
Count
Source (jump to first uncovered line)
1
// Copyright (c) 2020-2021 The Bitcoin Core developers
2
// Distributed under the MIT software license, see the accompanying
3
// file COPYING or http://www.opensource.org/licenses/mit-license.php.
4
5
#include <crypto/hkdf_sha256_32.h>
6
#include <test/fuzz/FuzzedDataProvider.h>
7
#include <test/fuzz/fuzz.h>
8
#include <test/fuzz/util.h>
9
10
#include <cstdint>
11
#include <string>
12
#include <vector>
13
14
FUZZ_TARGET(crypto_hkdf_hmac_sha256_l32)
15
0
{
16
0
    FuzzedDataProvider fuzzed_data_provider{buffer.data(), buffer.size()};
17
18
0
    const std::vector<uint8_t> initial_key_material = ConsumeRandomLengthByteVector(fuzzed_data_provider);
19
20
0
    CHKDF_HMAC_SHA256_L32 hkdf_hmac_sha256_l32(initial_key_material.data(), initial_key_material.size(), fuzzed_data_provider.ConsumeRandomLengthString(1024));
21
0
    LIMITED_WHILE(fuzzed_data_provider.ConsumeBool(), 10000) {
22
0
        std::vector<uint8_t> out(32);
23
0
        hkdf_hmac_sha256_l32.Expand32(fuzzed_data_provider.ConsumeRandomLengthString(128), out.data());
24
0
    }
25
0
}