Compare commits

...

4 Commits

Author SHA1 Message Date
tobtoht
8a53c96b12 Merge pull request #10181
32d9359 fuzz: fix some warnings (jeffro256)
2025-11-06 19:04:23 +00:00
tobtoht
cdbf147c8b Merge pull request #10182
c3ee9ac release: drop support for arm32 linux (tobtoht)
2025-11-06 19:03:51 +00:00
tobtoht
c3ee9ac707 release: drop support for arm32 linux 2025-11-01 12:06:22 +01:00
jeffro256
32d9359b9a fuzz: fix some warnings 2025-10-28 01:13:00 -05:00
6 changed files with 9 additions and 18 deletions

View File

@@ -38,10 +38,6 @@ jobs:
host: "riscv64-linux-gnu"
rust_host: "riscv64gc-unknown-linux-gnu"
packages: "g++-riscv64-linux-gnu"
- name: "ARM v7"
host: "arm-linux-gnueabihf"
rust_host: "armv7-unknown-linux-gnueabihf"
packages: "g++-arm-linux-gnueabihf"
- name: "ARM v8"
host: "aarch64-linux-gnu"
rust_host: "aarch64-unknown-linux-gnu"

View File

@@ -42,7 +42,6 @@ jobs:
toolchain:
- target: "x86_64-linux-gnu"
- target: "aarch64-linux-gnu"
- target: "arm-linux-gnueabihf"
- target: "riscv64-linux-gnu"
- target: "x86_64-w64-mingw32"
- target: "x86_64-unknown-freebsd"

View File

@@ -171,7 +171,7 @@ details.
Override the space-separated list of platform triples for which to perform a
bootstrappable build.
_(defaults to "x86\_64-linux-gnu aarch64-linux-gnu arm-linux-gnueabihf
_(defaults to "x86\_64-linux-gnu aarch64-linux-gnu
riscv64-linux-gnu x86\_64-w64-mingw32 x86\_64-unknown-freebsd
x86\_64-apple-darwin arm64-apple-darwin aarch64-linux-android")_

View File

@@ -90,7 +90,6 @@ mkdir -p "$VERSION_BASE"
# Default to building for all supported HOSTs (overridable by environment)
export HOSTS="${HOSTS:-x86_64-linux-gnu
aarch64-linux-gnu
arm-linux-gnueabihf
riscv64-linux-gnu
x86_64-w64-mingw32
x86_64-unknown-freebsd

View File

@@ -32,26 +32,26 @@ extern "C" int LLVMFuzzerTestOneInput(const uint8_t* data, size_t size) {
FuzzedDataProvider provider(data, size);
// Randomly choose multiple fuzz_targets to fuzz
int rpc_messages_to_send = provider.ConsumeIntegralInRange<int>(1, 16);
std::vector<int> selectors;
unsigned rpc_messages_to_send = provider.ConsumeIntegralInRange<unsigned>(1, 16);
std::vector<unsigned> selectors;
if (is_safe_mode) {
selectors.reserve(rpc_messages_to_send);
} else {
selectors.reserve(rpc_messages_to_send + priority_fuzz_targets.size());
for (int i = 0; i < priority_fuzz_targets.size(); ++i) {
for (unsigned i = 0; i < priority_fuzz_targets.size(); ++i) {
selectors.push_back(i);
}
// Randomly shuffle the selectors for priority fuzz targets
for (int i = 0; i < priority_fuzz_targets.size(); i++) {
int target = provider.ConsumeIntegralInRange<int>(0, priority_fuzz_targets.size() - 1);
for (unsigned i = 0; i < priority_fuzz_targets.size(); i++) {
unsigned target = provider.ConsumeIntegralInRange<unsigned>(0, priority_fuzz_targets.size() - 1);
std::swap(selectors[i], selectors[target]);
}
}
// Randomly select rpc functions to call
for (int i = 0; i < rpc_messages_to_send && provider.remaining_bytes() >= 2; ++i) {
int selector = provider.ConsumeIntegralInRange<int>(0, fuzz_targets.size() - 1);
for (unsigned i = 0; i < rpc_messages_to_send && provider.remaining_bytes() >= 2; ++i) {
unsigned selector = provider.ConsumeIntegralInRange<unsigned>(0, fuzz_targets.size() - 1);
selectors.push_back(selector);
}
@@ -70,7 +70,7 @@ extern "C" int LLVMFuzzerTestOneInput(const uint8_t* data, size_t size) {
// Disable bootstrap daemon
disable_bootstrap_daemon(*rpc_handler->rpc);
for (int selector : selectors) {
for (unsigned selector : selectors) {
try {
// Fuzz the target function
fuzz_targets[selector](*rpc_handler->rpc, provider);

View File

@@ -338,13 +338,10 @@ bool generate_random_blocks(cryptonote::core& core, FuzzedDataProvider& provider
}
}
bool added_txs = false;
for (const auto& tx_blob : cached_txs) {
cryptonote::tx_verification_context tvc;
bool accepted = core.handle_incoming_tx(tx_blob, tvc, cryptonote::relay_method::block, true);
if (accepted || tvc.m_added_to_pool) {
added_txs = true;
// Store legit hashes
cryptonote::transaction tx;
if (cryptonote::parse_and_validate_tx_from_blob(tx_blob, tx)) {