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

Print about position in file

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

Tested

OS Arch
Linux 32/64bit intel
NetBSD 32bit intel

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