OSDN Git Service
Arman Uguray [Fri, 9 Oct 2015 19:32:55 +0000 (12:32 -0700)]
service/client: Add start-adv -u flag
Added the -u flag that allows passing a UUID in string representation
(16-bit, 32-bit, and 128-bit) to be advertised as long as all fields
fit inside the data.
Bug:
24247700
Change-Id: I3e572db31b84f1e010ba19ab5a51d00c563bb3b7
Arman Uguray [Wed, 7 Oct 2015 23:09:54 +0000 (16:09 -0700)]
service: Improve creating UUIDs from string
- When UUIDs are initialized from a 128-bit UUID, they are now parsed
from the canonical UUID string representation.
- Invalid strings now cause the UUID to be marked as invalid, rather than
causing a crash.
- Input such as "0x180d" is now valid.
- Added the GetShortestRepresentationSize() method to use in determining whether
a UUID is within Base BT SIG UUID domain.
Bug:
24247700
Change-Id: Id28255ec963bc6da27a8e871598016d41920b688
Pavlin Radoslavov [Tue, 13 Oct 2015 04:09:44 +0000 (21:09 -0700)]
Add net_admin group capability to bluetoothtbd
The net_admin group capability is needed for accessing the rfkill
device in the kernel.
Change-Id: Ic5c2c2717fbad6428fc75ff00a0a3afcd2c5dec6
Arman Uguray [Tue, 13 Oct 2015 15:06:46 +0000 (08:06 -0700)]
service/client: Handle EOF
Added handling for EOF to the REPL so we gracefully exit if
Ctrl+D is pressed.
Change-Id: I706f3f46a7092a30b1e9d83c32805dbefc5180c9
Arman Uguray [Wed, 7 Oct 2015 01:10:15 +0000 (18:10 -0700)]
service: Added Binder API documentation
Added the service/doc directory with documentation for the
currently supported Binder interfaces in AIDL format.
Change-Id: I81bec12b7da7fbee110b1df0ffafcc3dc7d6eec3
Arman Uguray [Tue, 6 Oct 2015 22:56:36 +0000 (15:56 -0700)]
service: Create a client library for applications
This CL creates the libbluetooth-client static library that external
code can link against to interact with the Bluetooth daemon using
Binder. To this end, all service/ code that is common to the client
library and the daemon itself have been moved to service/common/bluetooth
and service/common is exported in LOCAL_EXPORT_C_INCLUDE_DIRS.
bluetooth-cli and bt-example-hr-server have been update to demonstrate
how an app should use this library (using library includes).
Bug:
23169160
Change-Id: Ie6841bd6c48846eecec824ff1e80a9971385d1fc
Ajay Panicker [Wed, 30 Sep 2015 22:49:47 +0000 (15:49 -0700)]
Allow parsing of UUID and service data for advertising
Added code so that bluetooth advertisement packets will now
parse UUID data and service data. Also added unit tests to
confirm data is being parsed correctly. Also added constants for
the type fields for the different service UUID and service data
types.
Bug:
24247700
Change-Id: I53f5b639adb30e781ef155c8d55004547a26672d
Arman Uguray [Tue, 6 Oct 2015 20:08:54 +0000 (13:08 -0700)]
service: Enable all tests for target
Made some changes to the test structure following the instructions
at http://go/brillo/brillo-team/testing:
- Renamed the existing host and target tests to bluetoothtbd-host_test
and bluetoothtbd_test respectively.
- The target suite now includes ALL daemon unit tests + binder tests.
- Added custom test/main.cpp to set up logging and command-line. Now
we can run tests with the -v flag to increase log verbosity level.
Bug:
24708686
Change-Id: Ia4ce5d7028ce6cb0efd4a1c51ffebdf3bbe6921e
Marie Janssen [Tue, 6 Oct 2015 22:48:46 +0000 (22:48 +0000)]
Merge "brillo: run bluetoothtbd with correct permissions"
Marie Janssen [Tue, 6 Oct 2015 17:23:53 +0000 (10:23 -0700)]
brillo: run bluetoothtbd with correct permissions
Adding net_bt_admin group grabs more correct permissions.
Change-Id: I3764e6d242fd79bb78cda620f4ec65f0b732aedd
Arman Uguray [Tue, 6 Oct 2015 01:26:49 +0000 (01:26 +0000)]
am
2846af52: service: Add missing build includes
* commit '
2846af5215215c12ec162b76075769f395e41434':
service: Add missing build includes
Arman Uguray [Tue, 6 Oct 2015 01:17:44 +0000 (18:17 -0700)]
service: Add missing build includes
Added missing files to service/Android.mk to fix a build breakage on
master.
Change-Id: Ic6a3e3511fa25cbc8f2c546e46a91f8665d2f654
Arman Uguray [Tue, 6 Oct 2015 00:22:33 +0000 (00:22 +0000)]
am
1c162dc3: service/example: Complete HR simulation
* commit '
1c162dc31bad03ee21a93e5afb9c7a572bf21ec7':
service/example: Complete HR simulation
Arman Uguray [Wed, 30 Sep 2015 05:30:53 +0000 (22:30 -0700)]
service/example: Complete HR simulation
Added the remaining logic for an example Heart Rate server app.
Also added more annotations throughout the code.
Bug:
24245347
Change-Id: I46184d2585eeb7683efdc5ea7122d0472dd7f05b
Arman Uguray [Mon, 5 Oct 2015 23:55:34 +0000 (23:55 +0000)]
am
cd644e3c: service: Support GattServer notifications/indications
* commit '
cd644e3c54a4321b7626b52531c59f88e24e87be':
service: Support GattServer notifications/indications
Arman Uguray [Mon, 5 Oct 2015 23:55:33 +0000 (23:55 +0000)]
am
4ebcbd9e: service: Support GATT server async write requests.
* commit '
4ebcbd9ede4006500c3ead0685befe0a8e4aadc2':
service: Support GATT server async write requests.
Arman Uguray [Thu, 1 Oct 2015 23:36:38 +0000 (16:36 -0700)]
service: Support GattServer notifications/indications
Added outgoing notification/indication support to
bluetooth::GattServer and implemented the related Binder API.
Bug:
24245347
Change-Id: I2d5cea90137e5d771f969163591b50aee1ad171c
Arman Uguray [Mon, 5 Oct 2015 23:46:35 +0000 (23:46 +0000)]
am
514bf608: service: Support GATT server async read requests.
* commit '
514bf6087093375351784b287cb29c5f4603273c':
service: Support GATT server async read requests.
Arman Uguray [Mon, 5 Oct 2015 23:46:34 +0000 (23:46 +0000)]
am
b10f96fa: service: Add HAL wrappers for read_request_cb and connection_cb
* commit '
b10f96fa25266b69d0d31af166e93afe14134be7':
service: Add HAL wrappers for read_request_cb and connection_cb
Arman Uguray [Wed, 30 Sep 2015 05:09:46 +0000 (22:09 -0700)]
service: Support GATT server async write requests.
Added support for incoming characteristic/descriptor read requests
to bluetooth::GattServer and implemented the related Binder API.
Bug:
24245347
Change-Id: I18202c3255f0fb8fc5338b1139c375e1439b6568
Arman Uguray [Wed, 30 Sep 2015 02:38:03 +0000 (19:38 -0700)]
service: Support GATT server async read requests.
Added support for incoming characteristic/descriptor read requests
to bluetooth::GattServer and implemented the related Binder API.
Bug:
24245347
Change-Id: I88161c5bd3ca9ba5604c00aa4e569b3baf19137c
Arman Uguray [Mon, 5 Oct 2015 22:04:37 +0000 (22:04 +0000)]
am
c61ef610: service: Add helper to util/address_helper
* commit '
c61ef610feb8858db4917ac7f3d0e847f14c80f8':
service: Add helper to util/address_helper
Arman Uguray [Mon, 5 Oct 2015 22:04:37 +0000 (22:04 +0000)]
am
e0fe3875: service: Added GATT server Heart Rate example
* commit '
e0fe387561141e049bb2fc748cacb0b56af4928f':
service: Added GATT server Heart Rate example
Arman Uguray [Tue, 29 Sep 2015 00:38:52 +0000 (17:38 -0700)]
service: Add HAL wrappers for read_request_cb and connection_cb
Added HAL wrappers for GATT server callbacks for incoming read
requests, GATT connection state, and the send_response function.
Bug:
24245347
Change-Id: I8605fc6548294f9e09416ca8474cf13619463c40
Arman Uguray [Mon, 5 Oct 2015 18:57:52 +0000 (18:57 +0000)]
am
d9b0552a: service: Implement IBluetoothGattServer.addDescriptor
* commit '
d9b0552a7f75737b5c8c60cb87f892b1b9323acf':
service: Implement IBluetoothGattServer.addDescriptor
Arman Uguray [Sat, 3 Oct 2015 00:43:41 +0000 (00:43 +0000)]
am
91613743: service: Implement IBluetoothGattServer.addCharacteristic
* commit '
91613743c9db02dbe05d93d2afa163b78068d054':
service: Implement IBluetoothGattServer.addCharacteristic
Arman Uguray [Wed, 30 Sep 2015 02:39:27 +0000 (19:39 -0700)]
service: Add helper to util/address_helper
Added the BdAddrFromString function which populates a bt_bdaddr_t
from a string.
Bug:
24245347
Change-Id: I75f798956a796ba6a972fc31e336a1aff86af148
Arman Uguray [Sat, 26 Sep 2015 03:29:17 +0000 (20:29 -0700)]
service: Added GATT server Heart Rate example
Added a simple example Heart Rate Service application that
demonstrates how to use the GATT server Binder APIs. The example
currently cannot respond to read/write requests or send
notifications as they are not supported in the API yet.
Bug:
24245347
Change-Id: Id10186a566559c9667adbd99b0484f2c90a422a0
Arman Uguray [Sat, 26 Sep 2015 02:31:24 +0000 (19:31 -0700)]
service: Implement IBluetoothGattServer.addDescriptor
Declared and implemented the IBluetoothGattServer.addDescriptor
API.
Bug:
24245347
Change-Id: I7d1e992321c260b9d77521b1c8d7a1e7737b35cc
Arman Uguray [Fri, 25 Sep 2015 05:45:16 +0000 (22:45 -0700)]
service: Implement IBluetoothGattServer.addCharacteristic
Declared and implemented the IBluetoothGattServer.addCharacteristic
Binder API.
Bug:
24245347
Change-Id: I8baaed8d6dbf8ac2209b8fd0c918cade78dcba64
Arman Uguray [Fri, 2 Oct 2015 22:08:13 +0000 (22:08 +0000)]
am
3bdeebe1: service: Add IBluetoothGattServer service APIs
* commit '
3bdeebe14fa2285aaf1bb2eee0a5734538d9048b':
service: Add IBluetoothGattServer service APIs
Arman Uguray [Thu, 24 Sep 2015 22:08:53 +0000 (15:08 -0700)]
service: Add IBluetoothGattServer service APIs
Declared and implemented the IBluetoothGattServer
beginServiceDeclaration/endServiceDeclaration APIs and the
IBluetoothGattServerCallback onServiceAdded API.
Bug:
24245347
Change-Id: I586660b586e125263f71d242f42b6e7bdec169c2
Arman Uguray [Fri, 2 Oct 2015 03:42:08 +0000 (03:42 +0000)]
am
ae43de62: service: Fix IBluetoothLowEnergy signatures to return bool
* commit '
ae43de627b9c91e54215d439149c0e01599249c0':
service: Fix IBluetoothLowEnergy signatures to return bool
Arman Uguray [Thu, 24 Sep 2015 22:05:21 +0000 (15:05 -0700)]
service: Fix IBluetoothLowEnergy signatures to return bool
Changed the IBluetoothLowEnergy API signatures that can
synchronously fail to return bool to report synchronous errors. Also
fixed a bug with lambda capture by value in advertising API
implementation.
Bug:
24245347
Change-Id: I9ce4bb44d155d74ba38916e2834d7e93bf49301c
Arman Uguray [Fri, 2 Oct 2015 03:19:17 +0000 (03:19 +0000)]
am
f92aeb96: service: Add Parcel utilities for UUID and GATT
* commit '
f92aeb96ae4dfe2e8cd7c27ca7b94a03518855cf':
service: Add Parcel utilities for UUID and GATT
Arman Uguray [Fri, 2 Oct 2015 03:19:16 +0000 (03:19 +0000)]
am
df0b2714: service: Implement adding a service declaration
* commit '
df0b2714553cabc735222ce18a5f018c5a5fa138':
service: Implement adding a service declaration
Arman Uguray [Thu, 24 Sep 2015 02:55:25 +0000 (19:55 -0700)]
service: Add Parcel utilities for UUID and GATT
Added Parcel helpers for UUID and GattIdentifier. Also added the
util::IsAddressValid helper function and unit tests.
Bug:
24245347
Change-Id: I52d7274dd0a8e2806836efc4467eb4d11ac0c7e4
Arman Uguray [Fri, 2 Oct 2015 03:14:08 +0000 (03:14 +0000)]
am
78a44cdb: service: Add HAL wrappers for adding a service
* commit '
78a44cdb25616892087af2c92abd382878c2ccb4':
service: Add HAL wrappers for adding a service
Arman Uguray [Fri, 2 Oct 2015 03:14:06 +0000 (03:14 +0000)]
am
80826c9d: service: Add GattIdentifier.
* commit '
80826c9d492b7d6c5d2a14b6e538510b8ce92dc5':
service: Add GattIdentifier.
Arman Uguray [Thu, 24 Sep 2015 00:25:54 +0000 (17:25 -0700)]
service: Implement adding a service declaration
This CL implements initiating and starting a GATT service
declaration in GattServer.
Bug:
24245347
Change-Id: I53281d29a052c1890616b6595881108ca0eedec3
Arman Uguray [Thu, 24 Sep 2015 00:23:54 +0000 (17:23 -0700)]
service: Add HAL wrappers for adding a service
Added wrappers for HAL functions for adding and starting a service
declaration.
Bug:
24245347
Change-Id: Ie9bd09abb443abdfdc31f3439d563c58066961f2
Arman Uguray [Wed, 23 Sep 2015 02:04:38 +0000 (19:04 -0700)]
service: Add GattIdentifier.
This CL introduces the GattIdentifier class which servers as an
opaque identifier for GATT API objects/attributes.
Bug:
24245347
Change-Id: I377f53e1ff5d51fa8581756522235d4a90e90233
Arman Uguray [Fri, 2 Oct 2015 02:30:29 +0000 (02:30 +0000)]
am
7b54b0de: service: Implement IBluetoothGattServer register functions
* commit '
7b54b0de26de5eb34579304e1ccf94e1d9b77701':
service: Implement IBluetoothGattServer register functions
Arman Uguray [Tue, 22 Sep 2015 21:25:45 +0000 (14:25 -0700)]
service: Implement IBluetoothGattServer register functions
This patch implements the IBluetoothGattServer interface
registerServer, unregisterServer, and unregisterAll functions
against bluetooth::GattServer.
Bug:
24245347
Change-Id: Ide114730a20f939a378a6a846161a6800a12c461
Arman Uguray [Fri, 2 Oct 2015 01:56:40 +0000 (01:56 +0000)]
am
0f2d4897: service: Add new GattServer abstraction
* commit '
0f2d4897046f037a9f181f47f3d349a9dd646478':
service: Add new GattServer abstraction
Arman Uguray [Tue, 22 Sep 2015 21:20:42 +0000 (14:20 -0700)]
service: Add new GattServer abstraction
Added bluetooth::GattServer and bluetooth::GattServerFactory,
which conform the BluetoothClientInterface and
BluetoothClientInterfaceFactory interfaces. A GattServer represents
a per-application server instance that was registered with the stack
(a GATT server API "client").
The new code was added to the gatt_server.h|.cpp files, replacing
the old code that was added for cast. The old code has been moved to
the gatt_server_old.h|.cpp files.
Bug:
24245347
Change-Id: I3ca2eb53ab8320c9dba656859a4a89683607bb22
Ajay Panicker [Wed, 30 Sep 2015 23:44:32 +0000 (23:44 +0000)]
am
42c89a0e: service: Fix crash in hal/
* commit '
42c89a0e5f3e2771681ebd11281d6e3c20341894':
service: Fix crash in hal/
Ajay Panicker [Wed, 30 Sep 2015 22:49:09 +0000 (15:49 -0700)]
service: Fix crash in hal/
Fixed crash in hal/ interfaces when the Bluetooth library
fails to load.
Bug:
24409298
Change-Id: I8841d4e568756ef976e40335ef4697645563aebc
Scott James Remnant [Mon, 28 Sep 2015 21:49:10 +0000 (21:49 +0000)]
am
ed7d0e3c: service: build unit tests on non-Linux hosts
* commit '
ed7d0e3cea7ff7a66e9f13fffd5de554c425c7bf':
service: build unit tests on non-Linux hosts
Scott James Remnant [Mon, 28 Sep 2015 21:49:10 +0000 (21:49 +0000)]
am
e415c050: Rename IPCHandlerUnix to IPCHandlerLinux
* commit '
e415c050edbb2710e8807dd2602c851412953268':
Rename IPCHandlerUnix to IPCHandlerLinux
Scott James Remnant [Wed, 23 Sep 2015 20:11:03 +0000 (13:11 -0700)]
service: build unit tests on non-Linux hosts
Use a stub for the Linux-specific IPC on non-Linux hosts.
BUG=
24306825
Change-Id: I038c17ad43695be88399617687a1c3b77946daae
Scott James Remnant [Wed, 23 Sep 2015 17:52:07 +0000 (10:52 -0700)]
Rename IPCHandlerUnix to IPCHandlerLinux
Since it relies on the Linux-specific sequential packet socket type,
rename the "Unix" IPC Handler to "Linux".
Change-Id: I04c4d6d3f73061099ebffb1ee3adfd0a20430dd7
Arman Uguray [Sat, 26 Sep 2015 03:53:37 +0000 (03:53 +0000)]
am
9e520536: service: Add server support to BluetoothGattInterface
* commit '
9e5205368d61adf11e75c9e2bd9f6ff26b375bac':
service: Add server support to BluetoothGattInterface
Arman Uguray [Sat, 26 Sep 2015 03:53:37 +0000 (03:53 +0000)]
am
4624e1a6: service: Add IBluetoothGattServer stubs
* commit '
4624e1a6d25a838dad2e72001e340dd77d68179e':
service: Add IBluetoothGattServer stubs
Arman Uguray [Tue, 22 Sep 2015 21:12:50 +0000 (14:12 -0700)]
service: Add server support to BluetoothGattInterface
Added HAL GATT server interface wrappers to
hal::BluetoothGattInterface. Extended the fake implementation to
allow mocking server calls.
Bug:
24245347
Change-Id: Ic3436b8a82ecd93fed3b61579662fe776eebef58
Arman Uguray [Mon, 21 Sep 2015 21:47:19 +0000 (14:47 -0700)]
service: Add IBluetoothGattServer stubs
Added the IBluetoothGattServer and IBluetoothGattServerCallback
interface definitions with stub daemon implementation. Added
IBluetooth.getGattServerInterface to obtain a GATT server
interface handle.
Bug:
24245347
Change-Id: I2d361a55d2b21e270dc74484e678985df3d30306
Arman Uguray [Sat, 26 Sep 2015 03:19:47 +0000 (03:19 +0000)]
am
08f80ebd: service: Move client registration into base class
* commit '
08f80ebd5c714364cb76cc4e4a93454b42ed5669':
service: Move client registration into base class
Arman Uguray [Thu, 24 Sep 2015 06:58:58 +0000 (06:58 +0000)]
am
2fea18e5: service: Add missing include
* commit '
2fea18e501ab98df3254a08fca981513bf098274':
service: Add missing include
Arman Uguray [Mon, 21 Sep 2015 18:17:07 +0000 (11:17 -0700)]
service: Move client registration into base class
This CL introduces InterfaceWithClientsBase, which is an abstract class
that implements common client registration logic, which will be reused
for Binder interfaces such as IBluetoothGattClient and
IBluetoothGattServer. This also introduces BluetoothClientInstance, so
that per-application API client instances (and their factories) conform
to a common interface.
Bug:
24245347
Change-Id: Ia4b464fa85f7a33c631bf63342631fce8d155b4a
Arman Uguray [Thu, 24 Sep 2015 06:43:18 +0000 (23:43 -0700)]
service: Add missing include
Added missing "#include <atomic>" line to fix build breakages on
some build flavors.
Change-Id: I611bb63e84787217ff4bf774ceebc09ffd3c0476
Arman Uguray [Thu, 24 Sep 2015 02:15:36 +0000 (02:15 +0000)]
am
d19bc045: service/client: Add start-adv and stop-adv
* commit '
d19bc0457a9b6519acd6a79c3ac7de653894f5ec':
service/client: Add start-adv and stop-adv
Arman Uguray [Thu, 24 Sep 2015 02:15:36 +0000 (02:15 +0000)]
am
1a3e9aba: service: Implement IBluetoothLowEnergy advertising
* commit '
1a3e9aba73551eeecdfeece04f1c39a00880d56c':
service: Implement IBluetoothLowEnergy advertising
Arman Uguray [Thu, 24 Sep 2015 02:15:35 +0000 (02:15 +0000)]
am
12338405: service: Add advertising support to LowEnergyClient
* commit '
12338405e0d8d70573e650560ccc8e1ce7d8e8cd':
service: Add advertising support to LowEnergyClient
Arman Uguray [Thu, 24 Sep 2015 02:15:34 +0000 (02:15 +0000)]
am
b2b1ecd3: service: Fix bug in RemoteCallbackMap
* commit '
b2b1ecd3c282412773f5ca70ee2798542bc2920f':
service: Fix bug in RemoteCallbackMap
Arman Uguray [Thu, 24 Sep 2015 02:15:33 +0000 (02:15 +0000)]
am
909b7e66: service: Add various LE advertising constants
* commit '
909b7e6681101eb5e2d56209993134932284b50e':
service: Add various LE advertising constants
Arman Uguray [Thu, 17 Sep 2015 01:04:32 +0000 (18:04 -0700)]
service/client: Add start-adv and stop-adv
Added the start-adv and stop-adv commands to FCLI for testing
the IBluetoothLowEnergy advertising APIs.
Bug:
23793954
Change-Id: I023441e4db4a50608b4f9a90bf3365c1dab8d0d1
Arman Uguray [Thu, 17 Sep 2015 01:02:31 +0000 (18:02 -0700)]
service: Implement IBluetoothLowEnergy advertising
This CL implements the IBluetoothLowEnergy Binder APIs for
multi-advertising.
Bug:
23793954
Change-Id: I6519f86b9e528d23d2c1f46618188d1123686856
Arman Uguray [Thu, 17 Sep 2015 01:00:05 +0000 (18:00 -0700)]
service: Add advertising support to LowEnergyClient
This CL adds the StartAdvertising and StopAdvertising APIs to
LowEnergyClient. These internally call into the multi-advertising
APIs in HAL and report success or failure in an async callback.
The sequence of calls to enable advertising and setting advertising
and scan response data are serialized internally.
Bug:
23793954
Change-Id: Id093a98f3baca6328653b986857a064e8a722690
Arman Uguray [Thu, 17 Sep 2015 00:56:32 +0000 (17:56 -0700)]
service: Fix bug in RemoteCallbackMap
Fixed a bug in RemoteCallbackMap that returned the wrong value
in one of the template functions that wasn't exercised before.
Bug:
23793954
Change-Id: Id6848bd08e6941d3c8c6d6e4d6e494a0b9dc4c69
Arman Uguray [Thu, 17 Sep 2015 00:55:04 +0000 (17:55 -0700)]
service: Add various LE advertising constants
Added several constants that are used in LE advertising. Added
constants for the exposed EIR fields here as well so that clients
can use it.
Bug:
23793954
Change-Id: Ib6a97d6beb1a31c9c3ea7ed468167dab627d7d32
Arman Uguray [Sun, 20 Sep 2015 19:31:22 +0000 (19:31 +0000)]
am
27650cd8: service: Fix build breakage.
* commit '
27650cd8f2473356351f3279177486971a0f9054':
service: Fix build breakage.
Arman Uguray [Sun, 20 Sep 2015 19:26:16 +0000 (12:26 -0700)]
service: Fix build breakage.
Fixed build breakage due to missing changes.
Change-Id: Iac962fef2e9be979a2af90a43a66a5c66bbe4ad4
Arman Uguray [Sun, 20 Sep 2015 19:21:54 +0000 (19:21 +0000)]
am
d1ed1f53: service: Add HAL wrappers for multi-advertising
* commit '
d1ed1f53a5c0cce5ecb8d784acf5bef53211a20f':
service: Add HAL wrappers for multi-advertising
Arman Uguray [Thu, 17 Sep 2015 00:53:05 +0000 (17:53 -0700)]
service: Add HAL wrappers for multi-advertising
This CL adds the fake and real HAL wrappers for the multi-advertising
APIs in hardware/bluetooth/bt_gatt_client.h.
Bug:
23793954
Change-Id: I485e7cf87c4b6f42c3a702c62230a287443a75c1
Arman Uguray [Fri, 18 Sep 2015 02:09:00 +0000 (02:09 +0000)]
am
52bfc606: service: Add binder stubs for advertising API
* commit '
52bfc6060cec652a67c8989e0548225af0008be1':
service: Add binder stubs for advertising API
Arman Uguray [Fri, 18 Sep 2015 02:08:59 +0000 (02:08 +0000)]
am
3d73f617: service: Add AdvertiseData and AdvertiseSettings
* commit '
3d73f617610de09a68243852c91a2fffcabc367c':
service: Add AdvertiseData and AdvertiseSettings
Arman Uguray [Thu, 10 Sep 2015 21:28:54 +0000 (14:28 -0700)]
service: Add binder stubs for advertising API
Added native binder proxy stubs for IBluetoothLowEnergy interface
startMultiAdvertising and stopMultiAdvertising methods and
IBluetoothLowEnergyCallback.onMultiAdvertiseCallback.
Bug:
23793954
Change-Id: I0577619502042f612bf17f2a0affb2a9a1eaed38
Arman Uguray [Mon, 31 Aug 2015 21:31:02 +0000 (14:31 -0700)]
service: Add AdvertiseData and AdvertiseSettings
Added native definitions for AdvertiseData and AdvertiseSettings
framework objects. Also introduced parcel_helpers, which currently
provides functions to convert AdvertiseData and AdvertiseSettings
to/from Parcel.
As part of this, the bt_service_binder_unittests executable has been
added. This is built for the target device rather than host, as it
requires libbinder and libbinder currently can't be built for host.
Bug:
23793954
Change-Id: Ic55d7f48579e519006decaada5b6f2ef7aefe595
Arman Uguray [Thu, 17 Sep 2015 23:54:28 +0000 (23:54 +0000)]
am
2e434148: service/client: Add first BLE interface commands
* commit '
2e4341488064be7e8f4d575c8de0a1670ddc81a0':
service/client: Add first BLE interface commands
Arman Uguray [Thu, 17 Sep 2015 23:47:23 +0000 (23:47 +0000)]
am
15cf17fc: service: Implement IBluetoothLowEnergy client registration
* commit '
15cf17fc406f7796b33dc56585eccbcd1c9c6df9':
service: Implement IBluetoothLowEnergy client registration
Arman Uguray [Thu, 17 Sep 2015 23:47:22 +0000 (23:47 +0000)]
am
f8711f2e: service: Added RemoteCallbackMap
* commit '
f8711f2e95343f2c9673ab4ffc0bebbdba16c452':
service: Added RemoteCallbackMap
Arman Uguray [Thu, 17 Sep 2015 23:43:28 +0000 (23:43 +0000)]
am
81f82d27: service: Add IBluetoothLowEnergy interface
* commit '
81f82d278f4d5593012357857c5bc1d0cd758c82':
service: Add IBluetoothLowEnergy interface
Arman Uguray [Fri, 4 Sep 2015 20:17:39 +0000 (13:17 -0700)]
service/client: Add first BLE interface commands
Added the register-ble, unregister-ble, and unregister-all-ble
commands to FCLI. Also added a DeathListener for the IBluetooth
interface to handle the case when bluetoothtbd dies.
Bug:
23793954
Change-Id: I3c549ea59665cf174fb47114b879f679c0aafcb4
Arman Uguray [Fri, 4 Sep 2015 20:11:39 +0000 (13:11 -0700)]
service: Implement IBluetoothLowEnergy client registration
This CL adds support for the IBluetoothLowEnergy registerClient and
unregisterClient methods. A lot of the code added here deals with
asynchronous callback registration and can be generalized to other
interfaces that asynchronously associate and return client
interface IDs with callback binders.
Bug:
23793954
Change-Id: I82cf26e194c456f04363fe66f094bc803a5aa436
Arman Uguray [Fri, 4 Sep 2015 19:57:37 +0000 (12:57 -0700)]
service: Added RemoteCallbackMap
Added the RemoteCallbackMap template class which allows storing
IInterface subclasses in an associative array while tracking the
death of the remote process that owns the associated binder. This is
similar to RemoteCallbackList but stores entries in key-value pairs.
Also fixed some RemoteCallbackList documentation and change the code to
use std::unordered_map rather than std::map.
Bug:
23793954
Change-Id: I205c0491d21fef3bc5eeb5c4a7356dab4b6eb8dc
Arman Uguray [Wed, 2 Sep 2015 00:22:29 +0000 (17:22 -0700)]
service: Add IBluetoothLowEnergy interface
Introduce the IBluetoothLowEnergy and IBluetoothLowEnergyCallback
interfaces with stub implementations for three methods only. Added
the definition and implementation for IBluetooth.GetLowEnergyInterface.
Bug:
23395353
Change-Id: Iba4d9aa20779956b486c0b46e752e0e00be3aeea
Arman Uguray [Thu, 17 Sep 2015 01:55:07 +0000 (01:55 +0000)]
am
c2fc0f28: service: Introduce bluetooth::LowEnergyClient
* commit '
c2fc0f287f4dfaf206a51856b8d5dfa923af3c05':
service: Introduce bluetooth::LowEnergyClient
Arman Uguray [Thu, 3 Sep 2015 22:09:41 +0000 (15:09 -0700)]
service: Introduce bluetooth::LowEnergyClient
Added the LowEnergyClient class which manages a per-application BLE
API client instance. This currently only supports getting registered
with the stack and obtaining a client_if handle but will expose APIs
in the future for various BLE operations.
Bug:
23793954
Change-Id: I423f6d12321877826525e5e52136682fa9d5a441
Arman Uguray [Mon, 14 Sep 2015 21:14:32 +0000 (21:14 +0000)]
am
e9c82dca: service: Add UUID::GetRandom
* commit '
e9c82dca471da42c5a5dddb4582b70b3681758af':
service: Add UUID::GetRandom
Arman Uguray [Mon, 14 Sep 2015 21:14:32 +0000 (21:14 +0000)]
am
9ded7b61: service: Add hal::BluetoothGattInterface
* commit '
9ded7b6175825afdac0e2cebef8755e4d7b03103':
service: Add hal::BluetoothGattInterface
Arman Uguray [Thu, 3 Sep 2015 22:00:52 +0000 (15:00 -0700)]
service: Add UUID::GetRandom
Added a static class method to UUID that returns a random 128-bit UUID.
Also converted the enum constants to pure integer constants to make
their meaning more explicit.
Bug:
23395353
Change-Id: If8b97d40c020fdfc8b460b537b2da7c62b0c24ad
Arman Uguray [Mon, 31 Aug 2015 23:29:07 +0000 (16:29 -0700)]
service: Add hal::BluetoothGattInterface
Added hal::BluetoothGattInterface which is a C++ wrapper around the
HAL Bluetooth GATT interfaces. This follows the current pattern of hal/*
wrappers and is meant to be fakeable.
Bug:
23395353
Change-Id: Ib11afba9fe2f4632591d5db384edf32ca788bf2c
Arman Uguray [Tue, 1 Sep 2015 16:37:35 +0000 (16:37 +0000)]
am
10b54c4b: service: Implement IBluetooth.isMultiAdvertisementSupported()
* commit '
10b54c4b7f1a863a27eca4158f256062ec9c3770':
service: Implement IBluetooth.isMultiAdvertisementSupported()
Arman Uguray [Tue, 1 Sep 2015 16:37:33 +0000 (16:37 +0000)]
am
5d22fabf: gn-build: Add secondary build tree for gmock
* commit '
5d22fabf158ca476623068db46a05345c8791760':
gn-build: Add secondary build tree for gmock
Marie Janssen [Tue, 1 Sep 2015 16:37:33 +0000 (16:37 +0000)]
am
888f8856: brillo: add and install system startup files
* commit '
888f8856774e9628b670da6ba779a36dd6a19ab9':
brillo: add and install system startup files
Arman Uguray [Fri, 21 Aug 2015 21:59:57 +0000 (14:59 -0700)]
service: Implement IBluetooth.isMultiAdvertisementSupported()
Added the Binder bindings, bluetoothtbd implementation, and new
bluetooth-cli command for testing it.
Bug:
23227962
Change-Id: I2de62e49e5d8b0bcc118ccb654d72fdd9f11f748
Arman Uguray [Fri, 28 Aug 2015 19:15:09 +0000 (12:15 -0700)]
gn-build: Add secondary build tree for gmock
Added a BUILD.gn file for gmock under third_party/gmock.
Change-Id: Icbe93f118142ab8e0ea3a46672a74dd2d7466868
Marie Janssen [Tue, 25 Aug 2015 22:07:09 +0000 (15:07 -0700)]
brillo: add and install system startup files
Add files necessary to start bluetoothtbd at startup.
BUG=
23120355
Change-Id: Ibdacee621909b9d7fc9af2935343e581693ed010
Nitin Arora [Tue, 25 Aug 2015 23:16:46 +0000 (23:16 +0000)]
am
b7460434: Fix memory corruption of BLE whitelist hashmap
* commit '
b74604341c60628dc7bc8e8e69e3ce2acb4a5373':
Fix memory corruption of BLE whitelist hashmap
Nitin Arora [Fri, 21 Aug 2015 19:34:14 +0000 (12:34 -0700)]
Fix memory corruption of BLE whitelist hashmap
When adding devices to the whitelist for LE background connections, a
local variable is used as the hashmap key, preventing any successful
lookups going forward. Thus the device will repeatedly add the same
device to the whitelist and preventing successful connections going
forward.
Bug:
23423602
Change-Id: I3d2590c0a1dd66c6e1864ea53f875a713660b645