aboutsummaryrefslogtreecommitdiffstats
path: root/epan/dissectors/packet-tcp.h
AgeCommit message (Collapse)AuthorFilesLines
2012-02-10Since the nonce and reserved bits were added in r34084, tcp.flags is now 12 ↵Chris Maynard1-10/+11
bits, so its type needs to be changed from an FT_UINT8 to an FT_UINT16. This should avoid the crash experienced by Lanell Allen as reported on -dev: http://article.gmane.org/gmane.network.wireshark.devel/24846 (although in my testing on Windows XP SP3 (32-bit), Wireshark did not crash). svn path=/trunk/; revision=40949
2011-07-15Stop using the conversation index for tcp stream values as the gaps in the ↵Sake Blok1-0/+6
numbering is causing to many questions. Also, numbering could be different for the same file when viewed on different Wireshark versions, which could lead to confusion too. (see also: http://ask.wireshark.org/questions/5056/how-does-wireshark-calculate-the-tcp-stream-index) svn path=/trunk/; revision=38056
2011-07-06From György Szaniszló:Anders Broman1-0/+3
Introduced a new tcp state variable: maxseqtobeacked, this is the maximum seq number that can be acked by the rev party in normal case. This new state variable only serves the proper detection of tcp.analysis.ack_lost_segment indicator, and decouples it from the detection of tcp.analysis.lost_segment indicator. https://bugs.wireshark.org/bugzilla/show_bug.cgi?id=6081 svn path=/trunk/; revision=37922
2011-01-08Add "tcp.window_size_value" and "tcp.window_size_scalefactor" conformSake Blok1-2/+2
the discussion in bug 5541. Since we now have the window size value as well as the scaled window size, there is no need anymore for the tcp preference "tcp_window_scaling". svn path=/trunk/; revision=35425
2010-09-08Expand the TCP flags to include the low nibble of the byte that hasStephen Fisher1-1/+3
the header length in the high nibble. The only new flag is nonce (NS); the remaining three bits are still reserved. svn path=/trunk/; revision=34084
2010-08-29From Cal Turney (bug 5132):Sake Blok1-0/+1
TCP bytes_in flight becomes inflated with lost packets This patch suspends Bytes-in-Flight calculation when missing packets are detected. svn path=/trunk/; revision=33994
2010-08-26Fix a number of doxygen directives.Anders Broman1-0/+1
svn path=/trunk/; revision=33930
2010-05-26Fix indentation.Anders Broman1-17/+17
svn path=/trunk/; revision=32972
2009-08-21Sanitize epan includesKovarththanan Rajaratnam1-1/+1
svn path=/trunk/; revision=29499
2009-06-09Enable Lua tcp tap userdata.Stig Bjørlykke1-2/+2
svn path=/trunk/; revision=28673
2009-05-14Add support for process flow records to IPFIX, which required addingGerald Combs1-11/+29
support for vendor-specific IEs. Fix variable-length record handling. Add conversation tracking to the UDP dissector and add process flow information to TCP and UDP conversations. This lets us run process flow collectors on one or more machines and have the process username, PID, command name, etc. show up in the TCP and UDP protocol trees. svn path=/trunk/; revision=28366
2008-09-30Make the index from the conversation-struct available as fieldSake Blok1-1/+6
"tcp.stream", this will make it possible to sort packets by tcp stream, filter tcp streams exactly, etc. It is also the preparation for a fix for bug 1447 svn path=/trunk/; revision=26305
2008-08-25add a preference and code for tracking how many un-acked bytes are in Ronnie Sahlberg1-0/+1
flight on a tcp connection. this is quite useful toghether with io-grapgs to track how much of the tcp window that an application actually uses svn path=/trunk/; revision=26067
2008-08-12From Eric Travis:Anders Broman1-0/+3
Enhancement providing parsing capability for TCP Options 20 & 21 (IANA assigned). svn path=/trunk/; revision=25991
2007-12-17From metatech:Stephen Fisher1-0/+1
New dissector for RTMP(T) protocol via bug #2078 svn path=/trunk/; revision=23902
2007-09-25This patch adds two new fields to the tcp-dissector:Sake Blok1-1/+21
tcp.time_relative ==> the time that has elapsed since the first packet that was seen in the current TCP stream tcp.time_delta ==> the time that has elapsed since the last packet that was seen in the current TCP stream Calculating these timestamps is turned off by default to not use the extra memory that is needed for the per-packet-data. It can be turned on through the TCP protocol preferences svn path=/trunk/; revision=22966
2007-04-06export some desegmentation functions from TCP dissector to reuse them in ↵Tomas Kukosa1-0/+8
SSL/TLS desegmentation svn path=/trunk/; revision=21346
2006-11-21Correct comments and examples on get_pdu_len().Jaap Keuter1-1/+1
svn path=/trunk/; revision=19949
2006-11-07fix for bug 1200Ronnie Sahlberg1-0/+2
there used to be a bug in tcp reassembly that even if the dissector only asked for x more bytes from the next segment the entire segment would still be added to reassembly. this caused some issues when there was a new multisegment pdu that started at the end of the segment but this bug was fixed when tcp reassembly was refactored semi-recently. there was also another "bug" in the http reassembly that it would only ask for one more byte at a time when doing reassembly. this did work well however when we still had the bug in tcp reassembly but made wireshark become very very very slow once this tcp bug was fixed since it is very very very slow to reassemble a huge http pdu just one byte at a time. this patch adds partial support (what we need for http which does not use tcp_dissect_pdus() ) for the desegmentation flag : DESEGMENT_ONE_MORE_SEGMENT and also to the http dissector so that reassembly of http headers spanning multiple semgents now become fast again svn path=/trunk/; revision=19859
2006-10-31change the signature for the get_pdu_len() function pointer passed to ↵Ronnie Sahlberg1-1/+1
tcp_dissect_pdus() to also include a packet_info pointer. there are many reasons why some protocols actually need to be able to access the pinfo structure while determining the pdu size svn path=/trunk/; revision=19751
2006-09-10implement support to reassemble tcp sessions until the end of the session (FIN)Ronnie Sahlberg1-0/+5
add required code to the http (and others) code in req_resp_hdrs.c to signal to tcp when it wants a session to be reassembled to the FIN. This is currently done for all HTTP packets where we have a Content-type in the header but no content-length. svn path=/trunk/; revision=19185
2006-08-14rename some structures and defines from the se_tree to the emem_tree prefixRonnie Sahlberg1-2/+2
svn path=/trunk/; revision=18894
2006-05-21change a whole bunch of ethereal into wiresharkRonnie Sahlberg1-2/+2
svn path=/trunk/; revision=18196
2006-04-28 tcp analysis updates to prepare for later tcp reassembly updatesRonnie Sahlberg1-6/+8
now that we have se_tree_lookup32_le we can do the tracking of pdu boundaries much more efficiently. track pdu boundaries by a new tcp_multisegment_pdu structure that is indexed by sequence numbers and let this structure replace the older tcp_next_pdu structure. with se_tree_lookup32_le we no longer need to track segment by segment and can get rid of the two hash tables tcp_pdu_tracking_table tcp_pdu_skipping_table Neither do we need the tree tcp_pdu_time_table anymore so that one is gone as well. remove various other functions that are no longer needed due to removing the structure and the tables/tree this part of the code shoul;d be much more readable now and also a bit faster svn path=/trunk/; revision=18024
2006-03-20waste a couple of bytes per tcp conversation and make the tree for ↵Ronnie Sahlberg1-0/+4
acked_packets (i.e. packets that have interesting tcp properties such as being retransmissions etc) hang off the per conversation tcpd struct instead of being global. while this should improve performance by unmeasurably little it does have the sideeffect that once we finish the rewrite tcp analysis might actually work and work well even for tcp over tcp tunnelling. this also means that if you include packet-tcp.h you also need to include emem.h . svn path=/trunk/; revision=17681
2006-03-02 make the tcp_acked struct a pointer from the tcpd struct since we might ↵Ronnie Sahlberg1-3/+9
need it hanging around. only call subdissectors for packets that are NOT keepalives nor zerowindowprobes. keepalives only contain garbage anyway and zerowindowproes just contain a single byte of incomplete data so whats the point trying to dissect it further. svn path=/trunk/; revision=17443
2006-01-26rewrite of the tcp sequence number analysis code to hopefully make it ↵Ronnie Sahlberg1-1/+88
cleaner and easier to maintain and extend. i have tested it with many captures but this used to be fragile and delicate code so there might be some regressions that will need to be addressed once identified. svn path=/trunk/; revision=17107
2005-06-03From Mike Duigou:Anders Broman1-1/+1
A minor change to the prototype of tcp_dissect_pdus() which uses the function pointer type from packet.h svn path=/trunk/; revision=14535
2005-03-12from Micheal Duigou: some more doxygen tagsUlf Lamping1-1/+2
svn path=/trunk/; revision=13732
2004-07-18Move dissectors to epan/dissectors directory.Gilbert Ramirez1-0/+96
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. svn path=/trunk/; revision=11410