Age | Commit message (Collapse) | Author | Files | Lines |
|
codes for 802.11i.
svn path=/trunk/; revision=10466
|
|
"tvb_memcpy()"ing to it, and putting in a null terminator;
"tvb_get_string()" will check whether all bytes of the string are
present before allocating the buffer, so that you don't leak memory if
the copy throws an exception, and don't crash if the length is absurdly
large.
Use "tvb_memdup()" instead of allocating a buffer and "tvb_memcpy()"ing
to it, so that an exception is thrown before you try to allocate the
buffer (for the same reasons as listed above).
Before allocating a buffer used when processing a chunk of data from a
packet, get a pointer to the chunk with "tvb_get_ptr()", or check that
the data is all there with "tvb_ensure_bytes_exist()", so that an
exception is thrown before you try to allocate the buffer (for the same
reasons as listed above).
Fix up the lengths of the tvbuff used when dissecting ONC RPC opaque data
with a particular dissector.
svn path=/trunk/; revision=10236
|
|
encapsulation by bridges - this one stuffs a complete Ethernet frame
into the payload of a data frame.
svn path=/trunk/; revision=10091
|
|
it, similar to the Ethernet pseudo-header's "fcs_len" field, and use it
in the 802.11 dissector.
svn path=/trunk/; revision=9884
|
|
hex_str_to_bytes(). Use the new routine to initialize any WEP keys we
have defined. This has the side effect of fixing an overflow if the user
entered a long WEP key.
svn path=/trunk/; revision=9471
|
|
treat it as a reassembled frame" hack *only* for 802.11, as that's the
only protocol we know of that requires it.
svn path=/trunk/; revision=9367
|
|
control field, and have a preference in the LWAPP dissector to specify
whether to use it or the regular 802.11 dissector, as some hardware
sends out LWAPP-encapsulated 802.11 packets with a byte-swapped FC field.
svn path=/trunk/; revision=8534
|
|
Instead of using "dissect_vendor_specific_ie()" to dissect the WPA key
data, turn the code to dissect a collection of 802.11 tagged parameters
into a routine, use that routine when dissecting 802.11 management
frames, and also use it to dissect the key data.
svn path=/trunk/; revision=8513
|
|
the units for output power are dBm, not dbi;
decode multiple start channel/number of channels/output power
combinations;
display the output power as a signed value.
Additional change from Martijn Schipper to fix the display of the output
power.
Pass the tagged data value pointer to "dissect_vendor_specific_ie()".
Don't special-case unknown tag values - use "val_to_str()" even for
unknown tag values, and handle the value in the "default:" case.
svn path=/trunk/; revision=8501
|
|
than tag-specific code, put it, and the tag length, into the protocol
tree. Make those fields FT_UINT8, as they're one byte long.
Don't pass to "dissect_vendor_specific_ie()" variables whose names and
values are the same as global variables.
svn path=/trunk/; revision=8499
|
|
svn path=/trunk/; revision=8470
|
|
being complete and for fragmentation being trivial (i.e., the packet in
question is both the first and last fragment). Have its callers *not*
do that check - this lets "process_reassembled_data()" put in the
"Reassembled in" item for fragments other than the last fragment.
Add a "Reassembled in" field to TDS.
svn path=/trunk/; revision=8295
|
|
Rename "crc32()" so as not to collide with the one in zlib; rename
"crc32_802()" to match.
svn path=/trunk/; revision=8268
|
|
Extract the FCS decoding section of the PPP_HDLC dissector to
allow the CHDLC dissector to use the same routine.
The ppp_options used for preferences has been renamed to
fcs_options and exported via packet-ppp.h so CHDLC gets a
separate (but identical) FCS preference.
This means prefs.h has to be included before packet-ppp.h so a
couple of ppp related files (packet-{gtp,null,raw,vj}.c) had
their includes slightly re-arranged.
From me: make the PPP/CHDLC FCS code use "crc32()" to check the 32-bit
FCS.
svn path=/trunk/; revision=8266
|
|
and use it in the Ethernet dissector as well, to check the FCS in
Ethernet frames, if present.
svn path=/trunk/; revision=8265
|
|
parse the WEP keys every time they're changed, not just when we
start up;
make the description of the WEP keys in the preference more
accurate.
svn path=/trunk/; revision=7922
|
|
NSIS definition file.
svn path=/trunk/; revision=7793
|
|
frames and WPA IE in 802.11 beacon and probe response frames.
svn path=/trunk/; revision=7770
|
|
allocated with "g_malloc()" and related GLib routines.
svn path=/trunk/; revision=7758
|
|
svn path=/trunk/; revision=7740
|
|
but not for <buf_size> or greater. Discovered by Timo Sirainen.
svn path=/trunk/; revision=7731
|
|
svn path=/trunk/; revision=7584
|
|
null) to the "fragment_items" structure, and don't pass that value into
"process_reassembled_data()", just have it use the value in the
"fragment_items" structure passed to it.
Make "process_reassembled_data()" capable of handling reassembly done by
"fragment_add_seq_check()", and use it in the ATP and 802.11 dissectors;
give them "reassembled_in" fields. Make "process_reassembled_data()"
handle only the case of a completed reassembly (fd_head != NULL) so that
we can use it in those dissectors without gunking the code up too much.
svn path=/trunk/; revision=7513
|
|
draft 7.1 of 802.11g, plus a few response codes defined in 802.11b.
svn path=/trunk/; revision=7392
|
|
attempt reassembly of a higher-level packet that includes the
lower-level packet, use "tvb_bytes_exist()" to check whether all the
data that's to be included in the reassembly is available, rather than
by checking whether the packet is short.
Add some checks of that sort that were missing.
Use the reported length of the packet when doing reassembly.
Make the "iphdrlen" field of a "packet_info" structure be the length of
the IP header in bytes, not in 4-byte words.
svn path=/trunk/; revision=7274
|
|
to match draft 6.1 of the 802.11g spec.
svn path=/trunk/; revision=7168
|
|
2-byte bitfields, as the capability field is 2 bytes long.
svn path=/trunk/; revision=6980
|
|
support for two new 802.11 elements used in the latest IEEE
802.11g draft version: ERP Information and Extended Support
Rates;
two new capabilities flags.
svn path=/trunk/; revision=6978
|
|
list of packets corresponding to a reassembled pdu
svn path=/trunk/; revision=6807
|
|
header.
Add overflow checks to "BYTES_ARE_IN_FRAME()", and cast all arguments to
unsigned values (negative values should never be passed) to squelch
compiler warnings.
svn path=/trunk/; revision=6567
|
|
into the protocol tree.
svn path=/trunk/; revision=6524
|
|
sequence numbers or offsets and are thus assumed to be received in order
with no duplicates or dropped fragments (e.g., for NetBIOS Frame, where
802.2 LLC guarantees in-order delivery to NetBIOS with no duplicates or
dropped fragments).
"show_fragment_tree()' and "show_fragment_seq_tree()" don't modify the
"fragment_items" to which the "fit" argument points, so make that
argument a "const fragment_items *".
Make all the "fragment_items" tables "static" (as they're not used
outside the modules defining them) and "const" (as they're not
modified).
Add support for reassembly of NetBIOS fragmented requests and responses.
Get rid of an unnecessary include of "packet-tr.c" in the NetBIOS
dissector, and make its table of dissection function pointers static.
Fix some typos in the AppleTalk and NetBIOS dissectors.
svn path=/trunk/; revision=6491
|
|
ICV, depending on whether it was successfully verified or not.
svn path=/trunk/; revision=6464
|
|
winapi_cleanup tool written by Patrik Stridvall for the wine
project.
svn path=/trunk/; revision=6117
|
|
equivalents for the toplevel directory. The removal of winsock2.h will
hopefully not cause any problems under MSVC++, as those files using
struct timeval still include wtap.h, which still includes winsock2.h.
svn path=/trunk/; revision=5932
|
|
svn path=/trunk/; revision=5918
|
|
dftest.c:
Remove #if-0-ed includes
packet-ieee80211.c, packet-wtls.c, packet-afp.c, packet-wsp.c,
packet-wtp.c, ethereal_gen.py:
Remove redundant include varargs (already in snprintf.h,
and required only for snprintf.h)
Remove unused include of snprintf.h from files not using
"snprintf()".
svn path=/trunk/; revision=5889
|
|
don't end up with an empty tree for the parameters.
Fetch the IV and key regardless of whether we're building a protocol
tree; that ensures that we know we have the IV/key before we try to
dissect stuff after it.
svn path=/trunk/; revision=5741
|
|
svn path=/trunk/; revision=5735
|
|
svn path=/trunk/; revision=5706
|
|
Put the WEP header tree under the top-level 802.11 tree, rather than
putting it at the top level itself.
svn path=/trunk/; revision=5702
|
|
Use "memset()" rather than "bzero()", as "memset()" is the official ANSI
C routine (and you get an error when compiling with MSVC++ if you use
"bzero()").
svn path=/trunk/; revision=5699
|
|
mangling of the 802.11 dissector, and optional processing of an FCS at
the end of the frame.
When dissecting the frame-type-dependent part of the header, dissect all
management frames (including ones with an invalid subtype) the same, and
dissect all data frames (including ones with an invalid subtype) the
same.
svn path=/trunk/; revision=5696
|
|
but for stuff reassembled with "fragment_add_seq()" or
"fragment_add_seq_check()".
Add a "fragment tag" string to the "fragment_items", so that packets
with fragmentation errors can be properly flagged as having "Illegal
fragments" or "Illegal segments" depending on the term used with the
protocol in question.
Make all the dissectors that can use "show_fragment_tree()" or
"show_fragment_seq_tree()", and don't already use them, do so.
svn path=/trunk/; revision=5644
|
|
in the "packet_info" structure instead, as we don't need a pointer for
every single frame in the capture file, just for each frame for which we
currently have an open "epan_dissect_t".
svn path=/trunk/; revision=5614
|
|
argument to "tvb_new_subset()" - just use -1 if the subset tvbuff is to
run to the end of the parent tvbuff.
svn path=/trunk/; revision=5597
|
|
svn path=/trunk/; revision=5327
|
|
svn path=/trunk/; revision=5233
|
|
svn path=/trunk/; revision=5221
|
|
least some of the reassembly mechanism, so we can deal with both bogus
and real last fragment (display the bogus ones as unfragmented frames,
treat the real ones as fragments).
svn path=/trunk/; revision=5186
|