summaryrefslogtreecommitdiff
path: root/source3/aparser/basic.awk
diff options
context:
space:
mode:
Diffstat (limited to 'source3/aparser/basic.awk')
-rw-r--r--source3/aparser/basic.awk43
1 files changed, 43 insertions, 0 deletions
diff --git a/source3/aparser/basic.awk b/source3/aparser/basic.awk
new file mode 100644
index 0000000000..3dab8a4768
--- /dev/null
+++ b/source3/aparser/basic.awk
@@ -0,0 +1,43 @@
+function uint32_parser(elem) {
+ printf("\
+ if(!prs_uint32(\"%s\", ps, depth, &il->%s))\n\
+ return False;\n\
+", elem, elem);
+}
+
+function unistr2_parser(elem) {
+ printf("\
+ if(!prs_uint32(\"%s_ptr\", ps, depth, &il->%s_ptr))\n\
+ return False;\n\
+", elem, elem);
+}
+
+function buffer5_parser(elem) {
+ printf("\
+ if(!prs_uint32(\"%s_len\", ps, depth, &il->%s_len))\n\
+ return False;\n\
+ if(!prs_uint32(\"%s_ptr\", ps, depth, &il->%s_ptr))\n\
+ return False;\n\
+", elem, elem, elem, elem);
+}
+
+function nttime_parser(elem) {
+ printf("\
+ if(!smb_io_time(\"%s\", &il->%s, ps, depth))\n\
+ return False;\n\
+", elem, elem);
+}
+
+function uint64_parser(elem) {
+ printf("\
+ if(!prs_uint64(\"%s\", ps, depth, &il->%s))\n\
+ return False;\n\
+", elem, elem);
+}
+
+function generic_parser(type, elem) {
+ printf("\
+ if(!%s(\"%s\", &il->%s, ps, depth))\n\
+ return False;\n\
+", "io_"tolower(type), elem, elem);
+}