forked from osmocom/wireshark
Updates to:
suggest using our version of pidl, given that its Wireshark parser generator has changes to support the current internal Wireshark APIs for dissectors; suggest using "--includedir ." to make IDL files in subdirectories of epan/dissectors/pidl work; update the list of IDL files with issues; reformat to 80x66 (if it's good enough for Herman Hollerith, it's good enough for me!). svn path=/trunk/; revision=53533
This commit is contained in:
parent
de2a922b55
commit
cafef8b111
|
@ -3,11 +3,10 @@ A note about PIDL generated files
|
|||
|
||||
Quick guide
|
||||
===========
|
||||
rsync -av rsync.samba.org::ftp/pub/unpacked/samba_4_0_test/pidl .
|
||||
|
||||
for file in *.idl; do
|
||||
for file in *.idl */*.idl; do
|
||||
echo "Generating dissector for $file"
|
||||
./pidl/pidl --ws-parser -- $file;
|
||||
../../../tools/pidl/pidl --includedir . --ws-parser -- $file;
|
||||
done
|
||||
cp packet-dcerpc*.* ..
|
||||
|
||||
|
@ -41,35 +40,35 @@ The following files:
|
|||
../packet-dcerpc-wkssvc.h
|
||||
../packet-dcerpc-wzcsvc.h
|
||||
|
||||
Are automatically generated via a tool called "pidl", you shouldn't modify them manually.
|
||||
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 recommend to fetch a copy of the git tree of Samba to get the tool:
|
||||
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
|
||||
|
||||
Or if you are just interested to run pidl you could fetch it via rsync:
|
||||
rsync -av rsync.samba.org::ftp/pub/unpacked/samba_4_0_test/pidl .
|
||||
|
||||
If both solution are not applicable you can use the copy that is located in the
|
||||
tool folder but it might be a bit outdated.
|
||||
|
||||
Running pidl
|
||||
============
|
||||
|
||||
You have to run the pidl command inside the pidl folder of the wireshark source tree
|
||||
You have to run the pidl command inside the pidl folder of the wireshark
|
||||
source tree.
|
||||
|
||||
The command to compile file:
|
||||
<path_to_pidl>pidl --ws-parser -- <idl-file>
|
||||
^^^
|
||||
This is *VERY* important
|
||||
../../../tools/pidl/pidl --includedir . --ws-parser -- <idl-file>
|
||||
^^^
|
||||
This is *VERY* important
|
||||
The command generate 2 files:
|
||||
packet-dcerpc-<interfacename>.h
|
||||
packet-dcerpc-<interfacename>.c
|
||||
|
||||
For instance with a pidl copy in /usr/local/src/samba/pidl and the atsvc.idl, the
|
||||
command will be:
|
||||
For instance, with the atsvc.idl, the command will be:
|
||||
|
||||
/usr/local/src/samba/pidl/pidl --ws-parser -- atsvc.idl
|
||||
../../../tools/pidl/pidl --includedir . --ws-parser -- atsvc.idl
|
||||
|
||||
This will generate 2 files:
|
||||
packet-dcerpc-atsvc.h
|
||||
|
@ -89,16 +88,31 @@ Notes about the in-tree pidl
|
|||
============================
|
||||
|
||||
To allow building Wireshark pidl dissectors without having to
|
||||
*explicitly* access a remote svn repository a copy of pidl is located in tools/pidl
|
||||
|
||||
Don't do changes in the tools/pidl directory, do them at the samba tree!
|
||||
Changes to this tree will be overwritten the next time the sources from
|
||||
the samba tree are updated, which is basically every time you do an svn
|
||||
up in the Wireshark toplevel dir.
|
||||
*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 October 2013, the following idl have issues when generating and compiling:
|
||||
dfs.idl
|
||||
srvsvc.idl
|
||||
wkssvc.cnf
|
||||
|
||||
pidl generates incorrect code for these:
|
||||
|
||||
dfs.idl
|
||||
dnsserver.idl
|
||||
dssetup.idl
|
||||
eventlog.idl
|
||||
frsrpc.idl
|
||||
frstrans.idl
|
||||
lsa.idl
|
||||
misc.idl
|
||||
samr.idl
|
||||
|
||||
pidl rejects these with errors:
|
||||
|
||||
srvsvc.idl
|
||||
wkssvc.cnf
|
||||
mapi/mapi.idl
|
||||
napi/napi.idl
|
||||
|
|
Loading…
Reference in New Issue