and have it return TRUE if we succeeded, FALSE otherwise - and have an
internal "process_tcp_payload()" routine handle the (TCP-specific) PDU
tracking and sequence number analysis, with an argument to indicate
whether it should do that or not (i.e., whether it's being handed a TCP
segment or reassembled data).
svn path=/trunk/; revision=8914
correct and enhance support for RSVP FAST_REROUTE and DETOUR
objects (source: draft-ietf-mpls-rsvp-lsp-fastreroute-03.txt);
support an RSVP SESSION_OBJECT object with ctype = 1. This
object contains resource affinities (source: RFC 3209).
svn path=/trunk/; revision=8913
packets/sessions, e.g. MSProxy and SOCKS. It should not cause any of
the TCP-specific stuff such as sequence number analysis or PDU tracking
to be done. (Actually, MSProxy and SOCKS should offer desegmentation
services *themselves* and do their *own* PDU tracking, rather than just
passing stuff on to "decode_tcp_ports()", but that's another matter.)
Make "tcp_tree" once again be a local variable to "dissect_tcp()", and
pass it as an argument to those functions that use it.
svn path=/trunk/; revision=8912
- Added support for displaying support for Multicast/Broadcast supported
bits in *LOGI common service params
- Removed restriction for "Random Relative Offset" & its alternate to be in
PLOGI or PDISC only. Some HBAs set it even in FLOGI.
svn path=/trunk/; revision=8907
- Added support for decoding related to Security in *LOGI service params
- Added support for new LS_RJT code for authentication failure
- Brought packet-fcsp.c up-to-date with FC-SP rev 1.2
svn path=/trunk/; revision=8906
KPasswd is partially dissected for UDP.
It would be very useful if someone added dissection of the asn.1 encoded
AP_REQ and the KRB-PRIV blobs. I dont think I will add those.
svn path=/trunk/; revision=8905
session where GSS-SPNEGO is used.
If we havent seen the BIND call ethereal would assume it is
vanilla non-GSS-SPNEGO LDAP and would fail to decode the packet.
Add heuristics to the LDAP dissector so that
IF the first 4 bytes of the LDAP PDU looks like ity could be a length field
and IF the fifth byte has the value 0x60
then assume what we have is GSS-SPNEGO and assume this and all further commands on this session is GSS-SPNEGO as well.
svn path=/trunk/; revision=8904
value so it can be handled specially (with a string dissector table so
that subdissectors can register for particular content types).
svn path=/trunk/; revision=8903
open.
The toolbar equivalent should *not* be available if we have an "Update
list of packets in real time" capture running.
The toolbar "Save" button should not be available if we don't have an
unsaved capture file.
svn path=/trunk/; revision=8902
Note that you have to modify plugins/Makefile.nmake.
Fix "plugin/" to "plugins/".
Update the sample Makefile.am and Makefile.nmake to match the current
state of affairs.
svn path=/trunk/; revision=8899
LDAP messages that span multiple segments will throw an exception unless we have reassembly enabled.
Update TCP so that IF an exception was thrown that we still pick up any hints
provided by the subdissector about where the next PDU starts.
Update LDAP so that it will rpovide hints to TCP about where the next LDAP PDU starts in the sequence number space.
Thus now ethereal can find and dissect LDAP PDUs that starts somewhere in the middle of a TCP segment.
svn path=/trunk/; revision=8895
(string) values to be put into the protocol tree as fields and allowing
some headers to get special treatment, and use it for Authorization,
Proxy-Authorization, WWW-Authenticate, and Proxy-Authenticate.
svn path=/trunk/; revision=8892
If we have short or malformed PDUs in protocols above TCP this will generate
an exception and thus some of the stateful things such as keeping track of
and printing the tcp analysis data will be shourcutted and not called.
Add a wrapper around the call to the subdissectors above TCP so that
if an exception is generated we will still catch it and explicitely
call tcp_print_sequence_number_analysis() so that also short packets are
handled well.
svn path=/trunk/; revision=8891
Sometimes if we cant decrypt a DCERPC packet decrypted_tvb is NULL.
do not pass a NULL pointer to show_stub_data() since this will dump
core.
svn path=/trunk/; revision=8890
run-time in the dissector itself), and <sys/types.h> and <netinet/in.h>
(we shouldn't need either of those, and they might be responsible for
dragging in <sys/procset.h> on Digital UNIX - that header defines P_SID
in a way that conflicts with our definition).
svn path=/trunk/; revision=8889
snoop file unless it has enoguh padding to hold a Shomiti trailer
record. (DEAR SUN MICROSYSTEMS: PLEASE DO NOT STUFF 16 OR MORE BYTES OF
PADDING INTO A SNOOP PACKET. THANK YOU. HAVE A NICE DAY.)
Add a little paranoia about the record and captured data lengths.
svn path=/trunk/; revision=8883
draft-ietf-ipsec-udp-encaps-06 says "The UDP port numbers are the same
as used by IKE traffic, as defined in [Kiv05]", and "[Kiv05]" is
draft-ietf-ipsec-nat-t-ike-05, which has been superseded by
draft-ietf-ipsec-nat-t-ike-07; the latter appears to imply that it goes
over port 4500, not port 500.
We already have a draft-ietf-ipsec-udp-encaps-06 dissector for port
4500 (packet-ipsec-udp.c), and it's not entirely clear to me how, if
draft-ietf-ipsec-udp-encaps-06 traffic *did* go over port 500, you'd
distinguish it from regular ISAKMP traffic.
svn path=/trunk/; revision=8882
somewhat; this fixes a bug wherein we were assuming all modules
necessarily had preference pages (they won't, if the only preferences
for the module are obsolete preferences).
svn path=/trunk/; revision=8880
* Extra headers: Encoding-Version, WWW-Authenticate,
Proxy-Authenticate
* Fix memory allocate/free in header parsing functions & macros
* Add missing "ok = TRUE" for some header parsing functions
* Header subfields all share the same subtree identifier (more
intuitive)
* Get rid of unused header fields and subtrees
* Some whitespace changes
svn path=/trunk/; revision=8879
the interface isn't in the list of known (local) interfaces - that way
we don't try to get entries if the user's in the middle of changing the
"Interface:" text, or if the interface is an rpcap: URL (getting the
link-layer header type list for a remote interface is currently
impossible, and even just getting its *default* interface type could
hang for a long time if the remote machine isn't responding).
Free the link-layer header type list when we're done with it.
Label the option menu for that list "Link-layer header type", as it
doesn't control the data link type of the interface in the only case I
know of where it's settable, namely 802.11 interfaces - it just controls
whether the packets you get from the interface have a fake Ethernet
header or a real 802.11 header.
svn path=/trunk/; revision=8867
need to call it if you already have a pointer to the first entry in the
list, which is what "a pointer to the list" is.
svn path=/trunk/; revision=8866
* Use function reference arrays for header parse function lookup
(avoids switch())
* Use macros for the common parts of the header parse functions
* Use macros for identical header dissection functions
* Implement many missing header parse functions
* Automatic header parse error notification
* Some minor edits
* Add HTTP equivalents to WSP status codes
svn path=/trunk/; revision=8865