- Properly handle DataBlocks with optional fields at end;
- Fix a few field dissections;
General code cleanup;
- Remove almost all tests using tvb_length_remaining():
If there's not enough data available, just let an
exception be thrown.
- Fix a memory leak;
- Simplify code in various places.
- Add a reference to the (a ?) Microsoft spec for RDP.
Fixes Bug #7862 in a more complete manner than SVN #45566.
svn path=/trunk/; revision=46158
/home/wireshark/builders/trunk/ubuntu1204x64/build/epan/dissectors/packet-bssgp.c: In function de_bssgp_son_transfer_app_id:
/home/wireshark/builders/trunk/ubuntu1204x64/build/epan/dissectors/packet-bssgp.c:3173:12: error: variable next_tvb set but not used
[-Werror=unused-but-set-variable]
cc1: all warnings being treated as errors
svn path=/trunk/; revision=46125
Enhancement to support MPLS-TP FM and LI payloads as per RFC 6427 and RFC 6435
Fixed some errors found by checkapi, changed filter names to use
proto abbr.
svn path=/trunk/; revision=46084
- In de_bssgp_pdu_in_error() use current_offset isof 0.
- in function de_bssgp_ran_inf_error_rim_cont. Error rim
container doesn't have field rim sequence number. This field exists in the rest
of containers but not in this one. So I have removed this field.
In this function we have field pdu in error and this field is mandatory, not
optional
https://bugs.wireshark.org/bugzilla/show_bug.cgi?id=8000
svn path=/trunk/; revision=46081
We hand the user data in a CR or CC packet to the subdissectors,
but don't tell the subdissectors that - do we need to?
We don't hand the data in an ED packet to the subdissectors -
should we, and do we need to tell them that it's an ED packet?
svn path=/trunk/; revision=46067
epan/exceptions.h; it crashes).
Try BER first, including both the test dissection and the check of the
results. If that fails due to an exception being thrown, or due to the
results not indicating that it's a BER-encoded T.125 packet, try PER, so
that if the BER dissection doesn't work we don't just give up.
Get rid of some _U_s attached to parameters that are, in fact, used.
svn path=/trunk/; revision=46066
ReportedBoundsError exceptions when attempting to dissect the first bit
of the packet and, if either is thrown, assume the packet isn't a packet
for what we were trying to dissect, rather than just completely failing.
Return TRUE if the heuristic T.124 dissector recognizes the packet.
Get rid of some _U_s attached to parameters that are, in fact, used.
svn path=/trunk/; revision=46064
Also simplify a hash function - haven't measured collisions, but before
change sometimes wrong results would get attached. Don't think I fixed
it, and don't understand how equality function could have matched even
if hash function were colliding...
svn path=/trunk/; revision=46063
the source and destination address lengths and data, and adding them in,
rather than by copying those fields to a fixed-size static buffer - that
gets rid of a global variable (global variables considered harmful), and
also means that we don't try to copy 24 bytes of length+address from
packets that don't *have* 24 bytes of length+address (which caused
exceptions to be thrown on some OSI captures I have).
Construct some LI #defines out of other LI #defines, to make it a bit
clearer why they have the values they do.
Support the "additional information related to the clearing of the
connection" variable part parameter of the COTP DR packet (which just
means giving it a name, as its contents are user-defined - some HP-UX
OSI stack appears to just stick in a string saying that it's said
stack).
Make the code that decodes the variable part of a DR packet look like
the code that decodes the variable part of most other packets.
For COTP CR packets, determine the class up front by checking whether
the length is > 2. (At some point we might want to associate a class
indication with the COTP connection, if we see the connection setup,
and, if we have that indication, use it in preference to the
heuristics.)
Make the code to handle various length indicator values in the ATN case
more like the code in the non-ATN case.
Dissect the variable part of COTP ER packets.
Fix tpyos (TDPU->TPDU, tdpu->tpdu) and typpoes (accross->across).
Clean up white space.
svn path=/trunk/; revision=46060
through a clause in a switch statement to the following clause (that's
what /* FALLTHROUGH */ is for - it was originally a comment to tell lint
not to complain about the lack of a break statement).
Use guint8 rather than guchar for an 8-bit binary value.
Add a comment noting the weird stuff Microsoft does with RDP atop ISO
COTP atop TPKT.
svn path=/trunk/; revision=46052
calc_checksum() doesn't return a Boolean, it returns a cksum_status_t,
which has more values than just "checksum OK" and "checksum not OK",
such as "not enough data available to check the checksum).
Fix typoes (Transport Protocol Data Unit is TPDU/tpdu, not TDPU/tdpu).
svn path=/trunk/; revision=46051
the OSI connectionless network protocol is both ISO 8473 and
ITU-T Recommendation X.233;
the OSI connection-oriented transport protocol is both ISO 8073
and ITU-T Recommendation X.224;
the OSI connectionless transport protocol is both ISO 8602 and
ITU-T Recommendation X.234.
(Yes, this means that the "X.224" dissector we have is redundant, as we
have an OSI transport protocol dissector already.)
svn path=/trunk/; revision=46050
as handling the application/x-amf media type.
Add support for dissecting AMF3.
Dissect AMF0 dates as milliseconds-since-the-Epoch.
Dissect AMF0 typed objects.
Add URLs for various Adobe specs for RTMP, AMF0 and AMF3.
svn path=/trunk/; revision=46047
Error: packet-ositp.c : {..., NULL} is required as the last XXX_string array entry: value_string tp_vpart_checksum_vals[]
svn path=/trunk/; revision=46044