aboutsummaryrefslogtreecommitdiffstats
path: root/packet-iscsi.c
AgeCommit message (Collapse)AuthorFilesLines
2002-07-17From Joerg Mayer:Guy Harris1-5/+1
dftest.c: Remove #if-0-ed includes packet-ieee80211.c, packet-wtls.c, packet-afp.c, packet-wsp.c, packet-wtp.c, ethereal_gen.py: Remove redundant include varargs (already in snprintf.h, and required only for snprintf.h) Remove unused include of snprintf.h from files not using "snprintf()". svn path=/trunk/; revision=5889
2002-06-24From Mark Burton: add Draft 13 support, making that draft the default.Guy Harris1-5/+21
svn path=/trunk/; revision=5755
2002-05-16Fix from Mark Burton.Guy Harris1-2/+2
svn path=/trunk/; revision=5490
2002-05-15iSCSI draft 12 support, from Mark Burton.Guy Harris1-6/+43
svn path=/trunk/; revision=5476
2002-05-14From Mark Burton: make the iSCSI protocol level a settable preferenceGuy Harris1-218/+270
rather than something chosen at compile time, and get rid of an unused-but-#ifdeffed-out variable. svn path=/trunk/; revision=5469
2002-04-29Removal (or, at least, #ifdeffing out) of unused variables andGuy Harris1-2/+3
functions, from David Frascone. svn path=/trunk/; revision=5288
2002-04-04From Mark Burton: add an ett_iscsi ett_ value for the top-level treeGuy Harris1-4/+7
item. svn path=/trunk/; revision=5100
2002-04-04Compile fix from Mark Burton.Guy Harris1-4/+4
svn path=/trunk/; revision=5097
2002-03-20Update to draft 11, from Mark Burton.Guy Harris1-27/+202
svn path=/trunk/; revision=4995
2002-02-13Have the private data for the SCSI dissection routines be a pointer to aGuy Harris1-7/+15
structure containing a 32-bit conversation ID (which uniquely identifies conversations between a SCSI initiator and target) and a 32-bit task ID (which uniquely identifies a task within that conversation). Have the NDMP dissector create conversations when it sees an "execute CDB" request, and use the conversation index as the conversation ID and the sequence number for requests and reply sequence for replies as the task ID. Have it use "dissect_scsi_payload()" to dissect the payload of "execute CDB" requests and replies. svn path=/trunk/; revision=4726
2002-02-02Updates from Mark Burton.Guy Harris1-19/+38
svn path=/trunk/; revision=4675
2002-01-31Minor updates, from Mark Burton:Guy Harris1-27/+28
More draft 09 compatibility changes. Default port number now 3260. Now prints extra info to COL_INFO for SCSI command and login responses. svn path=/trunk/; revision=4641
2002-01-21From Mark Burton:Guy Harris1-23/+143
- Upgrade to version draft-09 of the iSCSI protocol (compatibility to draft-08 can be selected at compile time) - Bug fix so that now the the 16 bit length that prefixes sense data is taken into account. svn path=/trunk/; revision=4591
2002-01-21Include files from the "epan" directory and subdirectories thereof withGuy Harris1-3/+3
"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/"). svn path=/trunk/; revision=4586
2002-01-20Allow a length of -1 to be specified when adding FT_NONE and FT_PROTOCOLGuy Harris1-2/+2
items to the protocol tree; it's interpreted as "the rest of the data in the tvbuff". This can be used if 1) the item covers the entire packet or the remaining payload in the packet or 2) the item's length won't be known until it's dissected, and will be then set with "proto_item_set_len()" - if an exception is thrown in the dissection, it means the item ran *past* the end of the tvbuff, so saying it runs to the end of the tvbuff is reasonable. Convert a number of "proto_tree_add_XXX()" calls using "tvb_length_remaining()", values derived from the result of "tvb_length()", or 0 (in the case of items whose length is unknown) to use -1 instead (using 0 means that if an exception is thrown, selecting the item highlights nothing; using -1 means it highlights all the data for that item that's available). In some places where "tvb_length()" or "tvb_length_remaining()" was used to determine how large a packet is, use "tvb_reported_length()" or "tvb_reported_length_remaining()", instead - the first two calls indicate how much captured data was in the packet, the latter two calls indicate how large the packet actually was (and the fact that using the latter could cause BoundsError exceptions to be thrown is a feature - if such an exception is thrown, the frame really *was* short, and it should be tagged as such). Replace some "proto_tree_add_XXX()" calls with equivalent "proto_tree_add_item()" calls. Fix some indentation. svn path=/trunk/; revision=4578
2002-01-16From Mark Burton: reinstate data segment digest handling, and stop theGuy Harris1-1/+13
SCSI dissector from treating data digests as payload. svn path=/trunk/; revision=4552
2002-01-10SCSI dissector, and changes to make the iSCSI dissector use it, fromGuy Harris1-169/+193
Dinesh Dutt. svn path=/trunk/; revision=4508
2001-12-10Move the pointer to the "column_info" structure in the "frame_data"Guy Harris1-12/+12
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. svn path=/trunk/; revision=4370
2001-11-04Allow a dissector to register preferences that it no longer supports asGuy Harris1-1/+8
obsolete; we silently ignore attempts to set those in a preferences file, so that we don't spam the user with error messages caused by them having saved preferences in an earlier release that contained those preferences. Make the Diameter and iSCSI dissectors register obsolete preferences. Crash if some code tries to register a preferences module with a name that contains something other than lower-case ASCII letters, numbers, or underscores, or that has already been registered, or if some code tries to register a preference with a name that contains something other than lower-case ASCII letters, numbers, underscores, or periods, or that has already been registered, so that we don't put code like that in a release and have to shovel code into "prefs.c" to fix it up later. (The problem with multiple modules or preferences with the same name should be obvious; the problem with names with blanks, or upper-case letters, or punctuation, is that they're a pain to type on the command line.) svn path=/trunk/; revision=4148
2001-11-04Updates from Mark Burton.Guy Harris1-92/+122
svn path=/trunk/; revision=4147
2001-10-23When putting protocols into the list of protocols, do a case-insensitiveGuy Harris1-2/+2
sort. Give iSCSI the short name "iSCSI" rather than "ISCSI". svn path=/trunk/; revision=4067
2001-10-21Give the "iscsi_desegment" and "iscsi_port" the right types, matchingGuy Harris1-3/+3
the declarations of the functions to which a pointer to them is passed; this also fixes it so it compiles with MSVC++, as there's no "uint" type declared by MSVC++ by default. svn path=/trunk/; revision=4054
2001-10-21Updates from Mark Burton:Guy Harris1-214/+349
The enclosed code contains the following improvements: 1 - Compatible with 08 version of the protocol 2 - Handles both header and data digests 3 - Supports desegmentation 4 - Dissects multiple PDUs per packet 5 - Stronger heuristics to avoid dissecting non-iSCSI packets 6 - General rationalisation and de-crufting! The old code that attempted to automatically detect the presence of a header digest has been removed. You now have to specify in the iSCSI preferences whether digests are enabled and if they are, whether they are CRC32 or not. If not CRC32, you also need to specify the size of the digests (in bytes). Another new option specifies the iSCSI port number. This is used in the heuristics to filter out packets with silly port numbers, set to 0 to disable the port filter. One problem that I haven't been able to track down is that if desegmentation is enabled and you turn digests on or off ethereal throws a SEGV. svn path=/trunk/; revision=4051
2001-10-20FT_UINTn values must always have a base, even if they're bitfields - theGuy Harris1-2/+2
width of the item containing the bitfield is "n", so you don't have to specify it explicitly, as you have to do with FT_BOOLEAN bitfields. svn path=/trunk/; revision=4047
2001-10-19From Mark Burton: update to the -08 draft.Guy Harris1-850/+514
svn path=/trunk/; revision=4043
2001-07-22Update from Mark Burton.Guy Harris1-182/+218
svn path=/trunk/; revision=3771
2001-07-16Get the length of a null-terminated string with "tvb_strnlen()", not byGuy Harris1-5/+6
getting a pointer to the first byte of the string with "tvb_get_ptr()" and then assuming you can safely do a "strlen()" with that pointer (it's not guaranteed that you can, as the terminating null byte might not be in the tvbuff). Add the resulting string with "proto_tree_add_item()". svn path=/trunk/; revision=3728
2001-07-16Convert a bunch of "proto_tree_add_bytes(tree, hf, tvb, offset, length,Guy Harris1-134/+134
tvb_get_ptr(tvb, offset, length))" calls to "proto_tree_add_item()" calls. Do the same, in "packet-iscsi.c" and "packet-mrdisc.c", for "proto_tree_add_uint()" and "proto_tree_add_boolean()" calls. svn path=/trunk/; revision=3726
2001-06-28Updates from Mark Burton.Guy Harris1-40/+234
svn path=/trunk/; revision=3618
2001-06-18From Joerg Mayer: explicitly fill in all members of aGuy Harris1-88/+88
"header_field_info" structure, including the ones that are later set by the routines to register fields. svn path=/trunk/; revision=3561
2001-06-04Updates from Mark Burton.Guy Harris1-26/+56
svn path=/trunk/; revision=3508
2001-06-02On Windows, "min" apparently gets defined or declared in such a fashionGuy Harris1-6/+6
that declaring our own static function "min()" doesn't work; rename it "iscsi_min()" to get rid of the problem. svn path=/trunk/; revision=3504
2001-05-31Updates from Mark Burton.Guy Harris1-76/+172
svn path=/trunk/; revision=3492
2001-05-31Don'tcramallthewordsinapreference'snametogether;Guy Harris1-5/+5
underscores_are_permitted_in_those_names. svn path=/trunk/; revision=3491
2001-05-30iSCSI support, from Mark Burton.Guy Harris1-0/+1601
svn path=/trunk/; revision=3482