or run

tessl search
Log in

Version

Workspace
tessl
Visibility
Public
Created
Last updated
Describes
pypipkg:pypi/atheris@2.3.x
tile.json

tessl/pypi-atheris

tessl install tessl/pypi-atheris@2.3.0

A coverage-guided fuzzer for Python and Python extensions based on libFuzzer

Agent Success

Agent success rate when using this tile

91%

Improvement

Agent success rate improvement when using this tile compared to baseline

1.28x

Baseline

Agent success rate without this tile

71%

task.mdevals/scenario-8/

Integer Parser Fuzzer

Build a fuzzer that tests a simple integer parser which extracts and validates integers from binary input data.

Capabilities

Parse signed integers

  • Given fuzzer input, extract and parse a signed integer (4 bytes) and verify it's in the correct range @test

Parse integers in range

  • Given fuzzer input, extract an integer between 1 and 100 (inclusive) and verify it's within bounds @test

Parse integer lists

  • Given fuzzer input, extract a list of 5 integers (2 bytes each) and verify the list has correct length @test
  • Given fuzzer input, extract a list of 10 integers in range 0-255 and verify all values are within bounds @test

Implementation

@generates

API

def parse_signed_int(data: bytes, byte_count: int) -> int:
    """Parse a signed integer from bytes.

    Args:
        data: Raw byte data to parse
        byte_count: Number of bytes to use

    Returns:
        Parsed signed integer

    Raises:
        ValueError: If data is insufficient
    """
    pass

def parse_int_in_range(data: bytes, min_val: int, max_val: int) -> int:
    """Parse an integer within a specific range from bytes.

    Args:
        data: Raw byte data to parse
        min_val: Minimum value (inclusive)
        max_val: Maximum value (inclusive)

    Returns:
        Integer within the specified range

    Raises:
        ValueError: If data is insufficient or range is invalid
    """
    pass

def parse_int_list(data: bytes, count: int, bytes_per_int: int) -> list[int]:
    """Parse a list of integers from bytes.

    Args:
        data: Raw byte data to parse
        count: Number of integers to extract
        bytes_per_int: Bytes per integer

    Returns:
        List of parsed integers

    Raises:
        ValueError: If data is insufficient
    """
    pass

def parse_int_list_in_range(data: bytes, count: int, min_val: int, max_val: int) -> list[int]:
    """Parse a list of integers within a range from bytes.

    Args:
        data: Raw byte data to parse
        count: Number of integers to extract
        min_val: Minimum value for each integer (inclusive)
        max_val: Maximum value for each integer (inclusive)

    Returns:
        List of integers within the specified range

    Raises:
        ValueError: If data is insufficient or range is invalid
    """
    pass

def TestOneInput(data: bytes) -> None:
    """Main fuzzer entry point that tests all integer parsing functions.

    Args:
        data: Fuzzer-generated input bytes
    """
    pass

Dependencies { .dependencies }

atheris { .dependency }

Provides coverage-guided fuzzing capabilities for testing integer parsing functions.