aboutsummaryrefslogtreecommitdiffstats
path: root/packet-rpc.h
AgeCommit message (Collapse)AuthorFilesLines
2001-10-29Updates from Mike Frisch to reflect NFSv4 protocol changes.Guy Harris1-1/+3
svn path=/trunk/; revision=4098
2001-05-30There are no more old-style (non-tvbuffified) ONC RPC dissectors, so getGuy Harris1-21/+9
rid of support for them, and remove the "_tvb" from the end of the names of RPC type dissection routines. Update Gerald's e-mail address. svn path=/trunk/; revision=3477
2001-05-25AUTH_DES support, from Mike Frisch.Guy Harris1-1/+4
svn path=/trunk/; revision=3453
2001-05-07Support for dissecting XDR arrays, from Ronnie Sahlberg.Guy Harris1-1/+4
svn path=/trunk/; revision=3400
2001-02-09For indirect RPC calls, remember the call information, and add aGuy Harris1-2/+6
dissector for indirect replies that looks up the call. Use them in the portmapper/RPCBIND dissector. svn path=/trunk/; revision=3008
2001-02-09Make a "dissect_rpc_indir_call()" routine to dissect arguments to aGuy Harris1-30/+4
specified program/version/procedure, and a "rpc_proc_name()" routine to return the name of a specified program/version/procedure, and make the callit dissector use those, rather than doing the work itself. Un-export various routines and declarations that can again be private to the RPC dissector. svn path=/trunk/; revision=3007
2001-02-06Tvbuffify the portmap/rpcbind dissector, and implement part of CALLITGuy Harris1-1/+30
dissection (dissection of V2 CALLIT calls; no V3/V4 stuff or reply handling yet). svn path=/trunk/; revision=2994
2001-01-28Allow dissectors of ONC RPC-based protocols to register themselvesGuy Harris1-25/+14
either with a table of old-style dissectors or a table of tvbuffified dissectors, and have the RPC dissector pass the appropriate arguments to the dissectors. Finish tvbuffifying the NLM dissector, getting rid of the last traces of old-style dissector code. In those routines in the NFS dissector that take new-style arguments (because they're called from the NLM dissector), make them take an offset as an argument, so they don't assume that they're handed a tvbuff starting at the stuff they're supposed to dissect, and make the versions that take old-style arguments construct a tvbuff and call the versions that take new-style arguments. Do the latter with the routines in "packet-rpc.c" as well. svn path=/trunk/; revision=2943
2001-01-22Remove more "CHECK_DISPLAY_AS_DATA()" calls and "pinfo->current_proto ="Guy Harris1-2/+1
statements. Move the setting of the Protocol column in various dissectors before anything is fetched from the packet, and also clear the Info column at that point in those and some other dissectors, so that if an exception is thrown, the columns don't reflect the previous protocol. Don't use col_add_fstr(..., "%s", string); Use col_add_str(..., string); as it does the same thing, but doesn't drag all the heavy *printf machinery in. Fix the DDTP dissector to set the Info column regardless of whether we're building a protocol tree or not, and to set it to "Encrypted payload" if the payload is encrypted. Also fix a typo in a field name. Register the FTP data dissector as being associated with the FTP data protocol, not the FTP protocol (the removed "CHECK_DISPLAY_AS_DATA()" call checked "proto_ftp_data", and the removed "pinfo->current_proto =" line set it to "FTP-DATA", so it should be associated with "proto_ftp_data"). Make the H1 dissector check whether the frame has at least 2 bytes in it before checking the first two bytes; heuristic dissectors must not throw exceptions until they've accepted the packet as one of theirs. Use "tvb_format_text()" rather than "tvb_get_ptr()" and "format_text()" in some dissectors where the result of "tvb_get_ptr()" is used only in the "format_text()" call. In the Quake dissector, don't check whether there are at least 4 bytes in the packet - if we return, the packet won't be dissected at all (it's not as if some other dissector will get to handle it), and, if we don't return, we'll throw an exception if there aren't at least 4 bytes in the packet, so the packet will be marked as short or malformed, as appropriate. In the RIPng dissector, associate the table of strings for the command field with the command field, so that the dissector doesn't have to format the string for the protocol tree entry itself, and so that the filter construction dialog box can let you select "Request" or "Response" from a list rather than requiring you to know the values for "Request" and "Response". Make "dissect_rpc()" static, as it's called only through a heuristic dissector list. Use "col_set_str()" to set the COL_PROTOCOL column for RPC protocols; the string used is from a table provided by the dissector, and is a string constant. Don't format the Info column for WSP into a buffer and then format that buffer into the column with "%s" - "col_add_fstr()" can do the formatting for you, without having to allocate your own buffer (or run through the *printf machinery twice). Don't fetch fields from the WTP packet until you're ready to use them, so that you don't throw an exception before you even set the Protocol column or clear the Info column. Use "pinfo->destport", not "pi.destport", in the Zebra dissector when checking whether the packet is a request or reply, and do the check by comparing with "pinfo->match_port" rather than TCP_PORT_ZEBRA (so that if the dissector is ever registered on another port, it still correctly determines whether the packet is a request or reply - the Network Monitor HTTP dissector has port 80 wired into its brain, which is a bit irritating if you're trying to get it to dissect HTTP proxy traffic on port 3128 or proxy administration UI traffic on port 3132). svn path=/trunk/; revision=2931
2000-11-22Get rid of declarations of no-longer-extant "init_dissect_rpc()" andGuy Harris1-4/+1
"cleanup_dissect_rpc()". svn path=/trunk/; revision=2693
2000-11-21Start of a tvbuff_t version of the dissect_rpc() function.Uwe Girlich1-2/+2
All ONC/RPC dissectors remain old dissectors for now but this will change too. svn path=/trunk/; revision=2687
2000-08-24Name updates to stuff in GSS authentication for ONC RPC, from Dug Song.Guy Harris1-11/+11
svn path=/trunk/; revision=2365
2000-08-24Instead of keeping in the information about an RPC call a count of theGuy Harris1-19/+1
number of replies seen, keep the frame number of the first request seen for that call and the first reply seen for that call. Use that to determine whether a request or reply is a duplicate or not. That means that we don't have to reset the table of RPC calls on a rescan of the capture (which didn't even fix all the cases where we'd have misreported the original call or reply as a duplicate due to having seen it once on the initial pass through the file and once again when, for example, the user clicked on the packet); doing so causes plenty of other problems, so don't do that - and don't clear the "visited" flag on frames on a rescan, either, as that's only done because we were clearing out conversations and calling all protocols' "init" routines. As a free bonus, this means that, for a reply, we know what frame the request was in; put that information into the protocol tree for the reply, snoop-style. Make the table of RPC call information, and the routines that manipulate it, static to "packet-rpc.c"; nobody outside "packet-rpc.c" uses them. svn path=/trunk/; revision=2358
2000-08-11Miscellaneous code cleaningLaurent Deniel1-2/+25
- add <stdarg.h> or <varargs.h> in snprintf.h and remove those inclusions in the other #ifdef NEED_SNPRINTF_H codes - remove the check of multiple inclusions in source (.c) code (there is a bit loss of _cpp_ performance, but I prefer the gain of code reading and maintenance; and nowadays, disk caches and VM are correctly optimized ;-). - protect all (well almost) header files against multiple inclusions - add header (i.e. GPL license) in some include files - reorganize a bit the way header files are included: First: #include <system_include_files> #include <external_package_include_files (e.g. gtk, glib etc.)> Then #include "ethereal_include_files" with the correct HAVE_XXX or NEED_XXX protections. - add some HAVE_XXX checks before including some system header files - add the same HAVE_XXX in wiretap as in ethereal Please forgive me, if I break something (I've only compiled and regression tested on Linux). svn path=/trunk/; revision=2254
2000-08-08Several new RPC dissecting function introduced. Interface toUwe Girlich1-3/+13
existing functions changed. So NFS was also necessary to change. svn path=/trunk/; revision=2225
2000-07-17Support for dissecting RPCSEC_GSS credentials in ONC RPC, from Dug Song.Guy Harris1-6/+16
svn path=/trunk/; revision=2141
2000-03-09Prototype for new dissect_rpc_list() function.Uwe Girlich1-1/+3
svn path=/trunk/; revision=1704
2000-02-15Create a header file for every packet-*.c file. Prune the packet.h file.Gilbert Ramirez1-1/+2
This change allows you to add a new packet-*.c file and not cause a recompilation of everything that #include's packet.h Add the plugin_api.[ch] files ot the plugins/Makefile.am packaging list. Add #define YY_NO_UNPUT 1 to the lex source so that the yyunput symbol is not defined, squelching a compiler complaint when compiling the generated C file. svn path=/trunk/; revision=1637
2000-01-22Give "dissect_rpc_string()" an extra "char **" argument; if it'sGuy Harris1-2/+2
non-null, it returns through that argument a pointer to the displayed version of the string, otherwise it just frees that string. Use that to put, in the tree item for READDIR and READDIRPLUS reply directory entry items, the file name from the directory entry. svn path=/trunk/; revision=1521
1999-12-14Prototype for dissect_rpc_bool().Uwe Girlich1-1/+3
svn path=/trunk/; revision=1327
1999-12-02prototype for dissect_rpc_data()Uwe Girlich1-1/+3
svn path=/trunk/; revision=1184
1999-11-19Make various "value_string" tables "const"; this allows the compiler toGuy Harris1-2/+2
stuff them into shared read-only space. Put the "VALS()" cast macro into the initialization of an "hf_register_info" array. svn path=/trunk/; revision=1072
1999-11-19Added Uwe's update to RPC.Gilbert Ramirez1-1/+3
svn path=/trunk/; revision=1069
1999-11-16Replace the ETT_ "enum" members, declared in "packet.h", withGuy Harris1-3/+1
dynamically-assigned "ett_" integer values, assigned by "proto_register_subtree_array()"; this: obviates the need to update "packet.h" whenever you add a new subtree type - you only have to add a call to "proto_register_subtree_array()" to a "register" routine and an array of pointers to "ett_", if they're not already there, and add a pointer to the new "ett_" variable to the array, if they are there; would allow run-time-loaded dissectors to allocate subtree types when they're loaded. svn path=/trunk/; revision=1043
1999-11-15Got rid of dissect_rpc_string routine, renamed dissect_rpc_string_item toNathan Neulinger1-3/+1
dissect_rpc_string. Replaced only instance of this routine being called. Added display filtering to rpc dissector. Replaced most instances of proto_tree_add_text with proto_tree_add_item. Added program version and procedure to the program tree in addition to it being in the RPC tree. svn path=/trunk/; revision=1037
1999-11-15Uwe Girlich's patches for nfs,mount,portmap and addition of nlm.Nathan Neulinger1-2/+2
svn path=/trunk/; revision=1034
1999-11-11Added mount dissector.Nathan Neulinger1-1/+2
Added stat dissector. Enhancements to portmap dissector. Added rpc_prog_name function to packet-rpc to retrieve the name of an rpc program. This should likely eventually be modified to use the /etc/rpc or rpc.bynumber NIS maps in addition to the programs that are registered within ethereal. svn path=/trunk/; revision=1016
1999-11-11Expanded bootparams dissector to handle decoding getfile calls and replies.Nathan Neulinger1-1/+5
Added proto_registrar_get_name routine to proto.c to retrieve the name of particular proto_tree field. Added dissect_rpc_string_item to packet-rpc.c. This routine does the same thing as dissect_rpc_string, except it takes a hfindex of a proto_tree item instead of a name. It uses the p_r_get_name call to get the name, and adds the actual string content as a hidden field (so that the subtree highlights the entire data area - length, data, and padding). There is only one call to dissect_rpc_string, so I believe that this routine should replace it. svn path=/trunk/; revision=1011
1999-11-05Updates to the ONC RPC and NFS code, from Uwe Girlich.Guy Harris1-2/+5
svn path=/trunk/; revision=976
1999-10-29Uwe Girlich's ONC RPC and NFS dissectors.Guy Harris1-0/+103
svn path=/trunk/; revision=946