infix
A JIT-Powered FFI Library for C
Loading...
Searching...
No Matches
fuzz_abi.c File Reference

A fuzzer targeting the ABI-specific classification logic. More...

#include "fuzz_helpers.h"
Include dependency graph for fuzz_abi.c:

Functions

static void FuzzTest (fuzzer_input in)
 
int LLVMFuzzerTestOneInput (const uint8_t *data, size_t size)
 

Detailed Description

A fuzzer targeting the ABI-specific classification logic.

Copyright (c) 2025 Sanko Robinson

This source code is dual-licensed under the Artistic License 2.0 or the MIT License. You may choose to use this code under the terms of either license.

SPDX-License-Identifier: (Artistic-2.0 OR MIT)

The documentation blocks within this file are licensed under the Creative Commons Attribution 4.0 International License (CC BY 4.0).

SPDX-License-Identifier: CC-BY-4.0

This harness is a highly-focused stress test of the prepare_*_call_frame functions. It uses the shared helpers to generate a pool of random infix_type objects within a single memory arena. It then constructs random function signatures from this pool and calls the ABI classification logic directly.

The test's only goal is to find inputs that cause crashes, hangs, or sanitizer errors within the ABI classifiers.

Function Documentation

◆ FuzzTest()

static void FuzzTest ( fuzzer_input  in)
static

◆ LLVMFuzzerTestOneInput()

int LLVMFuzzerTestOneInput ( const uint8_t *  data,
size_t  size 
)