1
0
mirror of https://github.com/samba-team/samba.git synced 2025-01-12 09:18:10 +03:00
Commit Graph

29 Commits

Author SHA1 Message Date
Luke Leighton
7db13bd538 SMBnttrans. modified io_uint8s to return address of actual data instead
of a copy, on unmarshalling.  removed fstring, made it io_string,
did same thing.  io_string() and io_wstring() should be wrapped in
a STRING typedef which is bit-switched on FLG2:Unicode.
0001-01-01 00:00:00 +00:00
Luke Leighton
cff62bb10a SMBtrans response. 0001-01-01 00:00:00 +00:00
Luke Leighton
42c7f3797f SMBtrans and SMBtrans2, some of it. 0001-01-01 00:00:00 +00:00
Luke Leighton
9f9a9a69b6 SMBlockingX 0001-01-01 00:00:00 +00:00
Luke Leighton
3f976e7139 hack to get setprinter working, level2, null sec desc. 0001-01-01 00:00:00 +00:00
Luke Leighton
96fd33b898 cifs parser. 0001-01-01 00:00:00 +00:00
Andrew Tridgell
5f1e8422d0 more aparser stuff - we now handle everything but the idl headers in srvsvc.idl 0001-01-01 00:00:00 +00:00
Andrew Tridgell
83b787f57e error check in vluke.c
more conversion from idl to .struct of srvsvc
0001-01-01 00:00:00 +00:00
Andrew Tridgell
85a341002c started converting matty's srvsvc.idl to a .struct file 0001-01-01 00:00:00 +00:00
Andrew Tridgell
cf8d4c42e2 added primitive define macros
started converting matty's srvsvc.idl to a .struct file
0001-01-01 00:00:00 +00:00
Andrew Tridgell
ab0beaf357 - added typedefs
- added parse error checking
- made parser more flexible
0001-01-01 00:00:00 +00:00
Andrew Tridgell
2e0a39204a minor parse updates 0001-01-01 00:00:00 +00:00
Andrew Tridgell
77ceb6a3c1 a useful script, just go "./build foo.struct" and you get a full
vluke program for all structures in the foo.strct file
0001-01-01 00:00:00 +00:00
Andrew Tridgell
6a3e7ba4f0 the vluke program now takes a structure name on the command line 0001-01-01 00:00:00 +00:00
Andrew Tridgell
03fbe1b151 take the sructure name to run through vluke on the command line 0001-01-01 00:00:00 +00:00
Andrew Tridgell
ca8f1e92ad added the ".trailer" type, to mark where a packet turns into a trailer
this now gives us enough to parse complete function calls, including
the return values
0001-01-01 00:00:00 +00:00
Andrew Tridgell
1df80cd1e8 another awk parser update
we can now handle arrays of structures, pointers to structures,
pointers in unions etc
0001-01-01 00:00:00 +00:00
Andrew Tridgell
15646ebd84 started update to handle arbitrary arrays
note: this code is currently broken.
0001-01-01 00:00:00 +00:00
Andrew Tridgell
c75919a7b9 need to allocate the union pointer 0001-01-01 00:00:00 +00:00
Andrew Tridgell
f6353bf122 align at the end of every structure parser 0001-01-01 00:00:00 +00:00
Andrew Tridgell
968b381cd3 use grow_size to determine size of dump 0001-01-01 00:00:00 +00:00
Andrew Tridgell
d8c988694c added grow_size to prs structure 0001-01-01 00:00:00 +00:00
Andrew Tridgell
05fa3ea50a add uint16 support, start to parse more of spoolss 0001-01-01 00:00:00 +00:00
Andrew Tridgell
6aa51dc1a5 moved *.tpl templates into templates/ subdirectory 0001-01-01 00:00:00 +00:00
Andrew Tridgell
14ded82dc9 vastly improved awk based code generator
now handles recursive function definitions, unions etc
it is sufficient for some basic types like UNISTR2 and BUFFER5
to be defined in the *.struct file and used successfully

this generator uses templates (in *.tpl files) for all code
generation, allowing easy replacement of the backend functions
0001-01-01 00:00:00 +00:00
Andrew Tridgell
6790d6c589 removed old files ready for new awk parser 0001-01-01 00:00:00 +00:00
Andrew Tridgell
70f68209da renamed the harness program to vluke (for "virtual luke")
added a couple of sample .prs files
0001-01-01 00:00:00 +00:00
Andrew Tridgell
57a6cb52e6 preliminary support for unions 0001-01-01 00:00:00 +00:00
Andrew Tridgell
7bc87d20ea this is a awk based code generator. Very primitive at the moment, but
it was sufficient to generate info level 6 of the add printer driver
for spoolss

It has two capabilities:

1) generate the header and C code for parsing a structure, given a
   *.struct file that describes the structure. Evetually I hope to
   make *.struct compatible with MIDL.

2) it provides a harness that can read a binary data file from
   prs_dump() which contains real data from a client and display the
   parse of it from the output of the awk parser. This allows you to
   "play" with the structure definition until it comes out right, it
   takes just a few mimutes of playing with the .struct file to work
   out the right layout.

all this is very primitive right now. I hope next to completely
replace the spoolss parser with a single .struct file that describes
all the structures, and auto-generates working code. That will require
quite a bit more work.
0001-01-01 00:00:00 +00:00