| 7aa3ff73 |
android/pan: Fix removing PAN NAP bridge
PAN NAP bridge shouldn't be removed if bnep server add fails. Pan device
remove function is decreasing amount of connected devices, if count will
be zero - NAP bridge will be removed. |
Grzegorz Kolodziejczyk |
10 years ago |
1 file, +0, -1 |
| 1bc0495a |
hciattach: Fix fd leak |
Bharat Panda |
10 years ago |
1 file, +13, -9 |
| ccbc1a0f |
tools/obexctl: Remove unused variable
Removes variable 'ctype' which is assigned but never used. |
Bharat Panda |
10 years ago |
1 file, +2, -3 |
| b1672db9 |
tools/btmgmt: Introduce bin2hex() helper and use it in local_oob_rsp() |
Johan Hedberg |
10 years ago |
1 file, +20, -17 |
| 629d6877 |
tools/btmgmt: Rename convert_hex2str to hex2bin |
Johan Hedberg |
10 years ago |
1 file, +7, -7 |
| da83a62d |
doc/mgmt-tester: Add new settings event expectation to static addr test |
Johan Hedberg |
10 years ago |
1 file, +1, -0 |
| c108a7d3 |
doc/test-coverage: Update mgmt-tester test count |
Johan Hedberg |
10 years ago |
1 file, +2, -2 |
| ba1150ae |
tools/mgmt-tester: Add dual-mode & BR/EDR-only static addr tests |
Johan Hedberg |
10 years ago |
1 file, +27, -2 |
| d039f4ef |
tools/mgmt-tester: Update static addr test expected response |
Johan Hedberg |
10 years ago |
1 file, +4, -1 |
| fdfca683 |
tools/mgmt-tester: Add static address setting bit to LE-capable controllers |
Johan Hedberg |
10 years ago |
1 file, +2, -2 |
| 9e9be4d9 |
android: Define WAIT_ANY if it is missing |
Marcel Holtmann |
10 years ago |
1 file, +4, -0 |
| 74798ed4 |
android: Include <poll.h> instead of <sys/poll.h> |
Marcel Holtmann |
10 years ago |
1 file, +1, -1 |
| 01aa5f57 |
audio/media: Fix crash at endpoint handling no reply
When handling DBUS_ERROR_NO_REPLY error in media endpoint, the
a2dp_setup gets unref'ed in the associated request callback when
it's called for the first time. A crash happens in the later
clear_endpoint call with below backtrace that, the request callback
will be triggered again with NULL session.
To fix this, remove the additional request callback so that every
callback only gets triggered for once in clear_endpoint. |
Hsin-Yu Chao |
10 years ago |
1 file, +0, -3 |
| f081d05f |
doc: Add information about static address controller setting |
Marcel Holtmann |
10 years ago |
1 file, +5, -1 |
| 77b1bb7f |
lib: Add constant for MGMT_SETTING_STATIC_ADDRESS |
Marcel Holtmann |
10 years ago |
1 file, +1, -0 |
| 8559dc74 |
tools: Add string for static address controller setting |
Marcel Holtmann |
10 years ago |
1 file, +1, -0 |
| 18c1bc1e |
monitor: Add strings for configuration and static address settings |
Marcel Holtmann |
10 years ago |
1 file, +1, -0 |
| e012b600 |
monitor: Update Broadcom chip name decoding information |
Marcel Holtmann |
10 years ago |
1 file, +46, -29 |
| b86eefd3 |
doc: Clarify the usage of the static address for dual-mode controllers |
Marcel Holtmann |
10 years ago |
1 file, +7, -1 |
| a9e7f4c0 |
audio: Remove unused API |
Luiz Augusto von Dentz |
10 years ago |
2 files, +2, -63 |
| fe9ba4ff |
audio: Remove avdtp_server struct
avdtp_server struct doesn't make sense to exist since there exist an
equivalent in the form of a2dp_server which can be used as context for
incoming connections. |
Luiz Augusto von Dentz |
10 years ago |
3 files, +327, -185 |
| 97289c09 |
android: Fix coding style |
Luiz Augusto von Dentz |
10 years ago |
1 file, +0, -1 |
| 05a0241d |
android: Remove unused field
struct avdtp_server is no longer needed. |
Luiz Augusto von Dentz |
10 years ago |
1 file, +0, -2 |
| cea92f92 |
android/pts: Update GATT test results and notes |
Mariusz Skamra |
10 years ago |
1 file, +3, -2 |
| 44e395c1 |
android/gatt: Handle device state in connect functions
Depending on kernel connection management support and type of
connection (direct or not) different states are expected after
connect. To make sure device state is correct set it connect
functions. |
Szymon Janc |
10 years ago |
1 file, +18, -24 |
| fb865d80 |
android/bluetooth: Remove address type from BT callbacks
GATT code should always use bt_get_id_addr() when directly dealing with
remote address. This is to make sure that proper address and type is
used. |
Szymon Janc |
10 years ago |
4 files, +25, -71 |
| 0f40779e |
android/gatt: Add support for direct connect
Don't use kernel auto connect if direct connect is requested by Android
Framework. This is required to be able to connect to non-bonded devices
that are using RPA. |
Szymon Janc |
10 years ago |
1 file, +13, -12 |
| 9c16dfcc |
shared/att: Refactor loop in handle_notify
Use 'while' instead of 'for' loop for better code readability. |
Szymon Janc |
10 years ago |
1 file, +8, -2 |
| ccbc792a |
shared/att: Fix invalid read
The following backtrace can be reproduced with unit/test-gatt and it is
caused by the callback removing all entries from notify list:
Invalid read of size 8
at 0x438FE9: handle_notify (att.c:755)
by 0x438FE9: can_read_data (att.c:841)
by 0x4465AA: watch_callback (io-glib.c:170)
by 0x4E7EAEA: g_main_context_dispatch (in /usr/lib64/libglib-2.0.so.0.4200.1)
by 0x4E7EE87: ??? (in /usr/lib64/libglib-2.0.so.0.4200.1)
by 0x4E7F1B1: g_main_loop_run (in /usr/lib64/libglib-2.0.so.0.4200.1)
by 0x437161: tester_run (tester.c:817)
by 0x433308: main (test-gatt.c:3174)
Address 0x59671f0 is 16 bytes inside a block of size 24 free'd
at 0x4C2ACE9: free (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so)
by 0x446E58: queue_entry_unref (queue.c:96)
by 0x4474E9: queue_remove_if (queue.c:338)
by 0x438CAE: bt_att_unregister (att.c:1327)
by 0x43EF4B: bt_gatt_client_free (gatt-client.c:1578)
by 0x43F040: bt_gatt_client_unref (gatt-client.c:1689)
by 0x43F0B8: notify_cb (gatt-client.c:1551)
by 0x4390AE: handle_notify (att.c:764)
by 0x4390AE: can_read_data (att.c:841)
by 0x4465AA: watch_callback (io-glib.c:170)
by 0x4E7EAEA: g_main_context_dispatch (in /usr/lib64/libglib-2.0.so.0.4200.1)
by 0x4E7EE87: ??? (in /usr/lib64/libglib-2.0.so.0.4200.1)
by 0x4E7F1B1: g_main_loop_run (in /usr/lib64/libglib-2.0.so.0.4200.1) |
Luiz Augusto von Dentz |
10 years ago |
1 file, +4, -2 |
| 649fd876 |
doc/test-coverage: Update test-gatt count |
Gowtham Anandha Babu |
10 years ago |
1 file, +3, -2 |
| 958dee43 |
unit/test-gatt: Add TP/GAW/CL/BI-24-C test
Generic Attribute Profile client behavior when the Write Characteristic
Descriptor procedure fails due to insufficient encryption key size. |
Gowtham Anandha Babu |
10 years ago |
1 file, +14, -0 |
| 1cb73364 |
unit/test-gatt: Add TP/GAW/CL/BI-23-C test
Verify Generic Attribute Profile client behavior when the Write
Characteristic Descriptor procedure fails due to insufficient
authentication. |
Gowtham Anandha Babu |
10 years ago |
1 file, +14, -0 |
| 26db6562 |
unit/test-gatt: Add TP/GAW/CL/BI-22-C test
Verify Generic Attribute Profile client behavior when the Write
Characteristic Descriptor procedure fails due to insufficient
authorization. |
Gowtham Anandha Babu |
10 years ago |
1 file, +14, -0 |
| ff88a489 |
unit/test-gatt: Add TP/GAW/CL/BI-21-C test
Verify Generic Attribute Profile client behavior when the Write
Characteristic Descriptor procedure fails due to write not permitted. |
Gowtham Anandha Babu |
10 years ago |
1 file, +14, -0 |
| c0182340 |
unit/test-gatt: Add TP/GAW/CL/BI-20-C test
Verify Generic Attribute Profile client behavior when the Write
Characteristic Descriptor procedure fails due to invalid handle. |
Gowtham Anandha Babu |
10 years ago |
1 file, +14, -0 |
| 2a702924 |
unit/test-gatt: Add TP/GAW/CL/BV-08-C test
Verify that a Generic Attribute Profile client can write a
characteristic descriptor selected by handle. |
Gowtham Anandha Babu |
10 years ago |
1 file, +14, -0 |
| 685d0709 |
core/gatt: Simplify service_free
This remove NULL checks for functions that are safe to call even if the
pointer is NULL. |
Luiz Augusto von Dentz |
10 years ago |
1 file, +3, -8 |
| 6ea0d095 |
core/gatt: Add UnregisterService and track sender
This patch implements the GattManager1.UnregisterService method. The
API implementation is slightly changed so that external services are
tracked on a per path + sender basis and not just based on the object
path. |
Arman Uguray |
10 years ago |
1 file, +40, -7 |
| c367f38e |
core/gatt: Remove spammy log messages
This patch removes some spammy debug log messages regarding CEP/CCC
descriptor processing. |
Arman Uguray |
10 years ago |
1 file, +6, -6 |
| 92f5a284 |
core/gatt: Fix crash in gatt-database destructor
This patch fixes an invalid access that occurs during daemon shutdown
if at least one external GATT service has been registered:
==4764== Invalid read of size 8
==4764== at 0x4C8812: queue_foreach (queue.c:241)
==4764== by 0x47A29C: send_notification_to_devices (gatt-database.c:904)
==4764== by 0x47BAB8: send_service_changed (gatt-database.c:932)
==4764== by 0x47BB3D: gatt_db_service_removed (gatt-database.c:972)
==4764== by 0x4D5CA1: handle_notify (gatt-db.c:264)
==4764== by 0x4C888F: queue_foreach (queue.c:251)
==4764== by 0x4D675B: notify_service_changed (gatt-db.c:281)
==4764== by 0x4D680C: gatt_db_service_destroy (gatt-db.c:292)
==4764== by 0x4D6889: gatt_db_remove_service (gatt-db.c:424)
==4764== by 0x47B237: service_free (gatt-database.c:347)
==4764== by 0x4C8C4F: queue_remove_all (queue.c:387)
==4764== by 0x4C8CB4: queue_destroy (queue.c:76)
==4764== Address 0x5e9d0f8 is 8 bytes inside a block of size 32 free'd
==4764== at 0x4C2ACE9: free (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so)
==4764== by 0x4C8488: queue_unref (queue.c:53)
==4764== by 0x4C8CC4: queue_destroy (queue.c:78)
==4764== by 0x47C2E5: gatt_database_free (gatt-database.c:394)
==4764== by 0x47D21D: btd_gatt_database_destroy (gatt-database.c:2203)
==4764== by 0x48809F: adapter_remove (adapter.c:4595)
==4764== by 0x495D42: adapter_cleanup (adapter.c:7486)
==4764== by 0x40BBDD: main (main.c:666)
==4764==
==4764== Invalid read of size 8
==4764== at 0x4C8812: queue_foreach (queue.c:241)
==4764== by 0x47BB56: gatt_db_service_removed (gatt-database.c:974)
==4764== by 0x4D5CA1: handle_notify (gatt-db.c:264)
==4764== by 0x4C888F: queue_foreach (queue.c:251)
==4764== by 0x4D675B: notify_service_changed (gatt-db.c:281)
==4764== by 0x4D680C: gatt_db_service_destroy (gatt-db.c:292)
==4764== by 0x4D6889: gatt_db_remove_service (gatt-db.c:424)
==4764== by 0x47B237: service_free (gatt-database.c:347)
==4764== by 0x4C8C4F: queue_remove_all (queue.c:387)
==4764== by 0x4C8CB4: queue_destroy (queue.c:76)
==4764== by 0x47C2FB: gatt_database_free (gatt-database.c:395)
==4764== by 0x47D21D: btd_gatt_database_destroy (gatt-database.c:2203)
==4764== Address 0x5e9d0f8 is 8 bytes inside a block of size 32 free'd
==4764== at 0x4C2ACE9: free (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so)
==4764== by 0x4C8488: queue_unref (queue.c:53)
==4764== by 0x4C8CC4: queue_destroy (queue.c:78)
==4764== by 0x47C2E5: gatt_database_free (gatt-database.c:394)
==4764== by 0x47D21D: btd_gatt_database_destroy (gatt-database.c:2203)
==4764== by 0x48809F: adapter_remove (adapter.c:4595)
==4764== by 0x495D42: adapter_cleanup (adapter.c:7486)
==4764== by 0x40BBDD: main (main.c:666)
==4764== |
Arman Uguray |
10 years ago |
1 file, +3, -1 |
| 38ec4aac |
core/adapter: Deduplicate local service UUIDs
An adapter's local GATT database can contain multiple services with the
same UUID and some of these services may also be present in the SDP
tables. This patch deduplicates these so that the response returned for
the "UUIDs" property only contains a single instance of each service
UUID. |
Arman Uguray |
10 years ago |
1 file, +21, -9 |
| 6f1ae535 |
tools: Added a Python example for GATT server API
This patch introduces tools/gatt-example, which demonstrates how an
external application can use the GattManager1 API to register GATT
services. This example simulates a fake Heart Rate service and a fake
Battery service while also providing a test service with a non-SIG UUID
that exercises various API behavior. |
Arman Uguray |
10 years ago |
1 file, +533, -0 |
| f525a454 |
core/gatt: Support descriptor reads/writes
This patch adds support for reading and writing to a descriptor from an
external application during a read/write procedure. This patch unifies
the code paths for characteristic and descriptor read/write operations. |
Arman Uguray |
10 years ago |
1 file, +139, -78 |
| ca9baf22 |
core/gatt: Register descriptors
This patch adds support for registering external descriptor objects. |
Arman Uguray |
10 years ago |
1 file, +172, -15 |
| bf9ca93c |
core/gatt: Create CEP for external characteristic
This patch adds support for adding a Characteristic Extended
Properties descriptor entry for an external characteristic, if
it has the 'reliable-write' or 'writable-auxiliaries' property. |
Arman Uguray |
10 years ago |
1 file, +59, -3 |
| bd17b4e4 |
core/gatt: Send not/ind for D-Bus characteristics
This patch adds support for sending out notification/indication packets
for external characteristics whenever a PropertiesChanged signal is
received for the "Value" property of an external characteristic that has
either the 'notify' or the 'indicate' property. |
Arman Uguray |
10 years ago |
1 file, +47, -2 |
| 3837509d |
core/gatt: Create CCC for external characteristic
This patch adds support for adding a CCC descriptor entry for an
external characteristic, if it has the 'notify' or 'indicate' property.
When the CCC descriptor is written to, bluetoothd calls the
'StartNotify' and 'StopNotify' methods on the characteristic in a
reference counted manner. |
Arman Uguray |
10 years ago |
1 file, +84, -6 |
| e1b77c81 |
core/gatt: Make CCC addition API public
This patch adds the btd_gatt_database_add_ccc function to the
database's public API. The signature has been extended to accept
a callback that gets invoked to notify the upper layer when a CCC write
is performed. The result is cached by the database on a per-device basis
while the callback is invoked for all writes from all devices. |
Arman Uguray |
10 years ago |
2 files, +124, -16 |
| 75ed21b2 |
android/pts: Update PTS instructions
With #12951 ETS it is no longer necessary to specify IUT random
address in PIXIT. |
Szymon Janc |
10 years ago |
2 files, +7, -7 |
| 518b658a |
core/gatt: Fix not initializing pending_writes
This patch fixes a bug where the pending_writes list for an external
characteristic was never being initialized. |
Arman Uguray |
10 years ago |
1 file, +7, -0 |