pointer arguments to "proto_tree_add_XXX" functions are copied - if you
allocated a buffer for one of them (e.g., a string), and you don't free
that buffer when you're done with it, you'll leak memory.
svn path=/trunk/; revision=8796
Add dissection code for the following additional SCSI commands:
- Start/Stop Unit
- Write Buffer
- Send Diagnostics
Don't copy the product serial number to a buffer before printing
it.
svn path=/trunk/; revision=8795
a button that brings up the Create Filter dialog box. While it works, the
problem is that it also acts as an Enter keypress as far as the start_stat
button is concerned.
Probably needs a small fix.
svn path=/trunk/; revision=8782
return "<no file>" if there is no file loaded yet instead of crashing in io-stat
io-stat only print the label for the top tick on the y axis to make it look less cluttered
svn path=/trunk/; revision=8781
greater than the alphabet length.
Just use "proto_tree_add_item()" if you have a range of bytes, of known
length, that are to be added as an item - that handles both FT_STRING
and FT_BYTES, including null-terminating the string value.
svn path=/trunk/; revision=8779
moved some variables to the structure where they belonged instead of where they
currently were and reduced the complexity of the code
Fast Retransmission:
Ethereal not tries to detect and flag FastRetransmissions:
The heuristics for this check is:
>=3 dupacks in other direction
this semgent is what the dupacks are asking for
it arrived within 10ms of the last dupack (10ms should be short enough to not confuse with real RTOs)
OutOfOrder segments
Previously all segments that did not advance the right edge of the window was flagged as retransmission now ethereal will try to flag segments that are merely reordered as OutOfOrder segments insteaD
tHE HEURISTICS ARE:
it has not been ACKed yet
we have not seen it before
it arrived within 4ms of the segment immediately to the right in the window
svn path=/trunk/; revision=8775
swap the "captured length" and "length" fields, to the open-file code;
store a tri-state (definitely swapped, definitely not swapped, maybe
swapped) value in the per-capture-file-format information for libpcap
format, and use that when processing packets.
svn path=/trunk/; revision=8774
1, TunnellingProtocol_id is a CHOICE not a SEQUENCE
2, change some values to be FT_STRING instead of FT_BYTES
3, update dissect_per_octet_String to always 0 terminate all FT_STRINGs
(if necessary in a temporary buffer) before passing them on to proto_tree_add_string() since that function did not want to handle FT_STRING or FT_STRINGZ othervise.
svn path=/trunk/; revision=8771
The group for a request isn't part of the packet, so give it an offset
and length of 0, so if you select it we doesn't highlight some part of
the packet.
svn path=/trunk/; revision=8763
table and can identify replies to them.
Clean up white space.
Note that the "is_signed" hack doesn't work with Ethereal.
svn path=/trunk/; revision=8762
0.
In "dcerpc_try_handoff()", remove the authentication padding from the
stub data handed to the subdissector - that's not really stub data for
the subdissector, and it should throw an exception if the request or
response would go into the authentication padding. Don't even try to
dissect the remaining stub data if the authentication padding value
consumes all the stub data or would consume even more than that.
Show any "Long frame" data before the authentication padding, and show
the authentication padding as the stuff at the very end of the stub
data, after the "Long frame" data.
Catch all exceptions when dissecting authentication information, so that
even if it's bad or we don't have all of it, we still dissect the stub
data.
Try dissecting authentication trailer information even if we don't have
all of it in the tvbuff - we want an exception to be thrown if we don't.
Don't try to dissect it if it eats into the stub data, however.
Don't bother catching exceptions in "dissect_auth_verf()" - we now
always catch exceptions in above it in the DCE RPC dissector call tree.
Use CATCH_ALL and "show_exception()" when calling the sub-dissector for
a connection-oriented PDU; that means we won't have to worry about
adding new exception types unless they're types that we should rethrow.
svn path=/trunk/; revision=8759
argument, and puts the appropriate exception indication into the tree.
In "dissect_frame()", do a CATCH_ALL for exceptions, and pass the
exception code to "show_exception()".
svn path=/trunk/; revision=8758
exception, for use in CATCH_ALL handlers, so you can catch all
exceptions and then pass the exception code on to a routine that handles
different exceptions differently.
svn path=/trunk/; revision=8757
entire tvbuff for Secure Channel bind credentials.
Use -1 rather than 0 to have the top-level item for Secure Channel ACK
credentials cover the entire tvbuff.
svn path=/trunk/; revision=8756
remove the check on 3 ports only - since Yahoo! Messenger can
stream on any port;
remove the check that will not dissect if the packet is not big
enough - as partial dissection is also helpful sometimes;
the version is 2 bytes, not 4 bytes.
svn path=/trunk/; revision=8752