Read the LUN value into a local variable always and use that to pass to the scsi dissector since we can always use this value from the iscsi heade for COMMAND pdus (but not data/in/out)
svn path=/trunk/; revision=13791
callers, so that they can tell "no decrypted tvbuff because I couldn't
decrypt it" from "no decrypted tvbuff because it's not encrypted in the
first place". Set that based on the Kerberos seal algorithm field in
the SPNEGO Kerberos 5 wrap dissector code.
Use that to determine whether the GSS-API encapsulated data in LDAP is
encrypted or not., rather than using a heuristic.
Set the length of the SASL blob tvbuff based on the SASL length and the
length of the tvbuff from which it's consstructed, rather than setting
it to the SASL length.
svn path=/trunk/; revision=13780
Use the same code to handle payload types in sessions set up by SDP and
sessions set up by other protocols, rather than duplicating that code.
svn path=/trunk/; revision=13775
is wrong; cast the "guint8" value to "guint" to widen it, so that adding
1 to it doesn't overflow. (But I don't think that cast should be
necessary - the "usual arithmetic conversions" in C should widen the
value anyway.)
svn path=/trunk/; revision=13770
cerlare it as a parameter that is a struct/union and not a ref pointer to one.
this is ok since toplevel ref pointers are invisible in the wire encoding anyway.
unfortunatelky ethereal dce runtime needed to see that pointer to keep track of whisch one was a toplevel and which one wasnt.
implement a new api to call pointers which explicitely specifies whether the pointer is toplevel or embedded.
eventually all dce dissectors will use this new interface and the generic dissect_ndr_pointer() can be retired.
svn path=/trunk/; revision=13755
(Perhaps we should just get rid of the "tag interpretation" field and,
instead, have explicit hf_ values for each of the fields and subfields.)
svn path=/trunk/; revision=13747
samples, and give the URL of the V5 spec and some hints about how to
handle the private enterprise code in those samples.
For subtrees that cover structures, make the tree cover the entire
structure, not just the first field.
Add the flow sample type and extended data type to the protocol tree.
Set the protocol column name to capitalize "sFlow" the conventional way,
and remove the redundant "sFlow" from the Info column.
svn path=/trunk/; revision=13744
dissecting it; instead, fetch items from the tagged field as we go.
Also, check the length of the tagged field against a minimum length, if
there is one.
When adding the SSID, just fetch it directly as a string, and leave it
up to the string display code to deal with non-printable characters.
When dissecting a tagged field, don't zero out the "out_buff" buffer
beforehand, just stick in the terminating '\0' afterwards.
svn path=/trunk/; revision=13743
Rename the RequestDissector type to ReqRespDissector as it's used to
dissect status (response) lines as well as request lines.
svn path=/trunk/; revision=13738
beautifully fine.
this patch overrides the array, tells idl2eth to not generate code to unmarshall the conformance blob or the data for the array.
a handwritted replacement function is implemented in the template instead which prettifies the output a lot.
svn path=/trunk/; revision=13735
now that we can decrypt DCERPC
the dissection is not complete since idl2eth can not yet handle
all the weird extensions in the idl file yet.
svn path=/trunk/; revision=13729
- Give each IE its own subtree, with a summary at the root, and
details within the tree. It allows a condensed view when IE
trees are closed.
- Display country info in multiple protocol tree items, with
each (start channel, channels, power) triplet in a separate
item.
- Put a separate item into the protocol tree for each CFP
parameter.
svn path=/trunk/; revision=13713
should be used for ATM, so just use the data dissector for now.
The X.25 dissector registers itself as "x.25", not "x25".
svn path=/trunk/; revision=13711
fix the call to "rtp_add_address()" to match the new signature;
fix a problem with the codec displayed in the "Voip Graph"
for H245 "RequestMode" messages.
svn path=/trunk/; revision=13709
routine to handle that.
Don't format the value text into a buffer; just use
"proto_item_append_text()", so we don't run the risk of overflowing the
buffer.
Use "ip_to_str()" to format an IP address - don't roll our own code to
handle that.
Don't make "is_fhss" global - that causes its value to depend on the
last packet dissected, which isn't necessarily the right value for the
packet being dissected.
svn path=/trunk/; revision=13707
(cifs: dc's talking to eachother and when longhorn comes out: anyone wanting to talk dce to a dc!)
((this is an incredibly advanced feature well worthy of mentioning in NEWS))
svn path=/trunk/; revision=13690
Use "tvb_reported_length_remaining()", not "tvb_length_remaining()", in
the loop parsing the packet contents, so we throw an exception on a
short frame (to mark that it *is* a short frame).
Use "tvb_format_text()" for text strings, so we don't have a problem
with non-printable characters.
Use "ether_to_str()" to turn MAC addresses into strings.
Clean up indentation.
svn path=/trunk/; revision=13679
- better parsing for TIM info element: it parses 'bitmap control' byte
and provides list of AID for stations having power saving traffic.
- separate names for TIM elements. It helps to higlight beacons with
some properties, for example DTIM ones (dtim_count==0).
svn path=/trunk/; revision=13678
and Kerberos decryption is enabled in preferences
and if we have the keytab file available
then attempt to decrypt Secure LDAP
svn path=/trunk/; revision=13660
make spnego able to decrypt data wrapped inside
GSSAPI/SPNEGO/KRB5 arcfour-hmac
This code will be more etherealified and evolve into being able to link with MIT as well.
svn path=/trunk/; revision=13659
Replace the use of the undefined type krb5_keyusage (at least with heimdal)
in decrypt_krb5_data with the old int. The change wasn't complete anyway
as the .h file wasn't changed and the third implemenitation of
decrypt_krb5_data was left out also.
Disclaimer: I only made sure it compiles again, I don't know whether the
change has any side effects.
svn path=/trunk/; revision=13645
recursion instead of iteration means that packets with sufficiently
large lists can cause it to overflow the stack and crash.
svn path=/trunk/; revision=13643
("Data lengths larger than 2^32-1 are not encodable using primitive
tags"), so it doesn't need to be a "guint64" - but it *can* be that big,
so we should handle the 65536-2^32-1 case.
Don't gratuitously throw away the upper 24 bits of various lengths by
casting them to guint8.
Show signed values as such.
Don't use "match_strval()" - it returns a null pointer if it doesn't
find the value in the value_string table; instead, use "val_to_str()" so
we don't blow up if the value isn't found.
svn path=/trunk/; revision=13640
will treat it as negative" problem by first calling
"tvb_ensure_bytes_exist()" - if the length is *that* large, it will run
past the end of the tvbuff, so the exception that
"tvb_ensure_bytes_exist()" will throw with a negative argument will be
the correct exception.
svn path=/trunk/; revision=13614
comment appropriately.
Make a bunch of routines static.
Don't just dissect stuff past the end of the variable portion as data -
the protocol spec doesn't appear to say there's anything after that.
Don't pass the offset to the routines to dissect the different types of
PDUs, just have them start at 0.
Use guint8 for 8-bit unsigned quantities.
Rename the routine to dissect Abort PDUs to match the other PDU
dissectors.
svn path=/trunk/; revision=13611
followed by PRIu64.
Don't use C++/C99-style comments.
Use "tvb_reported_length()" to get packet lengths - don't use
"tvb_length()", and especially don't directly refer to the "length"
field of the tvbuff.
svn path=/trunk/; revision=13609
decrypt and behold the new password in plaintext in all its glory
(given you have the keytab with the old one of course)
svn path=/trunk/; revision=13586
don't do it if we don't have the entire packet, including the
CRC value;
fetch the CRC value from the packet with tvb_get_letoh24(),
and compare that against the computed CRC, rather than comparing
the computed CRC (presumably in host byte order) with the
little-endian CRC in the packet (that doesn't work if host byte
order is big-endian).
svn path=/trunk/; revision=13571
the iscsi layer will not hold the LUN value (it is reserved)
so we need to remember if from the initial Command PDU.
make the LUN reporting work for errorrecoverylevel==0 targets
svn path=/trunk/; revision=13563
- stat_infos are mantained in a GPtrArray to avoid leaking and overwriting them
- added http_host and request_uri to http_info_value_t
svn path=/trunk/; revision=13555
1) added _U_ tags in RMT dissectors to suppress "unused parameter" warnings.
2) added a dissector_add_handle("ip.udp", ip_handle) to IP dissector, to
allow the following chain of protocols: IP over UDP over IP. It seems
uncommon, but it's used by implementations of experimental protocols
(e.g. TCP-XM) that run a userspace IP stack (e.g. lwIP) over UDP. The
dissector of IP over UDP must be enabled explicitly using the "decode
as..." window.
svn path=/trunk/; revision=13540
"decode_boolean_bitfield()" returns a "const char *" - don't cast it to
a "gchar *" and modify what it points to. Instead, just use
"other_decode_bitfield_value()".
svn path=/trunk/; revision=13494
on scsi.lun and prettify the summary line a bit.
ndmp still needs some work to track luns between commands
and fcp needs verification it works for volumesetaddressing.
svn path=/trunk/; revision=13420
make it possible to prettify SIDs and control how and where their string representation should be shown in the summary line and the tree
similar to how counted_strings prettification can be controlled
svn path=/trunk/; revision=13413
files. Do this with GENERATED_HEADER_FILES, GENERATED_C_FILES, and
GENERATED_FILES macros in Makefile.common files, along the lines of what
wiretap/Makefile.common has.
Clean up "*~" files with "make clean" rather than only "make distclean"
in some additional places.
Add "maintainer-clean" rules to the Makefile.nmake files, paralelling
the ones in the automake-generated Makefile.in files, using the
GENERATED_FILES macros from Makefile.common files. In some cases, move
the cleanup of files from "make distclean" to "make maintainer-clean",
and in other cases, put in a comment indicating why we're not doing that
(because some files that are distributed in the source tarballs, namely
Flex output, were built with a UN*X Flex and won't compile on Windows,
so we get rid of them with "make distclean" so you can clean up stuff
that *has* to be re-generated for Windows).
Clean up some *CLEANFILES definitions - get rid of ones that no longer
apply as files were moved or that add to the definition a name that's
already there.
svn path=/trunk/; revision=13402
BSSGP:
- Does not dissect the LLC-PDU twice
LLC:
- Add CRC calculation to differ between ciphered and non-ciphered packets without taking care about the encryption bit.
This solves crashes when the option "ignore ciphere bit" was activated
GMM/SM:
- Dissect detach_type now correctly ( fixed by Miklos Szurdi )
- Dissect timer correctly ( fixed by Miklos Szurdi )
- Update SM causes for Release 6 ( Miklos Szurdi )
- Update service_type for Release 6 ( Miklos Szurdi )
- Rearange pco code like Guy Harris has suggested ( Guy Harris )
- reimplement dissection of IPv4 and IPv6 addresses
- Fix offset in pdp_addr
- Fix offset in Traffic Flow Template (tft)
svn path=/trunk/; revision=13386
BSSGP:
- Does not dissect the LLC-PDU twice
LLC:
- Add CRC calculation to differ between ciphered and non-ciphered packets without taking care about the encryption bit.
This solves crashes when the option "ignore ciphere bit" was activated
GMM/SM:
- Dissect detach_type now correctly ( fixed by Miklos Szurdi )
- Dissect timer correctly ( fixed by Miklos Szurdi )
- Update SM causes for Release 6 ( Miklos Szurdi )
- Update service_type for Release 6 ( Miklos Szurdi )
- Rearange pco code like Guy Harris has suggested ( Guy Harris )
- reimplement dissection of IPv4 and IPv6 addresses
- Fix offset in pdp_addr
- Fix offset in Traffic Flow Template (tft)
svn path=/trunk/; revision=13385