ANNOUNCEMENT: Live Wireshark University & Allegro Packets online APAC Wireshark Training Session
July 17th, 2024 | 10:00am-11:55am SGT (UTC+8) | Online

Ethereal-dev: [ethereal-dev] Adding NetInfo (ONC RPC proto) support to ethereal

Note: This archive is from the project's previous web site, ethereal.com. This list is no longer active.

From: Nicolas Williams <Nicolas.Williams@xxxxxxx>
Date: Fri, 31 Dec 1999 16:21:53 -0500
I started adding NetInfo support to ethereal today.

I've got a pretty complete packet-netinfobind.[ch] set of files and will
probably start on packet-netinfo.[ch] once I get the netinfobind
protocol stuff working.

I need a feature added to packet-portmap.c: CALLIT call decoding. This
is because NetInfo relies on indirect RPC calls via the portmapper for
the most interesting (from a debugging point of view) operational aspect
of NetInfo: binding (i.e., one domain finding servers for its parent
domain).

Briefly, CALLIT is a portmapper procedure which takes 4 arguments:

 - an RPC protocol number
 - an RPC protocol version number
 - the number of a procedure of that protocol to call
 - encapsulated arguments to the indirect call (a string of bytes which
   is the XDR representation of the arguments to the indirect call)

The portmapper will perform the RPC on the client's behalf. This feature
of the portmapper is used to implement RPC broadcast protocols, where a
client broadcasts a CALLIT portmapper call encapsulating the call they
really want to make; since the portmapper has a well known UDP port
(111) this features is extremely useful for RPC broadcasts.

Examples of protocols that use CALLIT:

 - bootparams
 - ypbind (when not hardcoding a list of ypservers)
 - NetInfo (for finding parent domain servers)

Currently there is no dissection done on CALLIT calls. I figure I can
add a function to do it, but I need to know how to use the protocol,
version and procedure numbers to find the dissection function for the
encapsulated arguments. That and how to add a protocol sub-tree for the
portmapper packet.

Any help would be much appreciated. Thanks,

Nico

This message contains confidential information and is intended only 
for the individual named.  If you are not the named addressee you 
should not disseminate, distribute or copy this e-mail.  Please 
notify the sender immediately by e-mail if you have received this 
e-mail by mistake and delete this e-mail from your system.

E-mail transmission cannot be guaranteed to be secure or error-free 
as information could be intercepted, corrupted, lost, destroyed, 
arrive late or incomplete, or contain viruses.  The sender therefore 
does not accept liability for any errors or omissions in the contents 
of this message which arise as a result of e-mail transmission.  If 
verification is required please request a hard-copy version.  This 
message is provided for informational purposes and should not be 
construed as a solicitation or offer to buy or sell any securities or 
related financial instruments.