OSDN Git Service
Jakub Pawlowski [Sat, 1 Apr 2017 04:42:53 +0000 (04:42 +0000)]
Bluetooth 5 advertising duration refactoring (1/4)
am:
5204c62f13
Change-Id: I5aa32aae1934ef4116f2bcf6160a075252aa335d
Jakub Pawlowski [Fri, 31 Mar 2017 03:41:02 +0000 (20:41 -0700)]
Bluetooth 5 advertising duration refactoring (1/4)
Expose both duration and maximum extended advertising events to limit
advertising time.
Test: manual
Bug:
30622771
Change-Id: I4475c322347899946b39e65026d8009e02c93759
Bailey Forrest [Sat, 1 Apr 2017 00:32:46 +0000 (00:32 +0000)]
AVRCP CT: Only call handle_rc_features if target registered
am:
7745e29576
Change-Id: I68e25e8a3bc03fe3b739e9ca62df82655a2cf1e0
Bailey Forrest [Fri, 31 Mar 2017 04:43:28 +0000 (21:43 -0700)]
AVRCP CT: Only call handle_rc_features if target registered
If target is not registered, handle_rc_features would clear feature
flags before handle_rc_ctrl_features can use them.
Bug: b/
35807779
Test: AVRCP controller track info works on iOS.
Change-Id: Iee781f2fc926a053ba9cf30089d3a49e56b94539
Jakub Pawlowski [Thu, 30 Mar 2017 20:55:04 +0000 (20:55 +0000)]
Merge "Include flags in all connectable packets"
am:
b4bed63632
Change-Id: Id710017c3e63d45ee1b09c82a7f507ef4b3e189e
Treehugger Robot [Thu, 30 Mar 2017 20:53:10 +0000 (20:53 +0000)]
Merge "Include flags in all connectable packets"
Ajay Panicker [Thu, 30 Mar 2017 19:49:58 +0000 (19:49 +0000)]
Delete bt_snoop.log when snoop logging is disabled
am:
f786aac482
Change-Id: I3359087dc96042e914ef8bcfcff3a735140c2751
Jakub Pawlowski [Thu, 30 Mar 2017 18:52:53 +0000 (11:52 -0700)]
Include flags in all connectable packets
According to Bluetooth CSSv7, the flags field shall be included in all
connectable packets, not only legacy packets.
Test: manal
Bug:
30622771
Change-Id: I006f9bd6d31ca0673d78405f320b18623e6e5b16
Ajay Panicker [Thu, 30 Mar 2017 17:33:19 +0000 (10:33 -0700)]
Delete bt_snoop.log when snoop logging is disabled
This patch will immediatly delete the snoop log if Bluetooth is on. If Bluetooth
is off it will delete the log as soon as Bluetooth starts again.
Test: Turn off logging while Bluetooth is on and off
Bug:
36718948
Change-Id: Ib660cd442c93f1a34c948d51c5cffc38695558d5
Jakub Pawlowski [Thu, 30 Mar 2017 03:30:10 +0000 (03:30 +0000)]
Bluetooth 5 periodic scan (2/3)
am:
f685bfb7b1
Change-Id: I36365df844aa015b9481c0f1fbfb6e8b5450e321
Jakub Pawlowski [Wed, 29 Mar 2017 21:28:43 +0000 (14:28 -0700)]
Bluetooth 5 periodic scan (2/3)
This patch wires calls/callbacks through stack to prepare for actual
implementation.
Test: manual
Bug:
30622771
Change-Id: Iac8c74a228f34f5ea4231a76848e22ea64f11d06
Pavlin Radoslavov [Wed, 29 Mar 2017 22:46:33 +0000 (22:46 +0000)]
Merge "Add new internal API: enableOptionalCodecs()/disableOptionalCodecs()"
am:
14bf663fb4
Change-Id: I030c6950b56373b5eeb9a93eada8b4ea581f2434
Treehugger Robot [Wed, 29 Mar 2017 22:41:13 +0000 (22:41 +0000)]
Merge "Add new internal API: enableOptionalCodecs()/disableOptionalCodecs()"
Jorge E. Moreira [Wed, 29 Mar 2017 20:12:00 +0000 (20:12 +0000)]
Merge "test-vendor-lib: Enable building for 64 bits"
am:
46bd270740
Change-Id: Ifa8b3d8d8201f6df80d6156e536137e93d90bd01
Treehugger Robot [Wed, 29 Mar 2017 20:08:25 +0000 (20:08 +0000)]
Merge "test-vendor-lib: Enable building for 64 bits"
Pavlin Radoslavov [Fri, 24 Feb 2017 18:35:30 +0000 (10:35 -0800)]
Add new internal API: enableOptionalCodecs()/disableOptionalCodecs()
This API can be used to enable the optional codecs, or disable them
and use only the mandatory SBC.
Internally, it is implemented by raising the SBC priority to
highest (so SBC will be used/selected), or reducing the SBC priority
to its default value (lowest).
Test: A2DP streaming and enabling/disabling/selecting optional codecs
Bug:
35873828
Change-Id: Ia1311d790441b7b5471c9fda7aeee8aa3306b16e
Pavlin Radoslavov [Wed, 29 Mar 2017 06:18:10 +0000 (06:18 +0000)]
Add missing dependency on the Sony LDAC ABR library libldacBT_abr.so
am:
e4f2b61567
Change-Id: I5b18f74c9f85d30b207ef41623d4adc2afc3abef
Pavlin Radoslavov [Wed, 29 Mar 2017 01:40:32 +0000 (18:40 -0700)]
Add missing dependency on the Sony LDAC ABR library libldacBT_abr.so
Test: Code compilation
Bug:
35381097
Change-Id: Ib347319942aef4fef6bfd7edc23a4df004fc19fa
Jorge E. Moreira [Mon, 27 Mar 2017 22:44:55 +0000 (15:44 -0700)]
test-vendor-lib: Enable building for 64 bits
Removes LOCAL_MODULE_PATH which is not supported for 64 bit builds.
Uses LOCAL_PROPRIETARY_MODULE to let the build system know it should
go in the vendor directory.
Test: builds
Change-Id: Iba55d497d8cbe97911a41a5623248306a8954ec2
Myles Watson [Tue, 28 Mar 2017 22:39:40 +0000 (22:39 +0000)]
osi: Update error messages
am:
1dc4b361dd
Change-Id: I82f5536a0b088f31d6f922bb671e16fce9f454d7
Myles Watson [Tue, 21 Mar 2017 17:28:20 +0000 (10:28 -0700)]
osi: Update error messages
Test: build
Change-Id: I5af34f01c47d8037d56c27e7e3fab3cc2f5fd2bc
Myles Watson [Tue, 28 Mar 2017 20:41:15 +0000 (20:41 +0000)]
Merge "hci: Update error messages"
am:
09329eede8
Change-Id: I855deb3f27fa270b13ff61c1f5cea83a6767168d
Myles Watson [Tue, 28 Mar 2017 20:41:01 +0000 (20:41 +0000)]
Merge "l2cap: Use CHECK for memory allocation errors"
am:
b8e1fbd04a
Change-Id: I7464be3483402908d397eda4220c295cbc165669
Treehugger Robot [Tue, 28 Mar 2017 20:37:09 +0000 (20:37 +0000)]
Merge "hci: Update error messages"
Treehugger Robot [Tue, 28 Mar 2017 20:29:26 +0000 (20:29 +0000)]
Merge "l2cap: Use CHECK for memory allocation errors"
Sanket Agarwal [Tue, 28 Mar 2017 20:14:54 +0000 (20:14 +0000)]
Merge "BTA HF_CLIENT: Always reply to +BCS"
am:
04f88ffb6c
Change-Id: I71a088b4454333f767aa0d6b106320ad2d7a966c
Treehugger Robot [Tue, 28 Mar 2017 20:03:52 +0000 (20:03 +0000)]
Merge "BTA HF_CLIENT: Always reply to +BCS"
Myles Watson [Tue, 21 Mar 2017 17:16:44 +0000 (10:16 -0700)]
l2cap: Use CHECK for memory allocation errors
Test: LE connection
Change-Id: I43c170b40b125345b91e1c91a7993f0d138ac1c5
Sanket Agarwal [Wed, 22 Feb 2017 19:55:34 +0000 (11:55 -0800)]
BTA HF_CLIENT: Always reply to +BCS
Phones don't like when we don't reply to +BCS codec-negotiation. We were
having this behavior because not always do we want to accept a
connection request over SCO. Instead of not replying to +BCS (which is
essentially a codec negotiation) we rather refuse the SCO request when
it comes in. This creates other issues such as some phones trying to
connect SCO in an infinite loop but it still keeps interoperability with
other devices such as iPhones and Microsoft phones intact
Bug: b/
35469963
Bug: b/
35431871
Bug: b/
35419773
Test: SCO (Phone Audio) test with iPhone, Microsoft and Nexus phones
Change-Id: I5319edcb4da9d66c6d6b3a49742248c90dee98e6
Myles Watson [Tue, 21 Mar 2017 17:21:15 +0000 (10:21 -0700)]
hci: Update error messages
Test: builds
Change-Id: I33544572122a166523a40dde090f276b102df247
fen wang [Tue, 28 Mar 2017 05:03:51 +0000 (05:03 +0000)]
Integration of LDAC Adaptive Bit Rate mechanism
am:
dfc02a91a1
Change-Id: I5a82550e3f70768063f811c64b7d68e4a85e7ce6
fen wang [Wed, 15 Mar 2017 05:52:52 +0000 (14:52 +0900)]
Integration of LDAC Adaptive Bit Rate mechanism
LDAC ABR controls LDAC encoder bit rate based on A2DP transmit queue
length.
It can be used if the LDAC ABR library is installed on the device:
libldacBT_abr.so
Test: manual
Bug:
35381097
Change-Id: Idcc2fabe86acaf441f5a71f5d2bb66ad29252cdb
Jakub Pawlowski [Mon, 27 Mar 2017 20:48:19 +0000 (20:48 +0000)]
Add option to specify initial LE connection PHY (1/3)
am:
96fb273d92
Change-Id: I083e1ef7f4fe6d958fb2f3d4d3faaffd02c2d3be
Jakub Pawlowski [Sat, 25 Mar 2017 00:52:02 +0000 (17:52 -0700)]
Add option to specify initial LE connection PHY (1/3)
For whitelist connections we always use all possible PHYs, for direct
connection use PHY specified by client.
Test: manual
Bug:
30622771
Change-Id: I720f134e2800dc3d282135bb7ffbe3882117c680
Zach Johnson [Fri, 24 Mar 2017 21:22:08 +0000 (21:22 +0000)]
Merge "btm_sec: p_name fails matching security records"
am:
e9082e66c2
Change-Id: Ia2c574d1a36f840045110d55a6d34fb89776890e
Zach Johnson [Fri, 24 Mar 2017 21:19:30 +0000 (21:19 +0000)]
Merge "btm_sec: p_name fails matching security records"
Jakub Pawlowski [Fri, 24 Mar 2017 20:36:43 +0000 (20:36 +0000)]
Expose connection update callback (1/3)
am:
b5ba4fdbc4
Change-Id: I609d1fb2788c93ced5cf4a6afa302fed59543a6d
Martin Brabham [Thu, 16 Feb 2017 23:06:30 +0000 (15:06 -0800)]
btm_sec: p_name fails matching security records
When doing a comparison on p_name that is passed in against
the p_name in the struct will never match if the passed in
name is >= 21 characters. This is due to the strlcpy replacing
the last character with a null termination character.
Without this patch, you will observe 2 security records for
"Android Network Acce" (which is supposed to be "Android Network Access Point")
BTM_SEC_SERVCE_NAME_LEN = 21
21
passed in: |A|n|d|r|o|i|d| |N|e|t|w|o|r|k| |A|c|c|e|s|s| |P|o|i|n|t|
---------------------------------------------------------
structval: |A|n|d|r|o|i|d| |N|e|t|w|o|r|k| |A|c|c|e|\0|
Bug:
34707848
Test: Compile, Manual
Change-Id: I24e0204d8faf54545c7b720a0fbc6765db9a1295
Jakub Pawlowski [Fri, 24 Mar 2017 01:11:04 +0000 (18:11 -0700)]
Expose connection update callback (1/3)
Test: manual
Bug:
30622771
Change-Id: I94d25f6f22b42fb1432a9288c97b82503d57db86
Myles Watson [Fri, 24 Mar 2017 15:52:39 +0000 (15:52 +0000)]
hci: Timestamp HCI commands for timeouts
am:
17d3595cf1
Change-Id: Ic22314e4b18e8b405f96f38e93849ae2c3dbade8
Myles Watson [Thu, 23 Mar 2017 21:34:40 +0000 (14:34 -0700)]
hci: Timestamp HCI commands for timeouts
Test: Start Bluetooth with COMMAND_PENDING_TIMOUT_MS=2
Change-Id: I393592ede7b9b0aab9c13f6c79756c24edd3d930
Jakub Pawlowski [Fri, 24 Mar 2017 01:12:59 +0000 (01:12 +0000)]
Set preferred PHY and read PHY implementation (3/3)
am:
eafd45d086
Change-Id: I59ac8486bd565062ebc5c5a9908100c834a0344c
Jakub Pawlowski [Thu, 23 Mar 2017 02:00:47 +0000 (19:00 -0700)]
Set preferred PHY and read PHY implementation (3/3)
Test: manual
Bug:
30622771
Change-Id: I4267238a0b5c7bc373ae1846ebd19a716881a4ec
Myles Watson [Fri, 24 Mar 2017 00:02:14 +0000 (00:02 +0000)]
hci: Cancel timer before running callbacks
am:
e7be6de450
Change-Id: I96b4b1d76a9354f2564296e8b607f507e69b59e8
Myles Watson [Thu, 23 Mar 2017 18:49:13 +0000 (11:49 -0700)]
hci: Cancel timer before running callbacks
Bug:
36507488
Test: Turn Bluetooth on/off, scan for devices
Change-Id: Ia9334d83b2191504acdab50f777b6d10073226e0
Ajay Panicker [Thu, 23 Mar 2017 20:52:30 +0000 (20:52 +0000)]
Merge "Increase size of written bytes for snprintf for AT+BIND"
am:
fca1242cf1
Change-Id: I648cdddbc18cd94c0b2568082834b1142b666463
Treehugger Robot [Thu, 23 Mar 2017 20:47:55 +0000 (20:47 +0000)]
Merge "Increase size of written bytes for snprintf for AT+BIND"
Pavlin Radoslavov [Thu, 23 Mar 2017 20:46:46 +0000 (20:46 +0000)]
Fix a race condition inside command_timed_out() when printing log info
am:
b77d7129b2
Change-Id: Ib3dd8f598b62b2706314fea6c3a17f0dac789425
Pavlin Radoslavov [Thu, 23 Mar 2017 19:24:57 +0000 (12:24 -0700)]
Fix a race condition inside command_timed_out() when printing log info
Release the lock after we don't need anymore access to the wait_entry
that was protected by the lock.
Note: We are keeping the lock right before restarting the Bluetooth
process, hence it doesn't matter we are holding it for a bit longer
than before.
Test: Code compilation
Change-Id: Id393a285fce9b9e28efcf0f55fcc32821c5a72b6
Ajay Panicker [Thu, 23 Mar 2017 17:57:48 +0000 (17:57 +0000)]
Merge "AVRCP version interop pereference (1/3)"
am:
921f514bcf
Change-Id: Ia500beaee28b4c335be5367f8b3f8f564ac70e8e
Treehugger Robot [Thu, 23 Mar 2017 17:49:56 +0000 (17:49 +0000)]
Merge "AVRCP version interop pereference (1/3)"
Myles Watson [Thu, 23 Mar 2017 13:26:01 +0000 (13:26 +0000)]
Merge "main: Update error handling"
am:
5d637bc524
Change-Id: I77b8d202d395d26fbc8a1ae664d7b1b090ff1ba8
Treehugger Robot [Thu, 23 Mar 2017 13:21:52 +0000 (13:21 +0000)]
Merge "main: Update error handling"
Ajay Panicker [Wed, 15 Feb 2017 20:23:35 +0000 (12:23 -0800)]
Increase size of written bytes for snprintf for AT+BIND
snprintf includes the null terminator for size of string to write to buffer.
Having a buffer size of one would only write a null terminator.
Bug:
35348420
Test: HFP Test with carkit
Change-Id: Id81abca562259371520b891e84ec76f6cb434b0c
Ajay Panicker [Sat, 18 Mar 2017 21:58:06 +0000 (14:58 -0700)]
AVRCP version interop pereference (1/3)
Add a mechanism to allow the user to select the AVRCP version broadcasted
through SDP in the developer options. This helps solve some interoperability
issues such as with Honda Carkits where broadcasting AVRCP version 1.6 causes
media metadata to fail.
Bug:
35956792
Test: Select AVRCP version through developer option
Merged-In: Ib55af4406131178846d38ef4da33fb72cb2cd02f
Change-Id: Ib55af4406131178846d38ef4da33fb72cb2cd02f
Ivan Podogov [Wed, 22 Mar 2017 00:26:42 +0000 (00:26 +0000)]
Reduce sniff intervals for active mode.
am:
be6d6ce0ae
Change-Id: Icb81474e5702aaaacca9d4edcf273cd99e46a64f
Ivan Podogov [Tue, 3 Jan 2017 21:20:33 +0000 (21:20 +0000)]
Reduce sniff intervals for active mode.
According to the Bluetooth HID specification, a pointing device
should have a recommended report rate of approximately 80 Hz, and
sniff interval of 18 slots for the sniff subrating mode.
Current settings set the sniff interval to 54 slots, which is
aproximately 29.6 Hz - not really enough to emulate a mouse.
Test: with a pointing device app
Change-Id: Ic3365137bcf3f5608ada37fbfa0c3233f6ef83d7
Myles Watson [Tue, 21 Mar 2017 17:24:20 +0000 (10:24 -0700)]
main: Update error handling
Test: builds
Change-Id: Ibc6b1d94f49bd711e7844ae769c384f76d357f22
Alex Deymo [Mon, 20 Mar 2017 22:44:01 +0000 (22:44 +0000)]
Merge "Add liblog dependency to libbt-vendor."
am:
cc7837d8d0
Change-Id: I4b9035bf3faad26a48020f78e05e5971d2b76248
Treehugger Robot [Mon, 20 Mar 2017 22:35:18 +0000 (22:35 +0000)]
Merge "Add liblog dependency to libbt-vendor."
Jakub Pawlowski [Mon, 20 Mar 2017 22:27:00 +0000 (22:27 +0000)]
Bluetooth 5 AdvertisingSet implementation (4/4)
am:
ff32af6dee
Change-Id: I053c63b9a109d62c0c7a22e5a4088bae39e4bf23
Jakub Pawlowski [Mon, 20 Mar 2017 22:26:55 +0000 (22:26 +0000)]
Report back TX Power value
am:
256afc4d84
Change-Id: If05533867f2f78762b42e8e68fdecc1eed3cb22f
Jakub Pawlowski [Sat, 18 Mar 2017 01:05:38 +0000 (18:05 -0700)]
Bluetooth 5 AdvertisingSet implementation (4/4)
Test: manual
Bug:
30622771
Change-Id: Ie1c1588383a83296cabd29a0481f7d80a1168263
Jakub Pawlowski [Fri, 17 Mar 2017 19:31:42 +0000 (12:31 -0700)]
Report back TX Power value
For LE Extended Advertising report the value returned by controller.
For VSC Advertising return the value send to controller.
For Legacy Advertising use 0.
Test: manual
Bug:
30622771
Change-Id: Ifc49af86e7f064c91ed2d20e6f87532159d1bffa
Jakub Pawlowski [Mon, 20 Mar 2017 22:11:16 +0000 (22:11 +0000)]
Do not use Multi-Adv instance 0 in VSC
am:
10661946cc
Change-Id: I76ca92cbc2161e44493df2f0ec329117f8ca0492
Jakub Pawlowski [Mon, 20 Mar 2017 17:33:25 +0000 (10:33 -0700)]
Do not use Multi-Adv instance 0 in VSC
Bug:
36365653
Test: manual
Change-Id: If44b2f0206bab91fa77f2a1ff68d83e1593f28e2
Ajay Panicker [Mon, 20 Mar 2017 21:24:37 +0000 (21:24 +0000)]
Merge "Change default AVRCP version to 1.4"
am:
763839680f
Change-Id: I59aae13d6a7e8c61659a135861be0fb7e448fc72
Treehugger Robot [Mon, 20 Mar 2017 21:19:05 +0000 (21:19 +0000)]
Merge "Change default AVRCP version to 1.4"
Alex Deymo [Mon, 20 Mar 2017 20:55:10 +0000 (13:55 -0700)]
Add liblog dependency to libbt-vendor.
lubcutils doesn't bundle liblog anymore. This fixes the build in boards
defining BOARD_HAVE_BLUETOOTH_LINUX.
Bug: None
Test: `make droid` in such board.
Change-Id: Ic9b7ba045c3a291eb33a606ffabc41c45c9ca3e2
Ivan Podogov [Mon, 20 Mar 2017 19:13:04 +0000 (19:13 +0000)]
HIDD: Fix possible out-of-bounds error.
am:
c6bce1a236
Change-Id: I9e7e79f35379ded213979b2d9ff4dce8f96e24ba
Ajay Panicker [Fri, 17 Mar 2017 22:10:34 +0000 (15:10 -0700)]
Change default AVRCP version to 1.4
Poor support for AVRCP 1.6 in many carkits means the default should be 1.4 until we can work out interop for different models.
Bug:
35956792
Test: Connect Phone to Honda Carkit and play music
Change-Id: Ie48ba3f045cca5edda49399d137f2f756be0ff8a
Ivan Podogov [Mon, 20 Mar 2017 13:40:39 +0000 (13:40 +0000)]
HIDD: Fix possible out-of-bounds error.
Bug:
32282212
Test: manual
Change-Id: I6ca91bb8e278db9e4121f22567a27c175661b537
Pavlin Radoslavov [Sun, 19 Mar 2017 05:09:55 +0000 (05:09 +0000)]
Base classes should have virtual destructors
am:
110a4dc073
Change-Id: I4e009aac881b75926edb0789e1b605c5e136b6a7
Pavlin Radoslavov [Sun, 19 Mar 2017 02:24:05 +0000 (19:24 -0700)]
Base classes should have virtual destructors
Each base class in service/common/bluetooth now has a virtual
destructor. This fixes memory delete issues that were exposed
when running the unit tests with ASAN enabled.
Test: Running unit tests with ASAN enabled
Change-Id: Ie944eb80784de4ebac3c7276fabed6acb5fec6c0
Andre Eisenbach [Fri, 17 Mar 2017 19:24:55 +0000 (19:24 +0000)]
Merge "Abort using SIGABRT instead of SIGKILL on command_timeout"
am:
379743d738
Change-Id: If9fc37bed4dce4a1b1e0fbde3f81279f0a51fae1
Treehugger Robot [Fri, 17 Mar 2017 19:19:04 +0000 (19:19 +0000)]
Merge "Abort using SIGABRT instead of SIGKILL on command_timeout"
Jakub Pawlowski [Fri, 17 Mar 2017 19:10:35 +0000 (19:10 +0000)]
Divide advertise data when needed
am:
331c80117f
Change-Id: I2c2b37aa801d286ab4a6fb30cc3b03c543ad97fd
Jakub Pawlowski [Fri, 17 Mar 2017 19:10:23 +0000 (19:10 +0000)]
Bluetooth 5 Periodic Advertising
am:
2d5c21c031
Change-Id: Id03d1690500988ffd4442481837f5a0d57ce5e22
Jakub Pawlowski [Fri, 17 Mar 2017 05:10:32 +0000 (22:10 -0700)]
Divide advertise data when needed
Bug:
30622771
Test: BleAdvertisingManagerTest.test_data_sender
Change-Id: I447fed753b08cef766d99ea8dfa47b1212a9ce03
Jakub Pawlowski [Fri, 17 Mar 2017 00:15:47 +0000 (17:15 -0700)]
Bluetooth 5 Periodic Advertising
This patch implements the initialization of Bluetooth 5 advertising.
Bug:
30622771
Test: manual
Change-Id: If06a6c827f1d8097aa3f019b99ebcb3933742d6c
Andre Eisenbach [Fri, 17 Mar 2017 04:58:53 +0000 (21:58 -0700)]
Abort using SIGABRT instead of SIGKILL on command_timeout
This will produce a stack trace and flag for automated crash reporting.
Bug:
36026072
Test: net_test_bluetooth; device off/on/off tests
Change-Id: I4d4380d61028261ba7bb4599e39993cae1d906a5
Jakub Pawlowski [Fri, 17 Mar 2017 05:20:08 +0000 (05:20 +0000)]
LE Maximum Advertising Data Length (4/4)
am:
5a8a162d9e
Change-Id: I79f655cddeb49c7b1ac2482a3ae5617954f22706
Jakub Pawlowski [Fri, 17 Mar 2017 01:19:20 +0000 (18:19 -0700)]
LE Maximum Advertising Data Length (4/4)
Add ability to check maximum advertising data length.
Bug:
30622771
Test: manual
Change-Id: I0f3c806046157633f8e2106c1b2700c4277a2b4d
Pavlin Radoslavov [Fri, 17 Mar 2017 04:06:02 +0000 (04:06 +0000)]
Merge "Use the correct tBTA_PAN type when copying the data in a callback"
am:
b4939306df
Change-Id: I13409b3cf122f4cee8b3c5f43b6e9bba43f4d24c
Pavlin Radoslavov [Fri, 17 Mar 2017 04:02:35 +0000 (04:02 +0000)]
Use the correct buffer size when copying device inquiry response data
am:
ff8011811b
Change-Id: I6f21e24aacfc6736a3f872ec2675812d6bf3c167
Treehugger Robot [Fri, 17 Mar 2017 04:00:31 +0000 (04:00 +0000)]
Merge "Use the correct tBTA_PAN type when copying the data in a callback"
Pavlin Radoslavov [Fri, 17 Mar 2017 02:09:31 +0000 (19:09 -0700)]
Use the correct buffer size when copying device inquiry response data
Bug:
36372989
Test: Running ASAN build
Change-Id: I6016e7609ba24db632222ff4613017e3be30b09c
Pavlin Radoslavov [Fri, 17 Mar 2017 01:54:55 +0000 (18:54 -0700)]
Use the correct tBTA_PAN type when copying the data in a callback
This fixes stack-buffer-overflow issue found using ASAN.
Previously, the original data had type "struct tBTA_PAN_SET_ROLE"
and similar, and eventually "memcpy(..., sizeof(tBTA_PAN))" would
copy data beyond the end of the data buffer.
Bug:
36367964
Test: Running ASAN build
Change-Id: I47210a501378023168a0dd71381e93a5051a4c71
Jakub Pawlowski [Fri, 17 Mar 2017 01:09:12 +0000 (01:09 +0000)]
Bluetooth 5 AdvertisingSet implementation (3/4)
am:
16da9217c6
Change-Id: I17188b9a006152507093458e1c3d345a6f5682d5
Jakub Pawlowski [Sun, 12 Mar 2017 00:46:00 +0000 (16:46 -0800)]
Bluetooth 5 AdvertisingSet implementation (3/4)
This patch wires up fist methods of AdvertisingSet, making it possible
to start advertising and stop advertising. It also replaces legacy
implemementation with calls to new implementation.
Bug:
30622771
Test: sl4a ConcurrentBleAdvertisingTest
Change-Id: I843d8fc12ba1928c87e256a0fb6d730c9fa200e6
Jakub Pawlowski [Fri, 17 Mar 2017 00:26:47 +0000 (00:26 +0000)]
Fix net_test_stack_multi_adv
am:
8c7d060149
Change-Id: I8877d55121300b99db4136f529279891a40cc3bf
Jakub Pawlowski [Thu, 16 Mar 2017 21:47:55 +0000 (14:47 -0700)]
Fix net_test_stack_multi_adv
Change-Id: Ic28aa4a120d973bbf3f05d8022bc2c2e619562e2
Pavlin Radoslavov [Thu, 16 Mar 2017 19:49:56 +0000 (19:49 +0000)]
Fix an HCI race condition when transmitting a packet
am:
bc9a9329b3
Change-Id: I070d2bf6f4de8caf35817f40cc1205cc6e943070
Pavlin Radoslavov [Thu, 16 Mar 2017 11:54:21 +0000 (04:54 -0700)]
Fix an HCI race condition when transmitting a packet
There is a race condition when calling
event_command_ready() -> transmit_fragment() -> hci_transmit()
If right after hci_transmit() there is thread context switch
and another thread executes filter_incoming_event() for the same
command, the corresponding packet/command will be taken off the
commands_pending_response list and free()-ed.
However, after the execution on the first thread continues
within transmit_fragment(), the execution logic will continue using
the "packet" that was already free()-ed by the other thread.
To prevent this from happening, the "commands_pending_response_mutex"
within event_command_ready() has to protect the transmit_fragment()
execution and the update_command_response_timer() function right after it.
Also:
* Changed the "commands_pending_response_mutex" to recursive_mutex
* Added "commands_pending_response_mutex" protection in few other
places where "commands_pending_response" itself is used.
Bug:
36205494
Test: Running ASAN build
Change-Id: I63677ad1f2b28683c321631e9e29e4f01628d269
Myles Watson [Wed, 15 Mar 2017 22:37:02 +0000 (22:37 +0000)]
test_vendor: Stop watching before closing the FD
am:
01ce9e4233
Change-Id: I5c8efd21cfbaf45677a8e29c617852f7f10a768b
Myles Watson [Wed, 15 Mar 2017 19:14:36 +0000 (12:14 -0700)]
test_vendor: Stop watching before closing the FD
Test: net_test_bluetooth BluetoothTest.AdapterRepeatedEnableDisable
Change-Id: I72f5c9105b535ad5a5c41bc15dc9a3ad5f4e023f
Alex Deymo [Wed, 15 Mar 2017 14:16:20 +0000 (14:16 +0000)]
Fix bta_dm_act.cc compile error.
am:
7651cfbe6a
Change-Id: Ie57643e2919cddb74151d471891c6eed93899103
Alex Deymo [Wed, 15 Mar 2017 07:16:58 +0000 (00:16 -0700)]
Fix bta_dm_act.cc compile error.
When BTM_LOCAL_IO_CAPS == BTM_IO_CAP_NONE the code fails to compile due
to a missing comma. This was introducted a couple of months ago by
2e8e9f42132d0297a94c0852a1fbf45c9bc348e5 but it went undetected.
This patch simply adds back the missing comma.
Bug:
35804180
Test: `make` on a device with BTM_LOCAL_IO_CAPS set to BTM_IO_CAP_NONE.
Change-Id: I0a924abec4fe6612c5dbb72416123ca391551523
Pavlin Radoslavov [Wed, 15 Mar 2017 01:14:12 +0000 (01:14 +0000)]
Merge "Add a log message in the beginning of function hci_initialize()"
am:
e745f573f6
Change-Id: Ia9fa15a85c64c297b911449594b6daf5b8871c0e
Treehugger Robot [Wed, 15 Mar 2017 01:08:24 +0000 (01:08 +0000)]
Merge "Add a log message in the beginning of function hci_initialize()"