summaryrefslogtreecommitdiff
path: root/md/writeup/datamatch.md
diff options
context:
space:
mode:
authorFreeArtMan <dos21h@gmail.com>2015-12-21 20:50:21 +0000
committerFreeArtMan <dos21h@gmail.com>2015-12-21 20:50:21 +0000
commit45d3c1d6287f8e2272436ed99109ff5dd1774254 (patch)
treeb1630a7375e397a5fe4f29e480c04144cb52c032 /md/writeup/datamatch.md
parent45f9bdfb904149e0048bcbd4de208232d0a81da8 (diff)
downloadmd-content-45d3c1d6287f8e2272436ed99109ff5dd1774254.tar.gz
md-content-45d3c1d6287f8e2272436ed99109ff5dd1774254.zip
Added project pages
Diffstat (limited to 'md/writeup/datamatch.md')
-rw-r--r--md/writeup/datamatch.md85
1 files changed, 85 insertions, 0 deletions
diff --git a/md/writeup/datamatch.md b/md/writeup/datamatch.md
new file mode 100644
index 0000000..d538296
--- /dev/null
+++ b/md/writeup/datamatch.md
@@ -0,0 +1,85 @@
+# 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
+* 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
+* support comments \ No newline at end of file