aboutsummaryrefslogtreecommitdiffstats

DM - data match mini data language

mini language to match some data in files it could be just binary file or it could be some bookmarks and when data is found script output some info about that

Examples

Here how looks scripts to bookmark some position

0x01 "byte one"
0x02 "byte two"

This could be used to bookmark stuff in files

Check bytes in position

Here is example where output will tell if its 32/64bit file and with kind of file type it is relocatable/executable/shared/core elf.

0x0-0x3
    "magic number"
0x4
    if (0x01) "32 bit elf"
    if (0x02) "64 bit elf"
0x5
    if (0x01) "little endian"
    if (0x02) "big endian"
0x10
    if (0x1) "relocatable ELF"
    if (0x2) "executable ELF"
    if (0x3) "shared ELF"
    if (0x4) "Core ELF what that"

Compiling

just make should work

make

if not then probably you dont have ragel just remove it from makefile and it should work fine as ragel generated *.c file is allready included

Source

git clone http://git.main.lv/cgit.cgi/dm.git

or

git clone https://github.com/FreeArtMan/dm.git

main development site is http://main.lv and main git repo is http://git.main.lv

Future

Future features will be added if there will practical demand for them if there will be some moment when they will be really needed.

Could be added * support for if's in the row * add binary masks * generation of csv table * genrate c struct to embed in programms * genrate other languages (lua/python/sh) * work with pipe could cat some /dev/random or so * support streamed data