All projects

SECURE SOFTWARE & TESTING

Sports Data Parser PoC

Testing a parser’s boundaries.

A C11 parser covering UTF-8 validation, numeric overflow and input limits, supported by compiler and sanitizer checks.

  • C11
  • GCC
  • Clang
  • ASan
  • UBSan

01 / Work sample

Concrete example: Input validation

Accept a valid boundary value and reject overflow with a specific error code.

Valid 32-bit upper boundInput4294967295,Max,4294967295Expected test resultSPORTS_PARSE_OK
ID exceeds the 32-bit limitInput4294967296,name,2Expected test resultSPORTS_PARSE_INVALID_ID

Inputs and expected status codes from the repository’s C tests. They have not been rerun here.

Original source

02 / Problem

Problem

External data can contain unexpected sizes, encodings or numeric values. A parser needs to reject these cases in a controlled way.

03 / My working focus

My working focus

A personal C11 parser project addressing field counts, UTF-8 and numeric limits. The work shown tests valid and overflowing inputs with explicit status codes and checks that invalid input leaves the existing record unchanged.

A personal project. The repository’s code, tests and documentation are the basis for this summary. AI-assisted development tools are also part of the workflow.

04 / Approach

Approach

  1. 01

    Build a bounded C11 parser for synthetic sports data.

  2. 02

    Use validation scenarios for UTF-8, numeric overflow and input limits.

  3. 03

    Run checks with GCC, Clang, AddressSanitizer and UndefinedBehaviorSanitizer.

05 / Technologies

Technologies

  • C11
  • GCC
  • Clang
  • ASan
  • UBSan

06 / Evidence & status

Evidence & status

The successful CI run reviewed on October 12, 2026 records 67 checks.

Synthetic lab project

CI records were reviewed on October 12, 2026. Counts reflect those runs; they are not an independent security audit.

07 / Limitations

Limitations

  • This is a synthetic lab and proof-of-concept project.
  • It is not evidence of a vulnerability or exploit discovered in a real target.
  • The existing tests do not guarantee security for every possible input.
Next projectTenantLens

CONTACT

Have a similar need?

Start by sharing the problem, your current system and what you want to achieve.

These buttons open your email app with a prepared subject and message. Nothing is sent until you send it.

Work and project inquiries

GitHub profile