Commit graph

66 commits

Author SHA1 Message Date
Michael Mann
cc5543f824 Bluetooth enhancements. Bug 9446 (https://bugs.wireshark.org/bugzilla/show_bug.cgi?id=9446)
Bluetooth: SCO: Add Source/Destination addresses 
Bluetooth: HCRP: Use information from SDP to decoding PSM payload

From Michal Labedzki

svn path=/trunk/; revision=53816
2013-12-07 01:01:31 +00:00
Chris Maynard
b5e3775535 eject the packet if data is NULL without doing anything else.
svn path=/trunk/; revision=53733
2013-12-02 21:13:29 +00:00
Michael Mann
8dab82556c Bluetooth improvements. Bug 9446 (https://bugs.wireshark.org/bugzilla/show_bug.cgi?id=9446)
From Michal Labedzki.

1. Bluetooth: HFP: Fix recognizing roles. There is need to check which side SDP record is, then it is possible to recognize roles.
2. Bluetooth: RFCOMM/HFP: Fix recognizing services and roles. Direction bit means only that device is initiator of connection or not. But need information who is owner of connection (remote device or localhost), so use this information from L2CAP.
3. Bluetooth: HFP: Fix unexpected expert info
4. Bluetooth: HCI: Set addresses to host/controller. Also optimize a little handing of dissectors handles.

svn path=/trunk/; revision=53628
2013-11-28 18:11:02 +00:00
Bill Meier
21c772c7ed Create/use an extended value_string;
Use 'offset += 1' instead of 'offset++' for consistency;
Replace 32767 (as a mask) with 0x7FFF for clarity;
Remove some unneeded boilerplate comments;
Do whitespace changes.


svn path=/trunk/; revision=53577
2013-11-25 18:55:45 +00:00
Michael Mann
a267501b82 Bluetooth: Use dissector data instead of pinfo->private_data. Bug 7893 (https://bugs.wireshark.org/bugzilla/show_bug.cgi?id=7893)
From Michal Labedzki

svn path=/trunk/; revision=53051
2013-11-02 19:20:04 +00:00
Bill Meier
0ad98563a2 From didier gautheron: remove redundant or use faster col_xxx functions
- when the text parameter is constant col_add_str() and col_set_str() are equivalent but col_set_str() is faster.
- same for  replace col_append_fstr and col_append_str
- remove col_clear() when it's redundant:
    + before a col_set/col_add if the dissector can't throw an exception.
- replace col_append() after a col_clear() with faster col_add... or col_set

   https://bugs.wireshark.org/bugzilla/show_bug.cgi?id=9344


svn path=/trunk/; revision=52948
2013-10-29 14:09:20 +00:00
Michael Mann
3cc6957fa8 Bluetooth: Use items for logical block objects. Bug 9327 (https://bugs.wireshark.org/bugzilla/show_bug.cgi?id=9327)
Bluetooth protocols use items, so dissect it to improve filtering and better user experience - text object cannot be filterable or comparable.

From Michal Labedzki

svn path=/trunk/; revision=52863
2013-10-26 02:24:04 +00:00
Pascal Quantin
a0c53ffaa1 emem -> wmem conversion:
- ep_tvb_get_bits() -> wmem_packet_tvb_get_bits()
- tvb_g_memdup()/ep_tvb_memdup() -> tvb_memdup()
- tvb_fake_unicode()/tvb_get_ephemeral_faked_unicode() -> tvb_get_faked_unicode()
- tvb_get_g_string()/tvb_get_ephemeral_string()/tvb_get_seasonal_string() -> tvb_get_string()
- tvb_get_g_unicode_string()/tvb_get_ephemeral_unicode_string() -> tvb_get_unicode_string()
- tvb_get_ephemeral_string_enc() -> tvb_get_string_enc()
- update docs accordingly

svn path=/trunk/; revision=52172
2013-09-22 15:50:55 +00:00
Anders Broman
0e81643540 From Michal Labedzki:
Full dissection of EIR/AD and little improve filtering, cd 

https://bugs.wireshark.org/bugzilla/show_bug.cgi?id=9050

svn path=/trunk/; revision=51527
2013-08-27 05:08:34 +00:00
Michael Mann
edf1436360 Bluetooth: HCI: Synchronize and update Voice command. Bug 9050 (https://bugs.wireshark.org/bugzilla/show_bug.cgi?id=9050)
From Michal Labedzki.

svn path=/trunk/; revision=51411
2013-08-18 02:32:23 +00:00
Michael Mann
3ffb8e29b9 HCI: Full dissection of EIR/AD and little improve filtering, bug 9050 (https://bugs.wireshark.org/bugzilla/show_bug.cgi?id=9050)
From Michal Labedzki.

From me:
1. Have boolean filters use tfs_true_false instead of NULL (because it appears previous functionality had "TRUE" and "FALSE").  Perhaps other tfs_ values could be used, but tfs_true_false makes a good placeholder.
2. Add FT_ETHER field as a proto_tree_add_item.

svn path=/trunk/; revision=51410
2013-08-18 02:11:36 +00:00
Michael Mann
46192881d9 Create individual filters for HCI LMP features. Bug 9050 (https://bugs.wireshark.org/bugzilla/show_bug.cgi?id=9050)
From Michal Labedzki

svn path=/trunk/; revision=51409
2013-08-18 01:36:26 +00:00
Anders Broman
d91b6a1872 From Michal Labedzki:
HCI: Improve Class of Device dissection. 

https://bugs.wireshark.org/bugzilla/show_bug.cgi?id=8948

svn path=/trunk/; revision=50814
2013-07-23 04:23:19 +00:00
Anders Broman
0bbb2cbbaf From Michal Labedzki:
HCI: Add latest Assigned Numbers 

https://bugs.wireshark.org/bugzilla/show_bug.cgi?id=8948

svn path=/trunk/; revision=50813
2013-07-23 04:15:23 +00:00
Evan Huus
5d53d63cd7 From Michal Labedzki via
https://bugs.wireshark.org/bugzilla/show_bug.cgi?id=8824

Convert bluetooth emem trees to wmem trees.
Add modelines and fix indentation.
Correct typo in wmem_tree.h that still referred to emem.

svn path=/trunk/; revision=50076
2013-06-20 16:31:53 +00:00
Evan Huus
6976653023 From Michal Labedzki via https://bugs.wireshark.org/bugzilla/show_bug.cgi?id=8509
Unify bluetooth direction handling (sent vs rcvd).

svn path=/trunk/; revision=48661
2013-03-30 21:47:27 +00:00
Evan Huus
6d17f1153a From Michal Labedzki via https://bugs.wireshark.org/bugzilla/show_bug.cgi?id=8509
Round 3 of Bluetooth SDP updates. Update the list of company IDs and fix
service recognition.

svn path=/trunk/; revision=48660
2013-03-30 21:43:18 +00:00
Pascal Quantin
d31620a7bf From Michal Labedzki via https://bugs.wireshark.org/bugzilla/show_bug.cgi?id=8416 :
Remove C++ incompatibilities from Bluetooth dissectors and switch to wmem API

svn path=/trunk/; revision=48414
2013-03-19 13:51:52 +00:00
Anders Broman
2ae1d08bbe From Michal Labedzki:
Fix issues found by fix-encoding-args.pl
https://bugs.wireshark.org/bugzilla/show_bug.cgi?id=8304

svn path=/trunk/; revision=48388
2013-03-18 06:13:09 +00:00
Anders Broman
c2976ac508 From Michal Labedzki:
Fix issues discovered by cppcheck

Also use global OUI array in AVRCP.
Thanks to Evan Huus for cppcheck.

https://bugs.wireshark.org/bugzilla/show_bug.cgi?id=8304

svn path=/trunk/; revision=48387
2013-03-18 06:04:09 +00:00
Michael Mann
e094c21301 Minor Bluetooth fixes
1. Allow to DecodeBy payload over AVCTP
2. Fix L2CAP CID payload recognize after disc
3. Removed unneeded _U_
4. Fall back to control channel in AVRCP
5. Fix time-tracking for passthrough and capability AVRCP commands

From Michal Labedzki, bug 8367 (https://bugs.wireshark.org/bugzilla/show_bug.cgi?id=8367)

svn path=/trunk/; revision=47810
2013-02-21 22:00:32 +00:00
Guy Harris
29715ccc8f How can I get a new tvbuff that starts at an offset within a given
tvbuff and runs to the end of the tvbuff?  Let me count the ways....

Replace a bunch of different ways of doing that (some incorrect, in that
they're not properly handling tvbuffs where the captured and reported
lengths are different) with tvb_new_subset_remaining().

svn path=/trunk/; revision=47751
2013-02-19 23:17:07 +00:00
Chris Maynard
45e801913e Add a FALLTHROUGH comment to fix Coverity CID 745673: Missing break in switch.
(No need to backport.)

svn path=/trunk/; revision=47462
2013-02-04 02:50:26 +00:00
Guy Harris
8432edcc72 More checks to make sure pinfo->private_data is not null.
svn path=/trunk/; revision=46746
2012-12-25 22:48:01 +00:00
Guy Harris
c8f3c1d9a3 In dissect_bthci_evt_command_complete():
Make a loop counter a full-width integer, just to be sure.

Do *NOT* assume that pinfo->private_data is non-null; I have at least
one capture where it is null when dissect_bthci_evt_command_complete()
is captured.

svn path=/trunk/; revision=46743
2012-12-25 22:35:54 +00:00
Evan Huus
2461373edd Remove unneeded variable initializers.
svn path=/trunk/; revision=46328
2012-12-02 15:21:53 +00:00
Anders Broman
900b884f55 From Michal Labedzki:
Bluetooth: Add support for source/destination addresses

Within resolving devices names. Also make header file more generic,
packet-hci_h4.h renamed to packet-bluetooth-hci.h.

Part of:
https://bugs.wireshark.org/bugzilla/show_bug.cgi?id=5032

svn path=/trunk/; revision=46278
2012-11-29 13:21:10 +00:00
Martin Kaiser
c9b7d8c3c2 j should also be guint16 to prevent overflows in the while-loops
svn path=/trunk/; revision=45740
2012-10-23 20:35:19 +00:00
Pascal Quantin
67fdfbbcde From Allan M. Madsen via https://bugs.wireshark.org/bugzilla/show_bug.cgi?id=7905 :
Fix infinite loop in bthci_evt eir data handling

svn path=/trunk/; revision=45739
2012-10-23 20:27:57 +00:00
Anders Broman
576b37ddd8 from Allan M. Madsen:
Add support for HCI 3.0+HS and v4.0, Bluetooth Low Energy. This includes
dissection of additional HCI commands and events, Attribute Protocol and
Security Manager Protocol.

https://bugs.wireshark.org/bugzilla/show_bug.cgi?id=7872

svn path=/trunk/; revision=45709
2012-10-22 12:49:04 +00:00
Anders Broman
3805f354a4 From Michal Labedzki:
[PATCH 15] Bluetooth: Add modelines 

https://bugs.wireshark.org/bugzilla/show_bug.cgi?id=7639

svn path=/trunk/; revision=45422
2012-10-09 10:36:04 +00:00
Anders Broman
aa3c9034f5 From Michal Labedzki:
Bluetooth: Cleanup headers
Remove redundant headers and sort existing to chosen convention.

https://bugs.wireshark.org/bugzilla/show_bug.cgi?id=7639

svn path=/trunk/; revision=45039
2012-09-21 10:49:44 +00:00
Jeff Morriss
2552c750e5 We always HAVE_CONFIG_H so don't bother checking whether we have it or not.
svn path=/trunk/; revision=45017
2012-09-20 02:03:38 +00:00
Jakub Zawadzki
5a8783f5b1 Initial commit to support yet another method of passing data between dissectors.
Add new parameter 'data' to heur_dissector_t and new_dissector_t, for now it's always NULL

svn path=/trunk/; revision=44860
2012-09-10 21:40:21 +00:00
Jakub Zawadzki
b18e880040 Update FSF address - part II.
svn path=/trunk/; revision=43538
2012-06-28 23:18:38 +00:00
Chris Maynard
5e58b385da AFH Channel Map should be an FT_BYTES, not an FT_UINT_BYTES.
Ref: Core Version 2.1 + EDR, section 7.5.5 available from:
     https://www.bluetooth.org/Technical/Specifications/adopted.htm

svn path=/trunk/; revision=42547
2012-05-10 13:19:55 +00:00
Guy Harris
55b4bc0061 Might as well make the loop indices just guint; the generated code's
unlikely to be worse, and could be better on the 32-bit-and-bigger
machines on which Wireshark runs.

svn path=/trunk/; revision=42116
2012-04-17 23:08:23 +00:00
Anders Broman
cc650868af From Evan Huus: We were using guint8s as loop counters based on field lengths, and they were overflowing/wrapping falsely. Making them guint16s fixes the problem. Bug 7122 -HCIEVT infinite loop https://bugs.wireshark.org/bugzilla/show_bug.cgi?id=7122
svn path=/trunk/; revision=42114
2012-04-17 21:09:10 +00:00
Jeff Morriss
1731fc958e From Martin Kaiser via https://bugs.wireshark.org/bugzilla/show_bug.cgi?id=6977 :
The attached (trivial) patch adds some missing breaks in switch-case blocks.

This fixes coverity defects #445, #446, #1316 and #1380.

svn path=/trunk/; revision=41727
2012-03-21 22:18:15 +00:00
Bill Meier
3dd8ed0279 Use consistent indentation;
Do minor reformatting.

svn path=/trunk/; revision=41503
2012-03-12 14:40:09 +00:00
Jeff Morriss
b415128e48 From Michal Labedzki via https://bugs.wireshark.org/bugzilla/show_bug.cgi?id=6739 :
Update company ids and HCI/LMP versions to the latest Assigned Numbers

I made the cosmetic changes:
- simplify version description
- I updated all company ids from Assigned Numbers, so there are some very small
differences with old version (inadvertently)

Based on:
https://www.bluetooth.org/Technical/AssignedNumbers/hci.htm
https://www.bluetooth.org/Technical/AssignedNumbers/link_manager.htm
https://www.bluetooth.org/technical/assignednumbers/identifiers.htm

From me: list the above URLs in comments in the code.

svn path=/trunk/; revision=40681
2012-01-24 02:30:57 +00:00
Bill Meier
794757ae8f For proto_tree_add_item(..., proto_xxx, ...)use ENC_NA as the encoding arg.
Also: remove trailing whitespace for a number of files.

svn path=/trunk/; revision=39503
2011-10-21 02:10:19 +00:00
Alexis La Goutte
3f5cf478f4 Fix Dead Store (Dead assignement/Dead increment) Warning found by Clang
svn path=/trunk/; revision=39481
2011-10-19 21:55:08 +00:00
Chris Maynard
49fed7ed0d Display filter name cleanup.
svn path=/trunk/; revision=39452
2011-10-18 00:49:16 +00:00
Bill Meier
126aa85393 Convert proto_tree_add_item() 'encoding' arg for field types FT_STRING, FT_STRINGZ, FT_UINT_STRING as follows:
1. If there's no character encoding (ENC_ASCII, ...) specified
    then use ENC_ASCII.
 2. For all but FT_UINT_STRING, always use ENC_NA
    (replacing any existing True/1/FALSE/0
    /ENC_BIG_ENDIAN/ENC_LITTLE_ENDIAN).



svn path=/trunk/; revision=39426
2011-10-15 18:46:26 +00:00
Bill Meier
94f36ca4ff Use ENC_NA as encoding for proto_tree_add_item() calls which directly reference an hf item (in hf[] with types:
FT_NONE
   FT_BYTES
   FT_IPV6
   FT_IPXNET
   FT_OID

Note: Encoding field set to ENC_NA only if the field was previously TRUE|FALSE|ENC_LITTLE_ENDIAN|ENC_BIG_ENDIAN

svn path=/trunk/; revision=39260
2011-10-04 22:44:31 +00:00
Anders Broman
4b952c1324 Get rid of check_col, while at it set ENC.
svn path=/trunk/; revision=39146
2011-09-26 08:25:18 +00:00
Stig Bjørlykke
1c45c1a243 From Michael Mann via bug 2794:
Fixed display filters with obvious typos.

svn path=/trunk/; revision=36713
2011-04-19 08:22:58 +00:00
Guy Harris
a8bc4a0d13 Rename the routines that handle dissector tables with unsigned integer
keys to have _uint in their names, to match the routines that handle
dissector tables with string keys.  (Using _port can confuse people into
thinking they're intended solely for use with TCP/UDP/etc. ports when,
in fact, they work better for things such as Ethernet types, where the
binding of particular values to particular protocols are a lot
stronger.)

svn path=/trunk/; revision=35224
2010-12-20 05:35:29 +00:00
Anders Broman
e55dcbcdb7 From Andrei Emeltchenko:
Wrong link type in a packet(bluethouth).
https://bugs.wireshark.org/bugzilla/show_bug.cgi?id=5449

svn path=/trunk/; revision=35064
2010-11-29 18:15:09 +00:00