| d95746a9 |
android/gatt: Add suport for server MTU changed callback
When MTU is exchange notification is send with updated MTU.
For BR/EDR notification is always send after connection. |
Szymon Janc |
10 years ago |
1 file, +16, -0 |
| 183c07ca |
android/hal-gatt: Add support for server MTU changed callback |
Szymon Janc |
10 years ago |
2 files, +19, -0 |
| f004873e |
android/hal-ipc-api: Add GATT Server MTU Changed notification
Add definition of GATT server MTU changed notification. |
Szymon Janc |
10 years ago |
1 file, +5, -0 |
| 82cdca8f |
android: Update Android system headers to 5.1 API
Android headers are used for Linux host build. |
Szymon Janc |
10 years ago |
2 files, +5, -1 |
| c5e0d800 |
android/gatt: Implement MTU exchange HAL API
This allow application to query for current MTU. MTU is always
exchanged on connection and notifications are sent to framework.
When client requests MTU exchange we just report current value but
don't trigger another exchange procedure (since this is against spec). |
Szymon Janc |
10 years ago |
1 file, +60, -3 |
| 403de42a |
emulator: Fix missing includes
writev requires #include <sys/uio.h>
memcpy and memset require #include <string.h>
This fix compilation error with musl. |
Szymon Janc |
10 years ago |
3 files, +3, -0 |
| a65ea4e5 |
shared/gatt-client: Fix invalid read
This fixes the following trace caused by last changes which included
prepare write support but broke cancel_request code:
Invalid read of size 1
at 0x43E726: cancel_request (gatt-client.c:1854)
by 0x447E4F: queue_remove_all (queue.c:387)
by 0x43F19A: bt_gatt_client_cancel_all (gatt-client.c:1866)
by 0x43F250: bt_gatt_client_free (gatt-client.c:1569)
by 0x43F3D0: bt_gatt_client_unref (gatt-client.c:1692)
by 0x43380C: destroy_context (test-gatt.c:284)
by 0x43380C: context_quit (test-gatt.c:312)
by 0x433E77: test_read_cb (test-gatt.c:677)
by 0x43C260: read_cb (gatt-client.c:1924)
by 0x43948B: handle_rsp (att.c:640)
by 0x43948B: can_read_data (att.c:813)
by 0x446DAA: watch_callback (io-glib.c:170)
by 0x4E7E7FA: g_main_context_dispatch (in /usr/lib64/libglib-2.0.so.0.4200.2)
by 0x4E7EB97: ??? (in /usr/lib64/libglib-2.0.so.0.4200.2)
Address 0x57f0908 is 8 bytes inside a block of size 40 free'd
at 0x4C2ACE9: free (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so)
by 0x43E06F: request_unref (gatt-client.c:160)
by 0x4389C6: cancel_att_send_op (att.c:222)
by 0x4389C6: bt_att_cancel (att.c:1194)
by 0x43E71D: cancel_request (gatt-client.c:1852)
by 0x447E4F: queue_remove_all (queue.c:387)
by 0x43F19A: bt_gatt_client_cancel_all (gatt-client.c:1866)
by 0x43F250: bt_gatt_client_free (gatt-client.c:1569)
by 0x43F3D0: bt_gatt_client_unref (gatt-client.c:1692)
by 0x43380C: destroy_context (test-gatt.c:284)
by 0x43380C: context_quit (test-gatt.c:312)
by 0x433E77: test_read_cb (test-gatt.c:677)
by 0x43C260: read_cb (gatt-client.c:1924)
by 0x43948B: handle_rsp (att.c:640)
by 0x43948B: can_read_data (att.c:813) |
Luiz Augusto von Dentz |
10 years ago |
1 file, +15, -29 |
| 247aa707 |
profiles/network: Remove not needed checks
bnep_setup_decode returns success only if destination UUID is valid
so no need to double check that in caller. |
Szymon Janc |
10 years ago |
1 file, +1, -8 |
| d6abe697 |
profiles/network: Fix compilation error
CC profiles/network/bluetoothd-bnep.o
profiles/network/bnep.c: In function ‘bnep_server_add’:
profiles/network/bnep.c:633:22: error: initialization makes integer
from pointer without a cast [-Werror]
uint16_t rsp, dst = NULL; |
Szymon Janc |
10 years ago |
1 file, +1, -1 |
| e0ffe048 |
profiles/network: Keep interface arguments naming consistent
Arguments shall keep consistent naming. |
Grzegorz Kolodziejczyk |
10 years ago |
1 file, +1, -1 |
| 10125a91 |
profiles/network: Fix sending command responses
Command response can be three bytes long (in case if command is not
understood) 1 byte(packet type) + 1 byte(control type) + 1 byte(unknown
control type). Command response can be also four bytes long if it's
response for setup connection, filter net type and filter multi addr,
1 byte(packet type) + 1 byte(control type) + 2 byte(response message). |
Grzegorz Kolodziejczyk |
10 years ago |
2 files, +49, -17 |
| b104ec82 |
profiles/network: Handle ctrl rsp after conn setup by bnep
This patch moves setup control response to bnep and makes it private. |
Grzegorz Kolodziejczyk |
10 years ago |
4 files, +52, -62 |
| 6f7dcbe7 |
profiles/network: Move bnep connection setup logic to bnep
BNEP connection set up logic which was added before bnep_server_add,
can be private method of bnep. Moved logic was almost doubled in two
cases: NAP role in PAN, server listening. Now set up and connect
scenario check of bnep connection is only handled in bnep part for
listen connections. |
Grzegorz Kolodziejczyk |
10 years ago |
4 files, +118, -96 |
| 8f5408a8 |
tools/btmgmt: Introduce stop-find command
This patch adds stop-find command that stops discovery started by
find, or find-service command. |
Jakub Pawlowski |
10 years ago |
1 file, +79, -0 |
| 2448c398 |
doc/adapter-api: SetDiscoveryFilter method.
This patch proposes new method, SetDiscoveryFilter to D-Bus Adapter
API for desktop bluetoothd. It will allow to set per-client discovery
filter that would limit devices being discovered. |
Jakub Pawlowski |
10 years ago |
1 file, +61, -0 |
| 4a327f58 |
Release 5.29 |
Marcel Holtmann |
10 years ago |
2 files, +21, -1 |
| d72b3760 |
build: Update library version |
Marcel Holtmann |
10 years ago |
1 file, +1, -1 |
| 8b436aa4 |
lib: Update company identifiers |
Marcel Holtmann |
10 years ago |
1 file, +4, -0 |
| 31180449 |
core/gatt-database: Fix memory corruption
Pointer to on-stack variable was returned from pending_write_new.
#0 0x00007ffff72047b0 in __memmove_ssse3 () from /usr/lib/libc.so.6
#1 0x00007ffff78ae440 in ?? () from /usr/lib/libdbus-1.so.3
#2 0x00007ffff78ad7cc in ?? () from /usr/lib/libdbus-1.so.3
#3 0x00007ffff789ac46 in ?? () from /usr/lib/libdbus-1.so.3
#4 0x00000000004720e8 in write_setup_cb (iter=0x7fffffffe710,
user_data=0x76c2a0) at src/gatt-database.c:1516
#5 0x00000000004b7b4c in g_dbus_proxy_method_call (proxy=0x75ade0,
method=0x4e1747 "WriteValue", setup=0x472088 <write_setup_cb>,
function=0x4720fd <write_reply_cb>, user_data=0x76c2a0,
destroy=0x471f28 <pending_op_free>) at gdbus/client.c:875
#6 0x000000000047235f in send_write (attrib=0x764e00, proxy=0x75ade0,
owner_queue=0x764250, id=1, value=0x767ff3 "\001\377\177", len=1)
at src/gatt-database.c:1597
#7 0x0000000000472bdf in chrc_write_cb (attrib=0x764e00, id=1,
offset=0, value=0x767ff3 "\001\377\177", len=1, opcode=82 'R',
att=0x7606d0,
user_data=0x7641d0) at src/gatt-database.c:1865
#8 0x00000000004c96f2 in gatt_db_attribute_write (attrib=0x764e00,
offset=0, value=0x767ff3 "\001\377\177", len=1, opcode=82 'R',
att=0x7606d0,
func=0x4c53c8 <write_complete_cb>, user_data=0x772320) at
src/shared/gatt-db.c:1570
#9 0x00000000004c5609 in write_cb (opcode=82 'R', pdu=0x767ff1,
length=3, user_data=0x7630e0) at src/shared/gatt-server.c:796
#10 0x00000000004bdb35 in handle_notify (att=0x7606d0, opcode=82 'R',
pdu=0x767ff1 "\f", pdu_len=3) at src/shared/att.c:768
#11 0x00000000004bddc9 in can_read_data (io=0x7607a0,
user_data=0x7606d0) at src/shared/att.c:849
#12 0x00000000004c9c44 in watch_callback (channel=0x7607d0,
cond=G_IO_IN, user_data=0x760940) at src/shared/io-glib.c:170
#13 0x00007ffff7b1662d in g_main_context_dispatch () from
/usr/lib/libglib-2.0.so.0
#14 0x00007ffff7b16a08 in ?? () from /usr/lib/libglib-2.0.so.0
#15 0x00007ffff7b16d32 in g_main_loop_run () from
/usr/lib/libglib-2.0.so.0
#16 0x0000000000466ba1 in main (argc=1, argv=0x7fffffffec38) at
src/main.c:661 |
Andrejs Hanins |
10 years ago |
1 file, +4, -7 |
| 2520e5af |
tools/btgatt-client: Add prepare and execute write |
Lukasz Rymanowski |
10 years ago |
1 file, +208, -0 |
| 25f8b3bc |
shared/gatt-client: Support cancel of prepare write
This patch add support to cancel prepare write done from gatt client
Note that Write Execute 0x00 is done on cancel |
Lukasz Rymanowski |
10 years ago |
1 file, +28, -1 |
| c3a53b94 |
shared/gatt-client: Add coexistence of long write and prepare write
This patch makes sure that long write is not proceeded when prepare
write has been called. Instead long write commands will be queued and
once write execute command is done, queued long write requests will
be proceeded.
It does not work in other way. Meaning, when long write is ongoing,
prepare write will not be proceeded nor queued. This feature can be
added later on if really needed. |
Lukasz Rymanowski |
10 years ago |
1 file, +3, -1 |
| 7d1856ce |
shared/gatt-client: Add write prepare and execute
For Android we need explicit write prepare and execute commands in GATT
client. This patch adds that.
Note that till now prepare and execute has been used only in long
write.
With this patch it is possible to start reliable write session by
the gatt-client. First write prepare will return session ID which shall
be used in follow up write prepare request and write execute.
Note that write execute is mapped to write execute 0x01
Following patch will add support to send write execute 0x00 using
bt_gatt_client_cancel |
Lukasz Rymanowski |
10 years ago |
2 files, +272, -0 |
| 43a3cd87 |
shared/gatt-client: Make usage of cancel_long_write_cb
Clear in_long_write flag when cancel write execute is done |
Lukasz Rymanowski |
10 years ago |
1 file, +8, -10 |
| fe0c064a |
shared/gatt-client: Add helper to cancel long write request |
Lukasz Rymanowski |
10 years ago |
1 file, +30, -31 |
| e45fdf4a |
tools/btgatt-client: Minor fix of menu alignment |
Lukasz Rymanowski |
10 years ago |
1 file, +2, -2 |
| 87aeb83c |
unit/test-gatt: Check if crypto is enabled
This checks if crypto is enabled and in case it is not do not run test
/TP/GAW/CL/BV-02-C. |
Luiz Augusto von Dentz |
10 years ago |
1 file, +10, -2 |
| 619acbcd |
shared/att: Add bt_att_has_crypto
This adds the possibility to check if bt_att has crypto enabled. |
Luiz Augusto von Dentz |
10 years ago |
2 files, +9, -0 |
| 075ddc44 |
shared/tester: Fix teardown multiple times
tester_test* can be called multiple times which cause teardown callback
to be called multiple times as well leading to to crashes or strange
behavior. |
Luiz Augusto von Dentz |
10 years ago |
1 file, +9, -1 |
| 6b91a808 |
shared/tester: Add tester_test_abort
This can be used to abort tests and mark them as not run. |
Luiz Augusto von Dentz |
10 years ago |
2 files, +27, -21 |
| 755d9d31 |
core: Add mapping from 'Already Paired' status to D-Bus error |
Johan Hedberg |
10 years ago |
1 file, +4, -0 |
| a2aaf050 |
lib/mgmt: Add define for 'Already Paired' status |
Johan Hedberg |
10 years ago |
1 file, +1, -0 |
| 96456910 |
lib/mgmt: Add 'Already Paired' error decoding |
Johan Hedberg |
10 years ago |
1 file, +1, -0 |
| 5a426302 |
doc/mgmt-api: Add missing new error codes |
Johan Hedberg |
10 years ago |
1 file, +3, -0 |
| 3556d692 |
doc: Mention the upcoming version 1.9 of management interface |
Marcel Holtmann |
10 years ago |
1 file, +4, -0 |
| 6dfc5826 |
doc/test-coverage: Update mgmt-tester test count |
Johan Hedberg |
10 years ago |
1 file, +2, -2 |
| 0979b8d6 |
tools/mgmt-tester: Add new Fast Connectable tests |
Johan Hedberg |
10 years ago |
1 file, +41, -0 |
| 67b4d16a |
core: Mention FastConnectable kernel requirement in main.conf |
Johan Hedberg |
10 years ago |
1 file, +2, -1 |
| 07232cba |
core: Minor whitespace cleanup |
Johan Hedberg |
10 years ago |
1 file, +0, -1 |
| 1cd65e52 |
core: Add FastConnectable main.conf setting |
Johan Hedberg |
10 years ago |
4 files, +19, -0 |
| ebea6679 |
doc/mgmt-api: Make Fast Connectable available while powered off |
Johan Hedberg |
10 years ago |
1 file, +4, -5 |
| 4788146e |
core/gatt-database: Fix passing valid type to dbus_message_iter_get_basic |
Johan Hedberg |
10 years ago |
1 file, +5, -1 |
| 791e318a |
doc/mgmt-api: Add note about power off while fast connectable |
Johan Hedberg |
10 years ago |
1 file, +3, -1 |
| 4c2abdb4 |
doc/mgmt-api: Set Fast Connectable is allowed while not connectable
Now that the page scan state isn't strictly tied to the connectable
setting (adding BR/EDR devices to the kernel whitelist may enable it as
well) we shouldn't prevent fast-connectable from getting set while
connectable is not set. |
Johan Hedberg |
10 years ago |
1 file, +0, -4 |
| 2f43dfc3 |
android/pts: Update PIXIT and PICS for A2DP PTS 6.0
Some of pixits and pics were defined incorrectly. |
Grzegorz Kolodziejczyk |
10 years ago |
2 files, +13, -14 |
| be130b5f |
profiles/network: Make get_service_id connections private method
get_service_id method is used only within connection code to get id (16
bit value) of received string format 128bit uuid or service named e.g.
panu, gn or nap. There is no need to make it public as bnep.c only
related code. |
Grzegorz Kolodziejczyk |
10 years ago |
3 files, +14, -32 |
| 1d70b732 |
profiles/network: Shortening service name argument to svc
Current argument naming is long and it can be simplified to svc. |
Grzegorz Kolodziejczyk |
10 years ago |
1 file, +16, -16 |
| 38a7f19f |
profiles/network: Integrate get and check bnep setup services roles
While bnep setup, roles must be determined and checked if the connection
scanario is possible. Get and check possible service roles routines are
always performed in serie. So there is no need to split it to separate
calls. |
Grzegorz Kolodziejczyk |
10 years ago |
4 files, +18, -34 |
| 703e2b9b |
android/pan: Add appropriate log prefix
Logs should have appropriate prefixes eg. pan. |
Grzegorz Kolodziejczyk |
10 years ago |
1 file, +1, -1 |
| 9e734177 |
profiles/network: Add appropriate log prefix
Logs should have appropriate prefixes eg. bnep. |
Grzegorz Kolodziejczyk |
10 years ago |
1 file, +2, -2 |