aboutsummaryrefslogtreecommitdiffstats
path: root/packet-ip.h
AgeCommit message (Collapse)AuthorFilesLines
2003-08-23New feature. Statistics/EndpointTalkjers can now present a sortable table ↵sahlberg1-3/+3
with a list of all seen conversations of a certain type. Supported types are Ethernet/TokenRing/IP/UDP and TCP. Will add FibreChannel soon. The framework for this feature needs to be enhanced in the future so that by selecting one entry and click the right mousebutton, this will bring up a menu with Prepare/Match options with suboptions for AnyDirection, ForwardOnly or ReverseOnly which updates the display filter accordingly. Had to update some of the taps as well to change them to use a proper address structure for the address fields. We should now be able to to these stats correctly even for ip tunneled over ip tunnelled over ip ... git-svn-id: http://anonsvn.wireshark.org/wireshark/trunk@8222 f5534014-38df-0310-8fa8-9805f1628bb7
2003-07-11Add a routine "dissect_ipv6_options()" that works likeguy1-23/+1
"dissect_ip_tcp_options()" but for options that are like IPv6 options (i.e., the length byte has a value that doesn't include the option code or length byte). Add an "ip_opts.h" header to declare it, and move the declaration of stuff used by it and "dissect_ip_tcp_options()", and the declaration of "dissect_ip_tcp_options()", to that header. Use "dissect_ipv6_options()" for Mobile IPv6 options. Get rid of the unused "mip6_opt_types[]" array in "packet-mip6.h". git-svn-id: http://anonsvn.wireshark.org/wireshark/trunk@8015 f5534014-38df-0310-8fa8-9805f1628bb7
2003-04-29Don't export "ip_dissector_table" explicitly; now that we haveguy1-4/+1
"find_dissector_table()", have the IPv6 and IPSEC dissectors fetch the IP dissector table by name. git-svn-id: http://anonsvn.wireshark.org/wireshark/trunk@7600 f5534014-38df-0310-8fa8-9805f1628bb7
2003-01-22Patch for packet-ip to make it TAPablesahlberg1-1/+15
git-svn-id: http://anonsvn.wireshark.org/wireshark/trunk@6969 f5534014-38df-0310-8fa8-9805f1628bb7
2002-08-28Removed trailing whitespaces from .h and .c files using thejmayer1-4/+4
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-2/+2
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
2001-12-29Make "dscp_vals[]" a "const" array again.guy1-2/+2
git-svn-id: http://anonsvn.wireshark.org/wireshark/trunk@4460 f5534014-38df-0310-8fa8-9805f1628bb7
2001-12-29Changes to RSVP:ashokn1-1/+4
- Cleaned up TSpec and Flowspec support to handle multiple parameters - Added support for Compression Hint (RFC3006) - Added support for DCLASS (RFC2996) - Corrected some bugs in support for Null Service (RFC2997) git-svn-id: http://anonsvn.wireshark.org/wireshark/trunk@4459 f5534014-38df-0310-8fa8-9805f1628bb7
2001-12-10Move the pointer to the "column_info" structure in the "frame_data"guy1-3/+3
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-11-20Make the capture routines take an additional argument giving the amountguy1-3/+2
of packet data captured. Make the "BYTES_ARE_IN_FRAME()" macro take a "captured length of the packet" argument. Add some length checks to capture routines. git-svn-id: http://anonsvn.wireshark.org/wireshark/trunk@4235 f5534014-38df-0310-8fa8-9805f1628bb7
2001-04-23Move the declarations of IP protocol numbers to "ipproto.h" fromguy1-36/+2
"packet-ip.h". Fix Gerald's address in some files while we're at it. git-svn-id: http://anonsvn.wireshark.org/wireshark/trunk@3366 f5534014-38df-0310-8fa8-9805f1628bb7
2001-03-05Move the definition of IP_PROTO_IGRP to "packet-ip.h", and put an entryguy1-1/+2
for IGRP in the table in "ipproto.c". Get rid of a duplicate entry for TCP in the same table, and also get rid of the entry for IP_PROTO_IPV4 right after IP_PROTO_IPIP, as IP_PROTO_IPIP and IP_PROTO_IPV4 are both 4. git-svn-id: http://anonsvn.wireshark.org/wireshark/trunk@3106 f5534014-38df-0310-8fa8-9805f1628bb7
2001-01-22Remove more "CHECK_DISPLAY_AS_DATA()" calls and "pinfo->current_proto ="guy1-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. Make the IP dissector static, as it's called only via dissector tables or dissector handles. Also make the "dissect the TOS field as the DiffServ DS field" flag static, as it's not referred to outside of "packet-ip.c". In the NCP dissector, refer to the port type through "pinfo" rather than through the global "pi", as it's a tvbuffified dissector. git-svn-id: http://anonsvn.wireshark.org/wireshark/trunk@2929 f5534014-38df-0310-8fa8-9805f1628bb7
2000-12-04Add a "col_clear()" routine, to clear a column; it appears (and itguy1-3/+4
doesn't just seem to be a profiling artifact) that, at least on FreeBSD 3.4, it's significantly more efficient to clear out a column by stuffing a '\0' into the first byte of the column data than to do so by copying a null string (I guess when copying one byte, the fixed overhead of the procedure call and of "strcpy()" is significant). Have the TCP dissector set the Protocol column, and clear the Info column, before doing anything that might cause an exception to be thrown, so that if we *do* get an exception thrown, the frame at least shows up as TCP. Instead of, in the TCP dissector, constructing a string and then stuffing it into the Info column, just append to the Info column, which avoids one string copy. Pass a "frame_data" pointer to dissectors for TCP and IP (and PPP) options, so they can use it to append to the Info column. git-svn-id: http://anonsvn.wireshark.org/wireshark/trunk@2744 f5534014-38df-0310-8fa8-9805f1628bb7
2000-11-18Tvbuffify the IP, ICMP, TCP, UDP, OSI CLNP, OSI COTP, OSI CLTP, and OSIguy1-4/+4
ESIS dissectors. Register the IP dissector and have dissectors that call it directly (rather than through a port table) call it through a handle. Add a routine "tvb_set_reported_length()" which a dissector can use if it was handed a tvbuff that contains more data than is actually in its part of the packet - for example, handing a padded Ethernet frame to IP; the routine sets the reported length of the tvbuff (and also adjusts the actual length, as appropriate). Then use it in IP. Given that, "ethertype()" can determine how much of the Ethernet frame was actually part of an IP datagram (and can do the same for other protocols under Ethernet that use "tvb_set_reported_length()"; have it return the actual length, and have "dissect_eth()" and "dissect_vlan()" use that to mark trailer data in Ethernet II frames as well as in 802.3 frames. git-svn-id: http://anonsvn.wireshark.org/wireshark/trunk@2658 f5534014-38df-0310-8fa8-9805f1628bb7
2000-05-26Initial SCTP support (showing it by name from "ipprotostr()") fromguy1-1/+2
Michael Tuexen. git-svn-id: http://anonsvn.wireshark.org/wireshark/trunk@2011 f5534014-38df-0310-8fa8-9805f1628bb7
2000-04-25Fixed declaration of ip_dissector_table and clarified bitwidth doco.gram1-2/+2
Patch from Ben Fowler <wapdev@leedsnet.com> git-svn-id: http://anonsvn.wireshark.org/wireshark/trunk@1888 f5534014-38df-0310-8fa8-9805f1628bb7
2000-04-20Have the IPv6 dissector use the same dissector table as the IPv4guy1-1/+4
dissector. Don't dissect the payload of any fragmented IPv6 packet unless it's the initial fragment (that's what we do for IPv4). git-svn-id: http://anonsvn.wireshark.org/wireshark/trunk@1882 f5534014-38df-0310-8fa8-9805f1628bb7
2000-02-15Create a header file for every packet-*.c file. Prune the packet.h file.gram1-1/+4
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. git-svn-id: http://anonsvn.wireshark.org/wireshark/trunk@1637 f5534014-38df-0310-8fa8-9805f1628bb7
2000-01-20Joerg Mayer's updates to the VINES dissector and to protocol layersguy1-2/+3
above VINES. git-svn-id: http://anonsvn.wireshark.org/wireshark/trunk@1514 f5534014-38df-0310-8fa8-9805f1628bb7
1999-11-21Added Heikki Vatiainen's <hessu@cs.tut.fi> VRRP dissector.gram1-1/+2
git-svn-id: http://anonsvn.wireshark.org/wireshark/trunk@1083 f5534014-38df-0310-8fa8-9805f1628bb7
1999-11-16Replace the ETT_ "enum" members, declared in "packet.h", withguy1-3/+3
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. git-svn-id: http://anonsvn.wireshark.org/wireshark/trunk@1043 f5534014-38df-0310-8fa8-9805f1628bb7
1999-10-30Don Lafontaine's IGRP/EIGRP dissector.guy1-7/+2
git-svn-id: http://anonsvn.wireshark.org/wireshark/trunk@949 f5534014-38df-0310-8fa8-9805f1628bb7
1999-10-15IPComp (RFC2393) decoding.itojun1-1/+2
git-svn-id: http://anonsvn.wireshark.org/wireshark/trunk@838 f5534014-38df-0310-8fa8-9805f1628bb7
1999-08-28PPP options in LCP, IPCP, etc. are like IP and TCP options - one octetguy1-5/+6
of option code, one octet of length (which includes the two option code and length bytes), followed by 0 or more octets of option data, with some options being fixed-length and some being variable-length. Put some stuff from the PPP control protocol option parsing code into the IP-and-TCP option parsing code, and use the latter instead of the former. (That code might also be usable for CDP as well, with some stuff added to it.) Shuffle the arguments to "dissect_ip_tcp_options()" to resemble those of various other dissectors (i.e., with the "proto_tree *" at the end). Add in code to dissect a pile of PPP options documented in various RFCs. git-svn-id: http://anonsvn.wireshark.org/wireshark/trunk@601 f5534014-38df-0310-8fa8-9805f1628bb7
1999-06-11Added RSVP protocol dissector.gram1-1/+2
git-svn-id: http://anonsvn.wireshark.org/wireshark/trunk@304 f5534014-38df-0310-8fa8-9805f1628bb7
1999-06-11Added PPPoE, PPTP, GRE, and ISAKMP dissectors.gram1-1/+2
git-svn-id: http://anonsvn.wireshark.org/wireshark/trunk@303 f5534014-38df-0310-8fa8-9805f1628bb7
1999-03-28Jun-ichiro's IPv6 patch is merged in with ethereal and now uses the newgram1-1/+27
proto*() functions. The configure script tries to use ipv6 name resolution if it knows the type of ipv6 stack the user has (this can be avoided with the --disable-ipv6 switch) Additionally, the configure script now deals with wiretap better. If the user doesn't want to compile wiretap, the wiretap is never visited. A few unnecessary #includes were removed from some wiretap files, and a CPP macro was moved from bpf.c to wtap.h. git-svn-id: http://anonsvn.wireshark.org/wireshark/trunk@229 f5534014-38df-0310-8fa8-9805f1628bb7
1999-03-23Removed all references to gtk objects from packet*.[ch] files. They nowgram1-0/+56
reference the protocol tree with struct proto_tree and struct proto_item objects. That way, the packet decoding source code file can be used with non-gtk packet decoders, like a curses-based ethereal, e.g. I also re-arranged some of the information in packet.h to more appropriate places (like other packet-*.[ch] files). git-svn-id: http://anonsvn.wireshark.org/wireshark/trunk@223 f5534014-38df-0310-8fa8-9805f1628bb7