Kaitai Structure 0.9


Kaitai Structure 0.9

Recently, the next version of Kaitai Struct 0.9 has been released - a language for describing and parsing various binary formats (for example, network packets, image/audio/video files, databases, archives, containers, etc.). Despite the frivolous version number 0.9, this is a major release that includes developments over the past 2.5 years. During this time, the language has grown to a whole family of projects:

Language recognized by GitHub and is now used in more than 400 free / open source projects to parse all sorts of exotic data formats, ranging from reverse engineering proprietary game data filesending analysis of satellite communication protocols.

Of the main innovations of the 0.9 language, it is worth highlighting:

  • support for new target languages ​​(Python via Construct library, Nim, HTML documentation generation)
  • full support for modern C++ (smart pointers, no need to manually manage memory, fixes for all known memory leaks)
  • support for addressing nested types via foo::bar::baz syntax
  • support for validation of read data according to the described conditions (valid)
  • calculating the sizes of static data structures in bytes and bits (operators sizeof and bitsizeof)
  • formal description of the language in the form JSON Schemas, from which now documentation is generated

Source: linux.org.ru