Commit Graph

91 Commits

Author SHA1 Message Date
Michal Labedzki e01c07aadb Bluetooth: L2CAP: Fix disconnection CIDs
CID has two roles: Source CID and Destination CID. This two roles
have another two different meanings: one if frame is received, another if frame
is sent (SCID is "DCID", etc). Then using information that PDU is "request"
or "response" we can correctly recognize CID.

This should fix unrecognized L2CAP payload while there were no valid
Disconnection Request.

Change-Id: Ibcbbb9e6966873b6af12c1e3c65c6a3983aa4163
Reviewed-on: https://code.wireshark.org/review/807
Reviewed-by: Anders Broman <a.broman58@gmail.com>
2014-03-24 12:28:58 +00:00
Michal Labedzki 992c65cb1a Bluetooth: L2CAP: A little update to Core 4.1
Add some command codes seen in Core 4.1 specification.
Also add some missing fields.

Change-Id: If3761744b1ada185027a560bceb66804d7eea8ec
Reviewed-on: https://code.wireshark.org/review/806
Reviewed-by: Anders Broman <a.broman58@gmail.com>
2014-03-24 12:27:21 +00:00
Michal Labedzki c9dd46c278 Bluetooth: Make Source/Destination BD_ADDRs and names filterable
Source/Destination BD_ADDRs and name are filterable.
Also simplify code around wmem trees, and enable commented "data"
field in unreassembled case and fix btl2cap offsets
(discovered by enabling "data" field).

Change-Id: Ic28c9bf19bcd6281b652be538b221da74df4bb76
Reviewed-on: https://code.wireshark.org/review/471
Reviewed-by: Evan Huus <eapache@gmail.com>
2014-03-06 05:58:06 +00:00
Michal Labedzki 248c284622 Bluetooth: Fix interface_id
Interface ID should correspond to the Wireshark Interface Id
to avoid mixing data from various interfaces in dissectors.

Change-Id: Ibaa3ddab7f0ebd0985efea74439b94a5881145a7
Reviewed-on: https://code.wireshark.org/review/472
Reviewed-by: Evan Huus <eapache@gmail.com>
2014-03-06 05:53:52 +00:00
Alexis La Goutte 296591399f Remove all $Id$ from top of file
(Using sed : sed -i '/^ \* \$Id\$/,+1 d')

Fix manually some typo (in export_object_dicom.c and crc16-plain.c)

Change-Id: I4c1ae68d1c4afeace8cb195b53c715cf9e1227a8
Reviewed-on: https://code.wireshark.org/review/497
Reviewed-by: Anders Broman <a.broman58@gmail.com>
2014-03-04 14:27:33 +00:00
Michael Mann 11a61d757d Bluetooth/Ubertooth improvements. Bug 9606 (https://bugs.wireshark.org/bugzilla/show_bug.cgi?id=9606)
From Michal Labedzki

1. Bluetooth: Implement the rest of fields in Low Energy Link Layer dissector
2. Bluetooth: Merge all UUIDs together
3. Bluetooth: Extract LE Channel MAP to separate dissector
4. Ubertooth: Dissect CC2400 registers

svn path=/trunk/; revision=54700
2014-01-12 02:29:51 +00:00
Alexis La Goutte b16af7bdec From Michal Labedzki via https://bugs.wireshark.org/bugzilla/show_bug.cgi?id=9562
USB: Add support for Bluetooth Ubertooth with initial version of Low Energy Link Layer protocol and NFC ACR122

Bluetooth: L2CAP: Clarify constant

BTL2CAP_FIXED_CID_MAX should not be 0x40 because this is first
dynamic CID, so rename to BTL2CAP_FIXED_CID_LAST and set to
last fixed CID value.

svn path=/trunk/; revision=54404
2013-12-23 18:55:55 +00:00
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 a8ed2cf767 From Michal Labedzki via https://bugs.wireshark.org/bugzilla/show_bug.cgi?id=9446 - r53051 introduced an incorrect DISSECTOR_ASSERT(acl_data), which led me to believe that acl_data must not be NULL. Except for the removal of the DISSECTOR_ASSERT(acl_data), this patch basically reverts r53735 and r53743, as acl_data can be NULL.
svn path=/trunk/; revision=53784
2013-12-04 15:59:29 +00:00
Guy Harris 18e532be59 Remove some no-longer-necessary null pointer checks, as pointed out by
Coverity; dissect_btl2cap() now returns immediately if handed a null
private-data pointer.

svn path=/trunk/; revision=53743
2013-12-03 11:02:00 +00:00
Chris Maynard ae2e12d1f7 Reject the packet if data is NULL without doing anything else.
svn path=/trunk/; revision=53735
2013-12-02 21:34:23 +00:00
Michael Mann e2d2d12098 Replace "btsdp" tap with function to query service_infos tree, since that's all dissectors were doing with it. Not used outside of dissectors and cuts down on a few redundant global variables.
svn path=/trunk/; revision=53677
2013-11-30 19:26:18 +00:00
Michael Mann ea63042f9b Bluetooth improvements. Bug 9446 (https://bugs.wireshark.org/bugzilla/show_bug.cgi?id=9446)
From Michal Labedzki 

svn path=/trunk/; revision=53525
2013-11-23 21:41:08 +00:00
Michael Mann 9b7fb8a811 Create the ability to have packet scoped "proto" data. Bug 9470 (https://bugs.wireshark.org/bugzilla/show_bug.cgi?id=9470)
I'm not sold on the name or module the proto_data functions live in, but I believe the function arguments are solid and gives us the most flexibility for the future.  And search/replace of a function name is easy enough to do.

The big driving force for getting this in sooner rather than later is the saved memory on ethernet packets (and IP packets soon), that used to have file_scope() proto data when all it needed was packet_scope() data (technically packet_info->pool scoped), strictly for Decode As.

All dissectors that use p_add_proto_data() only for Decode As functionality have been converted to using packet_scope().  All other dissectors were converted to using file_scope() which was the original scope for "proto" data.

svn path=/trunk/; revision=53520
2013-11-23 02:20:13 +00:00
Pascal Quantin 61a4e7d46d Add explicit casts to please GCC
svn path=/trunk/; revision=53448
2013-11-20 20:05:17 +00:00
Michael Mann 76ab93ea94 Provide "Decode As" functionality through dissectors themselves instead of the GUI. Bug 9450 (https://bugs.wireshark.org/bugzilla/show_bug.cgi?id=9450)
The basic idea behind this design is to have dissectors register with a "decode as list" with their name and dissector table.  When "Decode As" dialog is launched, any "registered" dissector found in the packet will cause a tab to be created in the dialog.

This patch includes just the dissector portion of the functionality (minus packet-dcerpc.[ch] because it has hooks to the current GUI)

svn path=/trunk/; revision=53445
2013-11-20 19:17:08 +00:00
Jakub Zawadzki ae59b09443 Add missing includes in order to remove exceptions.h from proto.h (next commit).
svn path=/trunk/; revision=53230
2013-11-10 15:59:37 +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 2ebf40a1c2 Bluetooth: SDP: Decode all types of UUIDs. Bug 9327 (https://bugs.wireshark.org/bugzilla/show_bug.cgi?id=9327).
From Michal Labedzki

svn path=/trunk/; revision=52864
2013-10-26 02:36:56 +00:00
Michael Mann 5030e21822 Replace tabs by spaces. Bug 9327 (https://bugs.wireshark.org/bugzilla/show_bug.cgi?id=9327)
From Michal Labedzki

svn path=/trunk/; revision=52857
2013-10-26 00:26:41 +00:00
Michael Mann 9e3f9b449f expert_add_info_format_text -> expert_add_info_format
svn path=/trunk/; revision=51852
2013-09-09 00:44:09 +00:00
Pascal Quantin eddc421d85 From Michal Labedzki via https://bugs.wireshark.org/bugzilla/show_bug.cgi?id=8948 :
Bluetooth: add missing PSM strings

svn path=/trunk/; revision=50968
2013-07-28 11:32:06 +00:00
Michael Mann 6b3ac2d952 Batch of filterable expert infos.
svn path=/trunk/; revision=50454
2013-07-09 01:18:52 +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
Evan Huus 02dff20783 From Michal Labedzki via https://bugs.wireshark.org/bugzilla/show_bug.cgi?id=8509
Round 2 of Bluetooth SDP updates:
- replace a lot of proto_tree_add_text with named fields
- dissect more of the protocol
- misc fixes

svn path=/trunk/; revision=48655
2013-03-30 15:53:04 +00:00
Evan Huus 045152353c From Michal Labedzki via https://bugs.wireshark.org/bugzilla/show_bug.cgi?id=8536
Fix unrecognised CID session payload in bluetooth if there are multiple sessions
with the same DCID.

svn path=/trunk/; revision=48618
2013-03-28 15:05:46 +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 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
Anders Broman 5726546c63 From Michal Labedzki:
Update HID to version 1.1

Also fix SDP TAP to avoid crash.

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

svn path=/trunk/; revision=48386
2013-03-18 05:51:01 +00:00
Anders Broman 27744ecc2d From beroset:
remove C++ incompatibilities 
https://bugs.wireshark.org/bugzilla/show_bug.cgi?id=8416

svn path=/trunk/; revision=48337
2013-03-16 08:12:29 +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
Michael Mann bfeeba6f5e Fix AVCTP, AVRCP, HCI AVL and L2CP for multiple interfaces/adapters
From Michal Labedzki, bug 8367 (https://bugs.wireshark.org/bugzilla/show_bug.cgi?id=8367)

svn path=/trunk/; revision=47809
2013-02-21 21:35:19 +00:00
Chris Maynard c3c6ebe6c0 From Michael Labedzki via https://bugs.wireshark.org/bugzilla/show_bug.cgi?id=8304: Fix potential inconsistency with interfaces introduced with r47651.
svn path=/trunk/; revision=47655
2013-02-14 15:29:25 +00:00
Chris Maynard 7410bf54a1 Fix Coverity CID 981007: Dereference before null check. Bug introduced with r47632.
svn path=/trunk/; revision=47651
2013-02-13 16:39:31 +00:00
Anders Broman 4dc754f454 From: Michal Labedzki:
Bluetooth: Improve support of MAP, PBAP, BPP and BIP in OBEX

Add support for recognize profiles using OBEX (by "Target"), then add
all Application Parameters specific for MAP, PBAP, BPP, BIP.
Also fix one FIXME, so now dissecting by OBEX does not cause malformed
frames while jumping over dissected packets.

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

svn path=/trunk/; revision=47632
2013-02-11 15:04:53 +00:00
Anders Broman 892ff116c9 From Michal Labedzki:
Add support for AVDTP/A2DP/VDP and SBC

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

svn path=/trunk/; revision=45921
2012-11-05 11:42:10 +00:00
Anders Broman d50c587316 From Andrei Emeltchenko:
Makes L2CAP be independent from acl_data

When L2CAP is transferred through wireless it has no ACL incapsulation.
The patch makes it possible to chain L2CAP dissector based on LLC
bluetooth pid.

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

svn path=/trunk/; revision=45918
2012-11-05 09:36:00 +00:00
Anders Broman 120dab634e From Michal Labedzki:
"Decode By" for Bluetooth support decoding by L2CAP service, L2CAP CID,
L2CAP PSM, RFCOMM service and RFCOMM channel.

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

svn path=/trunk/; revision=45913
2012-11-05 08:39:51 +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 ff1a7d93bf From Michal Labedzki:
Bluetooth: Provide PSM for higher layers

This is needed by AVRCP, HCRP and AVDTP to recognize other substreams.

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

svn path=/trunk/; revision=45041
2012-09-21 11:30:53 +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
Anders Broman 8974a27357 From Michal Labedzki:
FCS is not part of "Control" subtree so move it.

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

svn path=/trunk/; revision=45038
2012-09-21 10:39:15 +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
Gerald Combs 7950fc1c94 Add length checks to make sure we don't underflow an integer. Make
sure we allocate and copy the same amount of data. Fixes bug 7621.

svn path=/trunk/; revision=44476
2012-08-13 19:30:42 +00:00
Jakub Zawadzki b18e880040 Update FSF address - part II.
svn path=/trunk/; revision=43538
2012-06-28 23:18:38 +00:00
Bill Meier 2df5dc3d53 From Reinhard Speyerer: Fix several misspellings/typos in Wireshark
https://bugs.wireshark.org/bugzilla/show_bug.cgi?id=6967

svn path=/trunk/; revision=41645
2012-03-18 22:24:24 +00:00