diff options
author | Daniel Baumann <daniel.baumann@progress-linux.org> | 2024-04-10 20:34:10 +0000 |
---|---|---|
committer | Daniel Baumann <daniel.baumann@progress-linux.org> | 2024-04-10 20:34:10 +0000 |
commit | e4ba6dbc3f1e76890b22773807ea37fe8fa2b1bc (patch) | |
tree | 68cb5ef9081156392f1dd62a00c6ccc1451b93df /epan/dissectors/pidl/README | |
parent | Initial commit. (diff) | |
download | wireshark-e4ba6dbc3f1e76890b22773807ea37fe8fa2b1bc.tar.xz wireshark-e4ba6dbc3f1e76890b22773807ea37fe8fa2b1bc.zip |
Adding upstream version 4.2.2.upstream/4.2.2
Signed-off-by: Daniel Baumann <daniel.baumann@progress-linux.org>
Diffstat (limited to 'epan/dissectors/pidl/README')
-rw-r--r-- | epan/dissectors/pidl/README | 107 |
1 files changed, 107 insertions, 0 deletions
diff --git a/epan/dissectors/pidl/README b/epan/dissectors/pidl/README new file mode 100644 index 00000000..d9677b70 --- /dev/null +++ b/epan/dissectors/pidl/README @@ -0,0 +1,107 @@ +A note about PIDL generated files +================================= + +Quick guide +=========== + +Run 'make -f Makefile.pidl all' inside the pidl folder to generate all the dissectors and place +them in the epan/dissectors folder. + +Complete infos +============== + +The following files: +../packet-dcerpc-atsvc.h +../packet-dcerpc-budb.c +../packet-dcerpc-budb.h +../packet-dcerpc-butc.c +../packet-dcerpc-butc.h +../packet-dcerpc-dfs.h +../packet-dcerpc-dnsserver.h +../packet-dcerpc-drsuapi.c +../packet-dcerpc-drsuapi.h +../packet-dcerpc-dssetup.h +../packet-dcerpc-efs.h +../packet-dcerpc-eventlog.h +../packet-dcerpc-frsrpc.h +../packet-dcerpc-frstrans.h +../packet-dcerpc-initshutdown.h +../packet-dcerpc-iwbemlevel1login.h +../packet-dcerpc-lsa.h +../packet-dcerpc-mapi.h +../packet-dcerpc-misc.h +../packet-dcerpc-nspi.h +../packet-dcerpc-rfr.h +../packet-dcerpc-samr.h +../packet-dcerpc-srvsvc.h +../packet-dcerpc-winreg.h +../packet-dcerpc-wkssvc.h +../packet-dcerpc-wzcsvc.h + +are automatically generated via a tool called "pidl"; you shouldn't +modify them manually. + +The pidl tool is maintained by the Samba project (http://samba.org, +samba-technical@samba.org). We have a version in ../../../tools/pidl; +it currently differs from the Samba version only in its Wireshark-parser +generator, as we had to change it to reflect some API differences +between the current Wireshark release and the development trunk. + +The Samba version can be fetched from their git tree: + git clone git://git.samba.org/samba.git + +Running pidl +============ + +You have to run the pidl command inside the pidl folder of the wireshark +source tree. + +The command to compile file: + ../../../tools/pidl/pidl --includedir . --ws-parser -- <idl-file> + ^^^ + This is *VERY* important +The command generates 2 files: + packet-dcerpc-<interfacename>.h + packet-dcerpc-<interfacename>.c + +For instance, with the atsvc.idl, the command will be: + + ../../../tools/pidl/pidl --includedir . --ws-parser -- atsvc.idl + +This will generate 2 files: + packet-dcerpc-atsvc.h + packet-dcerpc-atsvc.c + +If you run outside the dissectors/pidl directory, this *will* result in a +warning such as: + + atsvc.idl:5:23: idl_types.h: No such file or directory + +and *may* result in additional warnings such as: + + Warning: No conformance file `initshutdown.cnf' + Unable to handle string with flags STR_LEN4|STR_NOTERM at /usr/lib/perl5/site_perl/5.8.6/Parse/Pidl/Wireshark/NDR.pm line 283. + +Notes about the in-tree pidl +============================ + +To allow building Wireshark pidl dissectors without having to +*explicitly* access a remote git repository, and to allow us to make +changes to the Wireshark parser generator that the Samba developers +might not want to make until a new major release of Wireshark comes out, +so as to allow users to build dissectors to run in the current Wireshark +release, a copy of pidl is located in tools/pidl. + +Not compiling idl +================= +As of September 26, 2014, the following idl have issues when generating +and compiling: + +pidl complains that inline arrays aren't supported for these: + + dnsserver.idl + eventlog.idl + +pidl generates possibly-incorrect code for these - this needs checking: + + rfr/rfr.idl |