aboutsummaryrefslogtreecommitdiffstats
path: root/packet-sctp.c
AgeCommit message (Collapse)AuthorFilesLines
2003-08-02Add a heuristic dissector list for SCTP.Guy Harris1-5/+28
svn path=/trunk/; revision=8121
2003-06-08fixed a typo.Michael Tüxen1-2/+2
svn path=/trunk/; revision=7808
2003-06-08The GCC 2.7.2.3 in FreeBSD 3.4, at least, requiresGuy Harris1-8/+8
"__attribute__((unused))" to come after the unused argument; it gives a syntax error if it appears before the argument. svn path=/trunk/; revision=7805
2003-06-07fixed some typos.Michael Tüxen1-5/+5
svn path=/trunk/; revision=7804
2003-06-07- updated to support the newest version of supported IDs.Michael Tüxen1-1441/+1116
- correct handling of padding bytes. - tested at the 6.th SCTP bakeoff svn path=/trunk/; revision=7803
2003-04-22Eliminate the packet_info pointer argument from routines that don't useGuy Harris1-30/+28
it. svn path=/trunk/; revision=7532
2003-04-22- handle the col_set_fence stuff for upper layers.Michael Tüxen1-96/+15
- the control chunk info in the info column can be suppressed by using an option in the protocol preferences menu. The default is to show always control chunks in the Info column which is the old behaviour. svn path=/trunk/; revision=7530
2003-04-19- a 'quick hack' for col_set_fence support for better INOF column handling ↵Michael Tüxen1-55/+88
(a new version of the SCTP dissector is in development...) - change of my e-mail address. svn path=/trunk/; revision=7504
2003-01-31Get rid of BASE_BIN - it's just the same as BASE_DEC, but people seemedGuy Harris1-2/+2
to be using it for stuff that should be hex, and for stuff that should be Boolean. Use BASE_DEC if it should be decimal, BASE_HEX if it should be hex, and make it Boolean if it should be Boolean. svn path=/trunk/; revision=7053
2003-01-20Get rid of old ASAP PPID.Michael Tüxen1-2/+1
svn path=/trunk/; revision=6948
2003-01-15Don't have two entries for the official ASAP PPID, have one for it andGuy Harris1-2/+2
one for the old one. svn path=/trunk/; revision=6929
2003-01-14From Christian Falckenberg: beginnings of a MEGACO dissector.Guy Harris1-16/+3
Move SCTP payload protocol IDs to a header file, and get the PPIDs from that header file rather than defining them in dissectors running atop SCTP. Use both the old(?) and official PPID for ASAP. svn path=/trunk/; revision=6926
2003-01-14From Anders Broman: some additional SCTP payload protocol IDs.Guy Harris1-1/+15
svn path=/trunk/; revision=6925
2003-01-13Fixed a typo.Michael Tüxen1-2/+2
svn path=/trunk/; revision=6918
2002-12-05Fixed a bug regarding the handling of correlation ids.Michael Tüxen1-6/+6
svn path=/trunk/; revision=6745
2002-12-04Added support for the Implementers Guide.Michael Tüxen1-3/+69
svn path=/trunk/; revision=6744
2002-12-02Don't cast away constness, and fix variable and structure memberGuy Harris1-4/+4
qualifiers as necessary to ensure that we don't have to. "strcmp()", "strcasecmp()", and "memcmp()" don't return booleans; don't test their results as if they did. Use "guint8", not "guchar", for a pointer to (one or more) 8-bit bytes. Update Michael Tuexen's e-mail address. svn path=/trunk/; revision=6726
2002-10-17Fixed a bug on 64 bit machines in the CRC32C algorithm. Thanks toMichael Tüxen1-5/+5
Jerome Forissier. svn path=/trunk/; revision=6444
2002-08-28Removed trailing whitespaces from .h and .c files using theJörg Mayer1-351/+351
winapi_cleanup tool written by Patrik Stridvall for the wine project. svn path=/trunk/; revision=6117
2002-07-10From Michael Tuexen:Guy Harris1-32/+16
get rid of presumably-unneeded #includes; correct the DATA chunk handling when padding bytes are available. svn path=/trunk/; revision=5857
2002-06-28From Michael Tuexen: update to match the latest I-Ds for two extensions:Guy Harris1-8/+40
http://www.ietf.org/internet-drafts/draft-ietf-tsvwg-addip-sctp-06.txt http://www.ietf.org/internet-drafts/draft-stewart-tsvwg-prsctp-01.txt svn path=/trunk/; revision=5784
2002-06-08When looking for dissectors for the source and destination port numbersGuy Harris1-17/+44
in TCP, UDP, and SCTP, try the lower port number first, and then the higher port number; this means that, for packets where a dissector is registered for *both* port numbers: 1) we pick the same dissector for traffic going in both directions; 2) we prefer the port number that's more likely to be the right one (as that prefers well-known ports to reserved ports); although there is, of course, no guarantee that any such strategy will always pick the right port number. Ignore port numbers of 0, as some dissectors use a port number of 0 to disable the port, and as RFC 768 says that the source port in UDP datagrams is optional and is 0 if not used. svn path=/trunk/; revision=5656
2002-05-30From Albert Chin: fix various non-GCC compiler warnings.Guy Harris1-2/+2
svn path=/trunk/; revision=5600
2002-05-18From Michael Tuexen: updates to later IETF drafts:Guy Harris1-141/+52
draft-ietf-tsvwg-addip-sctp-05.txt for the add-IP extension draft-stewart-prsctp-00.txt for the 'Partial Reliability' extension draft-ietf-tsvwg-sctpcsum-07.txt svn path=/trunk/; revision=5503
2002-04-16From Michael Tuexen: add missing support for the T-Bit in ABORT chunks.Guy Harris1-19/+31
svn path=/trunk/; revision=5174
2002-04-14From Joerg Mayer: get rid of some unused variables and arguments.Guy Harris1-63/+63
Use "tvb_get_ntohs()" to fetch the checksum from a VJ compressed packet, rather than doing the ntoh by hand. svn path=/trunk/; revision=5163
2002-03-03From Michael Tuexen: report the type of an unrecognized parameter.Guy Harris1-3/+5
svn path=/trunk/; revision=4855
2002-03-02From Michael Tuexen: update the CRC32 checksum code to matchGuy Harris1-4/+13
draft-ietf-tsvwg-sctpcsum-03. svn path=/trunk/; revision=4844
2002-02-02From Michael Tuexen:Guy Harris1-8/+16
add a hidden "sctp.port" field, with two instances per protocol tree, one with the source port and one with the destination port (like "tcp.port" and "udp.port"); replace "sctp.checksum_correct" with "sctp.checksum_bad" (like "tcp.checksum_bad" and "udp.checksum_bad"). svn path=/trunk/; revision=4682
2002-01-21Include files from the "epan" directory and subdirectories thereof withGuy Harris1-2/+2
"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-20Editorial change, from Michael Tuexen.Guy Harris1-5/+5
svn path=/trunk/; revision=4579
2002-01-20Allow a length of -1 to be specified when adding FT_NONE and FT_PROTOCOLGuy Harris1-21/+21
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-15Make the label for the SCTP checksum type preference item indicate thatGuy Harris1-2/+4
it's a checksum type (and remove "SCTP", as that's redundant), and make the blurb explain it in a bit more detail. svn path=/trunk/; revision=4549
2002-01-15From Michael Tuexen:Guy Harris1-48/+206
- Support of the crc32c algorithm. - Selection of the checksum algorithm (none, adler-32, crc32c, automatic) in the preferences/protocols menu. - Display of the IP address in asconf chunks. svn path=/trunk/; revision=4548
2001-12-19From Michael Tuexen - SCTP updates:Guy Harris1-83/+493
- Support for the Add-IP extension defined in http://www.ietf.org/internet-drafts/draft-ietf-tsvwg-addip-sctp-03.txt - Support for the Limited Retransmission extension of SCTP defined in http://www.sctp.org/draft-ietf-tsvwg-usctp-01.txt - Defining sctp.checksum_correct as a hidden boolean item to be able to search for SCTP packet with an incorrect checksum. svn path=/trunk/; revision=4426
2001-12-10Move the pointer to the "column_info" structure in the "frame_data"Guy Harris1-36/+36
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-12-08Attach a descriptive name field type and base to dissector tables; thatGuy Harris1-3/+5
specifies how the selector values used as keys in those tables are to be displayed, and the title to use when displaying the table. Use that information in the code to display the initial and current entries of various dissector tables. Have the dissector for BACnet APDUs register itself by name, and have the BACnet NPDU dissector call it iff the BAC_CONTROL_NET bit isn't set, rather than doing it with a dissector table. svn path=/trunk/; revision=4358
2001-12-03Make "dissector_add()", "dissector_delete()", and "dissector_change()"Guy Harris1-2/+5
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. svn path=/trunk/; revision=4308
2001-10-23Show parameter types in hex.Guy Harris1-31/+25
Make enumerated types be fields with a value_string table, so that you can filter on them by name. svn path=/trunk/; revision=4070
2001-08-28Get rid of "proto_tree_add_notext()" - if you create a subtree using it,Guy Harris1-5/+8
but, before you set the text, you throw an exception while putting stuff under the subtree, you end up with an absolutely blank protocol tree item, which is really gross. Instead of calling "proto_tree_add_notext()", call "proto_tree_add_text()" with at least a minimal label - yes, it does mean you do some work that will probably be unnecessary, but, absent a scheme to arrange to do that work if it *is* necessary (e.g., catching exceptions), the alternative is an ugly protocol tree display. svn path=/trunk/; revision=3879
2001-07-03Use the "pinfo" argument, rather than the global "pi", to refer to theGuy Harris1-3/+3
packet information in tvbuffified dissectors. svn path=/trunk/; revision=3645
2001-06-21Fix a typo.Guy Harris1-2/+2
svn path=/trunk/; revision=3597
2001-06-18From Joerg Mayer: explicitly fill in all members of aGuy Harris1-46/+46
"header_field_info" structure, including the ones that are later set by the routines to register fields. svn path=/trunk/; revision=3561
2001-04-23Move the declarations of IP protocol numbers to "ipproto.h" fromGuy Harris1-2/+2
"packet-ip.h". Fix Gerald's address in some files while we're at it. svn path=/trunk/; revision=3366
2001-04-20Fix Gerald's e-mail address - and fix it in "README.developer", soGuy Harris1-2/+2
people don't blindly insert the old address into new dissectors, which is probably how it got into the dissectors being fixed here. svn path=/trunk/; revision=3348
2001-04-09SCTP dissector fix from Michael Tuexen.Guy Harris1-10/+12
svn path=/trunk/; revision=3272
2001-01-25Remove more "CHECK_DISPLAY_AS_DATA()" calls and "pinfo->current_proto ="Guy Harris1-8/+4
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. "Tvbuffify" the Mobile IP dissector (it took old-style arguments, and then converted them into tvbuff arguments, so there wasn't much to do, other than to fix references to "fd" to refer to "pinfo->fd"). In the SCTP dissector, refer to the port type and source and destination ports through "pinfo" rather than through the global "pi", as it's a tvbuffified dissector. In the SMTP and Time Protocol dissectors, use "pinfo->match_port" rather than "TCP_PORT_SMTP" when checking whether the packet is a request or reply, just in case somebody makes a non-standard port be dissected as SMTP or Time. (Also, remove a bogus comment from the Time dissector; it was probably cut-and-pasted from the TFTP dissector.) svn path=/trunk/; revision=2938
2001-01-14Update from Michael Tuexen to enhance handling of bundled upper layerGuy Harris1-23/+44
packets. svn path=/trunk/; revision=2897
2001-01-13Support for dissectors registering themselves with a particular SCTPGuy Harris1-9/+12
payload protocol ID as well as with a particular SCTP port number, from Michael Tuexen. svn path=/trunk/; revision=2891
2001-01-11Update the SCTP dissector, and add a dissector forGilbert Ramirez1-336/+437
ISDN Q.921-User Adaptation Layer (IUA). Both are from Michael.Tuexen@icn.siemens.de> svn path=/trunk/; revision=2876