call a new function to start dissecting what unknown fields we can dissect.
Currently only PrintableString and INTEGER implemented but it will be easy to add other BER Universal types as needed later
svn path=/trunk/; revision=12544
i think it is high time to put makefiles down in asn1/ since this autogenerating dissectors "experiment" have payed off so well and it actual;ly works!
i dont know anything about how autogen stuff works :-(
svn path=/trunk/; revision=12522
Only one function is implemented so fat M-Get but it would be trivial to add all the missing ones once there are example captures.
svn path=/trunk/; revision=12521
It worked reasonably well mainly, I suspect, due to implicit tags are reasonably uncommon in the dissectors we have already implemented and that the bugs were masking eachothers.
my regression tests (limited test samples though) decodes this new one exactly the same as the old one.
As a bonus by not changing anythiong in the decode is that now it is possible to get dissection of implice items to work properly, hence CMIP
(and also x509 Extensions work now)
make heaps of dissector helpers implicit_tag aware.
change asn2eth to generate code to call the implicit_tag aware integer dissector helper.
svn path=/trunk/; revision=12520
make ethereal be able to measure the time it took to transfer a PDU atop TCP.
This is great for analyzing performance issues caused by network/frame loss/congestion.
See http://wiki.ethereal.com/TcpPduTime
svn path=/trunk/; revision=12516
Contact header in the REGISTER reply contains more then one binding.
Details: up to now each Contact header was counted as one binding. But that
is not correct, because several Contact headers (as several other SIP headers
as well) can be written in one line separated by commatas.
svn path=/trunk/; revision=12507
fix the heuristic code -- sometimes a conversation already
exists;
fix the dissect code to display all the tags in the PDU.
svn path=/trunk/; revision=12504
support 6 additional login message verbs;
correct a problem with displaying proper return code values in
the reply packets.
Clean up white space.
Use "tvb_reported_length_remaining()" instead of
"tvb_length_remaining()", and don't use either one to avoid throwing an
exception on a short or malformed packet.
Use "val_to_str()" rather than "match_strval()", so we don't crash if a
value happens not to be valid.
svn path=/trunk/; revision=12503
so they show up near the top of the list of fields in the dialog box for
adding a field to a filter - those are probably quite likely to be used
in filter expressions where you don't happen to remember the name of the
field, and those should show up at the top so you don't have to scroll
through the entire list of fields to find them. (I suspect most other
fields either will rarely be filtered on at all, or would be filtered
only mainly with the "Match" or "Prepare" filter items, where you don't
need to know the name or even the text of the field.)
svn path=/trunk/; revision=12489
might have 0 in what would be the Ethernet type field.
Also, handle the first 5 octets of the destination address of an ISL
frame being 0C-00-0C-00-00.
svn path=/trunk/; revision=12484
take stuff that has to be done regardless of whether a protocol
tree is being built outside "if (tree)";
handle PDUs with both data and control units.
svn path=/trunk/; revision=12481
key list. In the Nettle code, clear the key list and re-read the key
file when the key file preference changes.
Remove a redundant define in config.h.win32.
svn path=/trunk/; revision=12471
use it ("sec_rgy_pname_t_size" had been used as an hf_ value, but it's
just a #define).
Fix the code for some strings to advance the offset by the string size
regardless of whether it's > 1 or not.
svn path=/trunk/; revision=12454
length of the UDP header itself, so subtract the length of the header
when using it to limit the length of the payload tvbuff.
Clean up the computing of the captured length of the payload tvbuff (we
really should get rid of the "length" argument to "tvb_new_subset()",
and have it compute the captured length based on the supplied reported
length and the amount of that data actually present in the parent
tvbuff).
Don't fetch the length and checksum fields until we use them (so that we
don't throw an exception until then, and fail to process the source and
destination ports), and check whether the length is bogus regardless of
whether we're building a protocol tree or not.
svn path=/trunk/; revision=12444
should be the length of the packet being dissected, so that if we throw
an exception dissecting it, the item covers the entire packet (because
it's incomplete, and thus *all* of it is the beginning of the header).
Instead, we should pass the length of the part of the header prior to
the protocol field as an argument to "dissect_ppp_common()", and it
should use that to set the length of that item.
svn path=/trunk/; revision=12441
by his madwifi Atheros driver on Linux; rename
WTAP_ENCAP_IEEE_802_11_WLAN_BSD to WTAP_ENCAP_IEEE_802_11_WLAN_RADIOTAP,
and change its text name from "ieee-802-11-bsd" to
"ieee-802-11-radiotap".
svn path=/trunk/; revision=12429
long.
The offset is relative to the first byte of the TIFF structure, which is
after the "Exif\0" *and* the extra byte after "Exif\0".
Loop over all IFDs.
Sanity check the offset to the first IFD and the offset in each IFD to
the next IFD.
svn path=/trunk/; revision=12424
"void".
Fix a typo in the MAP Dialogue dissector template .h file.
Re-generate the MAP Dialogue dissector files and set svn:keywords to Id
and svn:eol-style to native for them.
svn path=/trunk/; revision=12419
Clean up indentation.
If we dissect an octet string and then re-dissect it as a particular
type of data, don't use the end offset from the re-dissection as the
offset of the end of the octet string - just use the result of
"dissect_per_octet_string()".
svn path=/trunk/; revision=12406
*". For val_u_byte, if non-null, it points to a "value_string" table to
be used to interpret the value. Replace "toggle" and "yes_no" with
"boolean, and have the "data" pointer point to a "struct
true_false_string" to be used to interpret the value.
The NetBIOS-over-TCP/IP Node Type option can now be a regular val_u_byte
value, with the appropriate value_string table.
Construct the item for DHCP options by initializing it without the value
and appending the value to the item's string with
"proto_item_append_text()".
svn path=/trunk/; revision=12391
just like "struct opt_info", except for the name of the "enum
field_type" field; use "opt_info" instead of them. Rename the
equivalent field in "struct o63_opt_info", as well, with an eye towards
changing "struct opt_info" to be able to replace "struct o63_opt_info"
as well.
svn path=/trunk/; revision=12389
ever necessary.
Make some options, that have only one IPv4 address, use ipv4 rather than
ipv4_list.
Add val_u_short_list, and have val_u_short accept one and only one
16-bit integer. Give options the appropriate type.
Shuffle the types a bit in the enum, and shuffle the cases for types
around to match the order in the enum.
svn path=/trunk/; revision=12388
and add a separate "ipv4"; use that in the dissector for Netware IP
options.
Add a "presence" option type, for options with no value whose presence
is significant; use that in the dissector for Netware IP options.
svn path=/trunk/; revision=12387
end of the option, and have them do bounds checking. Also, in some
places, check the suboption length.
In "dissect_netware_ip_suboption()", process the suboption length
(which, according to RFC 2242, is present in all suboptions), and use
val_u_byte rather than val_u_short for 1-byte options.
svn path=/trunk/; revision=12386
distribution.
Don't use ":=" - not all versions of make necessarily support it, and,
even for those that do, it doesn't mean the same thing in all versions
(it means something different in Solaris make than in GNU make, for
example).
svn path=/trunk/; revision=12371
all other BSD NFS clients) retransmit on different ports from the port
on which the original request was set, so have the RPC "conversation"
for connectionless protocols use only the source address and destination
port.
Use NO_ADDR_B and NO_PORT_B when looking up the conversation in those
cases, and use NO_ADDR2 and NO_PORT2 when creating the conversation in
those cases, to make it clearer that we're only using one address and
port.
svn path=/trunk/; revision=12362
- change DHCP option 122 dissection to use official RFC 3495/3594 wording
(if bootp.pkt.ccc.protocol_version preference setting is 2 or 3)
- update CableLabs specification references
- some minor cleanup (option 43 also)
svn path=/trunk/; revision=12338
- add full support for upcoming PacketCable 1.5
- fix bug regarding MTA/CM Device Capabilities Length
- PacketCable MTA: fix bug regarding RSVP and UGS-AD options
- make presentation more compact (similar to other TLV data dissectors)
- change some descriptions and variables to (hopefully) make more sense
to DOCSIS/PacketCable users
svn path=/trunk/; revision=12325
allocate them to be large enough.
Add checks that the numbers in the range fit in a guint32.
Check the validity of a range before saving or printing, and report
errors in an alert box.
Clean up white space.
svn path=/trunk/; revision=12320
if HAVE_KERBEROS and HAVE_MIT_KERBEROS are both defined in config.h
Now we need someone to hack up the required automake magic to detect MIT Kerberos and massage the makefiles accordingly.
svn path=/trunk/; revision=12296
RFC 2132, which says
Options containing NVT ASCII data SHOULD NOT include a trailing
NULL; however, the receiver of such options MUST be prepared to
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
delete trailing nulls if they exist.
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
svn path=/trunk/; revision=12295
Add more COPS client type values from the IANA cops-parameters page.
Get rid of per-dissection static variables - pass them as parameters.
Make functions not used outside packet-cops.c static.
svn path=/trunk/; revision=12294
draft-ietf-aaa-diameter-cc-06.
Indicate where the Diameter application IDs for 3GPP stuff came from.
Update URLs for various Diameter drafts.
svn path=/trunk/; revision=12293
I am amazed it worked at all and noone complained.
It is little less broken now and handles some of the PrintableStrings properly.
svn path=/trunk/; revision=12262
Only display this value if we really have some data to ACK
which is not always the case.
This fixes a problem recently reported to the list
svn path=/trunk/; revision=12259