aboutsummaryrefslogtreecommitdiffstats
path: root/packet-dsi.c
AgeCommit message (Collapse)AuthorFilesLines
2004-07-18Move dissectors to epan/dissectors directory.gram1-846/+0
Also move ncp222.py, x11-fields, process-x11-fields.pl, make-reg-dotc, and make-reg-dotc.py. Adjust #include lines in files that include packet-*.h files. git-svn-id: http://anonsvn.wireshark.org/wireshark/trunk@11410 f5534014-38df-0310-8fa8-9805f1628bb7
2004-07-18Set the svn:eol-style property on all text files to "native", so thatguy1-1/+1
they have LF at the end of the line on UN*X and CR/LF on Windows; hopefully this means that if a CR/LF version is checked in on Windows, the CRs will be stripped so that they show up only when checked out on Windows, not on UN*X. git-svn-id: http://anonsvn.wireshark.org/wireshark/trunk@11400 f5534014-38df-0310-8fa8-9805f1628bb7
2004-02-25Use "tvb_get_string()" instead of allocating a (len+1)-sized buffer,guy1-4/+2
"tvb_memcpy()"ing to it, and putting in a null terminator; "tvb_get_string()" will check whether all bytes of the string are present before allocating the buffer, so that you don't leak memory if the copy throws an exception, and don't crash if the length is absurdly large. Use "tvb_memdup()" instead of allocating a buffer and "tvb_memcpy()"ing to it, so that an exception is thrown before you try to allocate the buffer (for the same reasons as listed above). Before allocating a buffer used when processing a chunk of data from a packet, get a pointer to the chunk with "tvb_get_ptr()", or check that the data is all there with "tvb_ensure_bytes_exist()", so that an exception is thrown before you try to allocate the buffer (for the same reasons as listed above). Fix up the lengths of the tvbuff used when dissecting ONC RPC opaque data with a particular dissector. git-svn-id: http://anonsvn.wireshark.org/wireshark/trunk@10236 f5534014-38df-0310-8fa8-9805f1628bb7
2004-01-13You can't rely on "proto_tree_add_item()" returning a non-null pointer,guy1-7/+10
so you can't rely on getting the length of an FT_UINT_STRING item by calling "proto_tree_add_item()" and fetching the item length from the item. Get the length of the string explicitly, and advance the offset by the length of the string plus the length of the length field. git-svn-id: http://anonsvn.wireshark.org/wireshark/trunk@9658 f5534014-38df-0310-8fa8-9805f1628bb7
2004-01-06Note in a comment that "dissect_asp_reply_get_status()" might beguy1-22/+14
dissecting AFP server status - other servers might have different status formats. In "dissect_asp_reply_get_status()", put the UTF-8 server name into a tree, with the length and name in the tree as separate items, and fetch the length into a 16-bit variable (as it's a 16-bit length in the packet), as is done in "dissect_dsi_reply_get_status()". (XXX - should that just be done with an FT_UINT_STRING field, as is done for other strings?) Use "tvb_get_string()" to fetch the UTF-8 server name, and set the length and name from the values we fetched, in both of those routines. For FT_UINT_STRING fields in "dissect_asp_reply_get_status()" and "dissect_dsi_reply_get_status()", don't fetch the length separately - just use the value filled in by "proto_tree_add_item()" (now that a "proto_item" is no longer opaque, we can do that). That means we don't have a problem with overflows of the 8-bit "len" variable if the length is 255. git-svn-id: http://anonsvn.wireshark.org/wireshark/trunk@9567 f5534014-38df-0310-8fa8-9805f1628bb7
2003-12-08From Didier Gautheron: check packet format in get_dsi_pdu_len.guy1-3/+15
git-svn-id: http://anonsvn.wireshark.org/wireshark/trunk@9202 f5534014-38df-0310-8fa8-9805f1628bb7
2003-04-15From Didier Gautheron: more getserverinfo decoding.guy1-6/+50
git-svn-id: http://anonsvn.wireshark.org/wireshark/trunk@7459 f5534014-38df-0310-8fa8-9805f1628bb7
2002-10-17From Didier Gautheron: better AFP 3.x dissector.guy1-2/+9
git-svn-id: http://anonsvn.wireshark.org/wireshark/trunk@6449 f5534014-38df-0310-8fa8-9805f1628bb7
2002-08-28Removed trailing whitespaces from .h and .c files using thejmayer1-26/+26
winapi_cleanup tool written by Patrik Stridvall for the wine project. git-svn-id: http://anonsvn.wireshark.org/wireshark/trunk@6117 f5534014-38df-0310-8fa8-9805f1628bb7
2002-08-02Replace the types from sys/types.h and netinet/in.h by their glib.hjmayer1-9/+1
equivalents for the toplevel directory. The removal of winsock2.h will hopefully not cause any problems under MSVC++, as those files using struct timeval still include wtap.h, which still includes winsock2.h. git-svn-id: http://anonsvn.wireshark.org/wireshark/trunk@5932 f5534014-38df-0310-8fa8-9805f1628bb7
2002-05-30Don't pass "tvb_reported_length_remaining(tvb, offset)" as the fourthguy1-2/+4
argument to "tvb_new_subset()" - just use -1 if the subset tvbuff is to run to the end of the parent tvbuff. git-svn-id: http://anonsvn.wireshark.org/wireshark/trunk@5597 f5534014-38df-0310-8fa8-9805f1628bb7
2002-05-10From Joerg Mayer: make a pile of stuff not used outside one source fileguy1-3/+3
static, and add a new "packet-data.h" to declare "proto_data". Display escape sequences in octal in the IAPP dissector, as is now done in the RADIUS dissector. git-svn-id: http://anonsvn.wireshark.org/wireshark/trunk@5441 f5534014-38df-0310-8fa8-9805f1628bb7
2002-05-08From Didier Gautheron:guy1-3/+200
DSI and ASP updates to better handle addresses in replies. Dissect DSI "open session" and "attention" messages. git-svn-id: http://anonsvn.wireshark.org/wireshark/trunk@5420 f5534014-38df-0310-8fa8-9805f1628bb7
2002-05-05Make a "tcp_dissect_pdus()" with the standard loop for a TCP segment,guy1-111/+19
extracting PDUs from it and possibly doing reassembly. Make the COPS, DNS, DSI, Gryphon, and SCCP dissectors use it. Add "set_actual_length()", "tcp_dissect_pdus()", "decode_boolean_bitfield()", "decode_numeric_bitfield()", and "decode_enumerated_bitfield()" to the list of routines available to dissectors on platforms where routines in the main program aren't available to dynamically-loaded code. Declare routines in "to_str.h" as "extern"; as I remember, that's necessary to allow the "decode_XXX_bitfield()" routines declared therein to be made available to plugins as per the above. Note that new exported routines should be added to the end of the table if that's the only change being made to the table. Create a new "plugin_api_decls.h" header file, used to declare both the "p_" variables and the "p_" structure members in the routine-exporting mechanism; this reduces the number of places you have to change to change the list of exported routines. git-svn-id: http://anonsvn.wireshark.org/wireshark/trunk@5394 f5534014-38df-0310-8fa8-9805f1628bb7
2002-05-03From Didier Gautheron:guy1-3/+52
afp : more calls. asp : move release transaction to atp. dissect asp call. fix a bug with transaction handling (conversation +tid are not enough as key ). atp : deal with one packet transaction without ATP_EOM. dsi: safeguard against overflow for unreassembled packet. more flags decoded. Update the "packet-atalk.c" comment to reflect all the protocols in it. git-svn-id: http://anonsvn.wireshark.org/wireshark/trunk@5376 f5534014-38df-0310-8fa8-9805f1628bb7
2002-05-01Get rid of an unused argument.guy1-3/+3
git-svn-id: http://anonsvn.wireshark.org/wireshark/trunk@5326 f5534014-38df-0310-8fa8-9805f1628bb7
2002-04-30From Didier Gautheron:guy1-18/+276
more calls supported in AFP; ATP desegmentation; show the name for NBP function 1 (broadcast request); "get status" reply for DSI. git-svn-id: http://anonsvn.wireshark.org/wireshark/trunk@5316 f5534014-38df-0310-8fa8-9805f1628bb7
2002-04-28Put the error code/data offset field into the protocol tree as a dataguy1-9/+13
offset on requests, and as an error code on replies, regardless of the value. git-svn-id: http://anonsvn.wireshark.org/wireshark/trunk@5277 f5534014-38df-0310-8fa8-9805f1628bb7
2002-04-28Pass even zero-length DSI and ASP "command" messages to the AFPguy1-12/+10
dissector, so it can show them as replies. Put the command code into the protocol tree for replies. Fix some additional AFP function names to match the names in the AFP spec. git-svn-id: http://anonsvn.wireshark.org/wireshark/trunk@5275 f5534014-38df-0310-8fa8-9805f1628bb7
2002-04-28Updates from Didier Gautheron:guy1-8/+20
More calls, more fields, and other updates, for AFP. Decode the error code for DSI. Also, have separate fields for the code field in DSI when it's a data offset and when it's an error code. git-svn-id: http://anonsvn.wireshark.org/wireshark/trunk@5270 f5534014-38df-0310-8fa8-9805f1628bb7
2002-04-25ATP, ASP, and AFP support, from Didier Gautheron.guy1-2/+30
git-svn-id: http://anonsvn.wireshark.org/wireshark/trunk@5254 f5534014-38df-0310-8fa8-9805f1628bb7
2002-04-22Add support for DSI packet reassembly.guy1-316/+162
git-svn-id: http://anonsvn.wireshark.org/wireshark/trunk@5222 f5534014-38df-0310-8fa8-9805f1628bb7
2002-04-14From Didier Gautheron: make the "code" field an signed decimal number.guy1-5/+5
git-svn-id: http://anonsvn.wireshark.org/wireshark/trunk@5161 f5534014-38df-0310-8fa8-9805f1628bb7
2002-01-24Replace a bunch of "tvb_length()" and "tvb_length_remaining()" calls inguy1-3/+3
arguments to "proto_tree_add_text()", and to "proto_tree_add_XXX()" calls that add FT_NONE or FT_PROTO items to the protocol tree, with -1. Replace some calls to "tvb_length()" or "tvb_length_remaining()" with calls to "tvb_reported_length()" and "tvb_reported_length_remaining()", as those give the actual length of the data in the packet, not just the data that happened to be captured. git-svn-id: http://anonsvn.wireshark.org/wireshark/trunk@4605 f5534014-38df-0310-8fa8-9805f1628bb7
2002-01-21Include files from the "epan" directory and subdirectories thereof withguy1-4/+4
"epan/..." pathnames, so as to avoid collisions with header files in any of the directories in which we look (e.g., "proto.h", as some other package has its own "proto.h" file which it installs in the top-level include directory). Don't add "-I" flags to search "epan", as that's no longer necessary (and we want includes of "epan" headers to fail if the "epan/" is left out, so that we don't re-introduce includes lacking "epan/"). git-svn-id: http://anonsvn.wireshark.org/wireshark/trunk@4586 f5534014-38df-0310-8fa8-9805f1628bb7
2001-12-10Move the pointer to the "column_info" structure in the "frame_data"guy1-7/+7
structure to the "packet_info" structure; only stuff that's permanently stored with each frame should be in the "frame_data" structure, and the "column_info" structure is not guaranteed to hold the column values for that frame at all times - it was only in the "frame_data" structure so that it could be passed to dissectors, and, as all dissectors are now passed a pointer to a "packet_info" structure, it could just as well be put in the "packet_info" structure. That saves memory, by shrinking the "frame_data" structure (there's one of those per frame), and also lets us clean up the code a bit. git-svn-id: http://anonsvn.wireshark.org/wireshark/trunk@4370 f5534014-38df-0310-8fa8-9805f1628bb7
2001-12-03Make "dissector_add()", "dissector_delete()", and "dissector_change()"guy1-2/+2
take a dissector handle as an argument, rather than a pointer to a dissector function and a protocol ID. Associate dissector handles with dissector table entries. git-svn-id: http://anonsvn.wireshark.org/wireshark/trunk@4308 f5534014-38df-0310-8fa8-9805f1628bb7
2001-11-27Change "conversation_set_dissector()" to take a dissector handle, ratherguy1-2/+5
than a pointer to a dissector function, as an argument. This means that the conversation dissector is called through "call_dissector()", so the dissector itself doesn't have to worry about checking whether the protocol is enabled or setting "pinfo->current_proto", so get rid of the code that does that in conversation dissectors. Also, make the conversation dissectors static. Get rid of some direct calls to dissectors; replace them with calls through handles, and, again, get rid of code to check whether a protocol is enabled and set "pinfo->current_proto" where that code isn't needed. Make those dissectors static if they aren't already static. Add a routine "create_dissector_handle()" to create a dissector handle without registering it by name, if the dissector isn't used outside the module in which it's defined. git-svn-id: http://anonsvn.wireshark.org/wireshark/trunk@4281 f5534014-38df-0310-8fa8-9805f1628bb7
2001-11-26Moved from using dissect_data() to using call_dissector()hagbard1-3/+6
git-svn-id: http://anonsvn.wireshark.org/wireshark/trunk@4269 f5534014-38df-0310-8fa8-9805f1628bb7
2001-09-03Instead of having a single datum attached to a conversation, have a listguy1-12/+13
of protocol-id-plus-datum pairs, so that multiple protocols can attach information to the same conversation. Dissectors that attach information to a conversation should not assume that if they find a conversation it has one of its data attached to it; the conversation might've been created by another dissector. git-svn-id: http://anonsvn.wireshark.org/wireshark/trunk@3901 f5534014-38df-0310-8fa8-9805f1628bb7
2001-06-18From Joerg Mayer: explicitly fill in all members of aguy1-7/+7
"header_field_info" structure, including the ones that are later set by the routines to register fields. git-svn-id: http://anonsvn.wireshark.org/wireshark/trunk@3561 f5534014-38df-0310-8fa8-9805f1628bb7
2001-05-24Appletalk Data Stream Interface (used by AFP-over-TCP) support, fromguy1-0/+489
Randy McEoin. git-svn-id: http://anonsvn.wireshark.org/wireshark/trunk@3446 f5534014-38df-0310-8fa8-9805f1628bb7