Author: tpot Date: 2005-01-02 03:57:04 +0000 (Sun, 02 Jan 2005) New Revision: 145
WebSVN: http://websvn.samba.org/cgi-bin/viewcvs.cgi?view=rev&root=lorikeet&rev=145 Log: Update README for ethereal pidl parsers. Modified: trunk/ethereal/README Changeset: Modified: trunk/ethereal/README =================================================================== --- trunk/ethereal/README 2005-01-02 03:22:55 UTC (rev 144) +++ trunk/ethereal/README 2005-01-02 03:57:04 UTC (rev 145) @@ -1,41 +1,57 @@ Build instructions for ethereal pidl parsers -------------------------------------------- +In the following instructions the pseudo command lines use $ETHEREAL +to represent the location of a checkout of the ethereal source code +and $LORIKEET to represent a checkout of the lorikeet source code. + To build the parsers: 1) Apply the ethereal-pidl.patch to introduce the new plugin into the ethereal build system. + $ cd $ETHEREAL/trunk + $ patch -p0 < $LORIKEET/trunk/ethereal/ethereal-pidl.patch + 2) Copy the contents of the plugins/pidl directory into a subdirectory called pidl in the ethereal plugins directory. - 3) Run pidl with the --eparser option and copy the autogenerated - packet-dcerpc-*.[ch] and ndr_*.h files from the librpc/gen_ndr - directory into the plugins/pidl directory. + $ rsync -av $LORIKEET/trunk/ethereal/plugins/pidl $ETHEREAL/trunk/plugins - or + 3) Configure and build ethereal - Configure Samba4 with the --with-eparserdir=<your ethereal/plugins/pidl> - option, and do 'make eparser_idl'. + $ cd $ETHEREAL/trunk + $ ./autogen.sh && ./configure && make - 4) Build ethereal as you normally would (run autogen, configure, - make etc). + 4) Now ethereal loads its plugins from /usr/lib/ethereal/plugins or + from $HOME/.ethereal/plugins so I usually make a link from the + ethereal pidl directory to here: -Note that you can modify and build a plugin separately from the full -ethereal program. This speeds up development muchly as the linking -for ethereal and tethereal does not need to be performed. + $ ln -s $ETHEREAL/trunk/ethereal/plugins/pidl/.libs $HOME/.ethereal/plugins + (Ugh - libtool) -Installation: + 5) Load up ethereal on the atsvc.cap file and check that the + protocol name for frame 17 is 'pidl_atsvc'. When you restart + ethereal the plugin should be loaded. Any dynamic linking errors + will be displayed on standard error. - 1) Copy the pidl.so file from the .libs directory (ha ha - libtool) - and place it in the site-specific ethereal plugins directory - [where is this?] or in $HOME/.ethereal/plugins +At the moment, the lorikett directory contains enough code to build a +parser that parses the ATSVC pipe. Some further work is needed to get +unions working but after that dissectors for the remaining pipes +should be relatively simple. - 2) When you restart ethereal the plugin should be loaded. Any - dynamic linking errors will be displayed on standard error. +To build dissectors from the idl files, configure samba like: + 1) cd $SAMBA/branches/SAMBA_4_0/source && \ + ./configure --with-eparserdir=$LORIKEET/trunk/ethereal/plugins/pidl + + 2) make eparser_idl +This should generate a whole bunch of packet-dcerpc-*.[ch] files. +Edit $LORIKEET/trunk/ethereal/plugins/pidl/Makefile.am to compile and +link in parsers other than ATSVC. + Other notes: - The plugin protocol names are currently 'pidl_foo', where foo is @@ -43,4 +59,4 @@ duplicate protocol names. -Enjoy! +Enjoy! Please send feedback to [EMAIL PROTECTED]