Skip to content

Epic: Type System Expansion #54

@unclesp1d3r

Description

@unclesp1d3r

Summary

Expand the type system from 4 basic types to full coverage of GNU file's magic format type specifiers.

Current State

Only 4 of 33+ types implemented: byte, short, long, string

Tracking

v0.2.0 - Core Types

v0.3.0 - Advanced Types

Success Criteria

All types needed to parse system magic databases (/usr/share/file/magic/) are supported.

Priority Order

  1. Quad (needed for modern binary formats)
  2. Regex/search (needed for text detection - JSON, scripts, XML)
  3. Meta-types (needed for rule composition and indirect format detection)
  4. Date types (archives, filesystem images)
  5. Float/double (scientific data, image metadata)
  6. Pstring (rare, but needed for full compat)
  7. UCS-2 strings (lestring16/bestring16, NTFS/FAT/Windows formats)
  8. String/search flag semantics (case-insensitive, whitespace, /s anchor) — common in shebang and scan rules
  9. ID3 synchsafe (i/I) — needed for accurate MP3 inner-stream detection

Metadata

Metadata

Assignees

Labels

enhancementNew feature or requestepicevaluatorRule evaluation engine and logicparserMagic file parsing components and grammarpriority:highImportant, significant compatibility or architecture impactrequirementstype:feature

Type

Projects

No projects

Relationships

None yet

Development

No branches or pull requests

Issue actions