| 7217d1f5 |
android/client: Add a2dp audio config callback
This is Android 5 API callback. |
Jakub Tyszkowski |
11 years ago |
1 file, +13, -1 |
| f414b457 |
tools/gatt: Fix memory leak
Fixes following clang warning:
...
tools/btgatt-client.c:451:4: warning: Potential leak of memory pointed
to by 'value'
printf("Invalid value byte: %s\n", argv[i]);
^~~~~~
... |
Andrei Emeltchenko |
11 years ago |
1 file, +1, -0 |
| d393274d |
shared/gatt: Fix dereference before NULL check warnings
Add NULL check otherwise constructions like below give warnings:
...
uint8_t pdu[4 + get_uuid_len(uuid)];
if (!att || !uuid || uuid->type == BT_UUID_UNSPEC)
... |
Andrei Emeltchenko |
11 years ago |
1 file, +3, -0 |
| 32da6e18 |
android/client: Add support to read local le features |
Lukasz Rymanowski |
11 years ago |
1 file, +68, -0 |
| acdbfb30 |
android/pts: PTS tests for MCAP on Android 5.0 |
Sebastian Chlad |
11 years ago |
1 file, +2, -2 |
| a20d6dbe |
doc/mgmt-api: Rename parameter to UUID_Count for consistency |
Johan Hedberg |
11 years ago |
1 file, +3, -3 |
| bea842ee |
doc/mgmt-api: Remove non-existing Stop Service Discovery command
Since Stop Service Discovery is essentially the same as Stop Discover it
was decided to just reuse the latter for stopping this special type of
discovery. |
Johan Hedberg |
11 years ago |
1 file, +1, -26 |
| 418c865c |
android/client: Fix code style issue |
Szymon Janc |
11 years ago |
1 file, +2, -1 |
| 14750a2e |
audio/a2dp: Fix Access session device only when its valid
session will be NULL if A2DP connection fails because of NO REPLY
from endpoint or if the configuration is aborted. Accessing session
device in such a scenario leads to bluetoothd crash.
(gdb) bt full
0 avdtp_get_device (session=0x0) at profiles/audio/avdtp.c:3987
No locals.
1 0xb6f0e352 in auto_config (data=<value optimized out>)
at profiles/audio/a2dp.c:382
setup = 0xb7a4f230
dev = <value optimized out>
2 0xb6f132f6 in config_cb (endpoint=<value optimized out>,
ret=<value optimized out>, size=<value optimized out>,
user_data=<value optimized out>) at profiles/audio/media.c:534
data = <value optimized out>
3 0xb6f1398a in media_endpoint_cancel (endpoint=0xb7a43e78)
at profiles/audio/media.c:136
endpoint = 0xb7a43e78
4 media_endpoint_cancel_all (endpoint=0xb7a43e78)
at profiles/audio/media.c:144
No locals.
5 0xb6f13e04 in clear_endpoint (endpoint=0xb7a43e78)
at profiles/audio/media.c:245
No locals.
6 0xb6f13f68 in endpoint_reply (call=<value optimized out>,
user_data=0xb7a4e538) at profiles/audio/media.c:275
request = 0xb7a4e538
endpoint = 0xb7a43e78
reply = 0xb7a3f560
err = {name = 0xb7a5de70 "org.freedesktop.DBus.Error.NoReply" |
Sagar Nageshmurthy |
11 years ago |
1 file, +3, -1 |
| 0a1d0e89 |
obexd: Fix crash while session shutdown
g_str_equal has been used for the session path compare
which is not NULL-safe. Used the g_strcmp0() for the NULL-Safe
string comparision.
*#0 strcmp (p1=0x0, p2=0x7105c "/org/bluez/obex/client/session0")
* at strcmp.c:38
*#1 0xb6e0cd0a in g_str_equal (v1=<value optimized out>,
* v2=<value optimized out>) at ghash.c:1704
*#2 0x000264d8 in find_session (connection=<value optimized out>,
* message=0x55b38, user_data=<value optimized out>)
* at obexd/client/manager.c:162
*#3 remove_session (connection=<value optimized out>, message=0x55b38,
user_data=<value optimized out>) at obexd/client/manager.c:231 |
Rakesh M K |
11 years ago |
1 file, +1, -1 |
| 0e1473d1 |
android/client: Use proper format specifier for printing uint64_t
Fix following compiler warning:
android/client/if-bt.c: In function 'set_wake_alarm':
android/client/if-bt.c:369:5: warning: format '%lu' expects argument
of type 'long unsigned int', but argument 3 has type 'uint64_t'
[-Wformat=]
__func__, delay_millis, should_wake, cb, data);
^ |
Szymon Janc |
11 years ago |
1 file, +2, -1 |
| b5a5d2d8 |
android/client: Handle system callouts
According to comment in bluetooth HAL set_os_callouts should be called
immediately after a successful init. |
Szymon Janc |
11 years ago |
1 file, +42, -0 |
| e8907bcc |
core: Fix error not returned if service is not supported
Without this patch, error will not be returned if remote device does not
support the service and hence application will never get any response
for the connect request |
Jaganath Kanakkassery |
11 years ago |
1 file, +3, -0 |
| 54eea0c0 |
src/profile: Add HSP default record for external profiles |
Rakesh M K |
11 years ago |
1 file, +47, -0 |
| 090c21bc |
shared/io-glib: Fix not calling destroy callback
Destroy callback should be called also for G_IO_ERR | G_IO_NVAL
condition. |
Szymon Janc |
11 years ago |
1 file, +4, -2 |
| 23d0a252 |
hog: Fix unnecessary < 0 check of unsigned value |
Johan Hedberg |
11 years ago |
1 file, +1, -1 |
| 34f34e9e |
hog: implement set_report functionality
When UHID_SET_REPORT is received, hog has to send the given value
of the report to the device and send back the error code to the caller.
This function has to be synchronous, so the answer is sent in
set_report_cb().
(David: Track reports and cancel them on timeouts. Also fix some
"get"->"set" typos.) |
Benjamin Tissoires |
11 years ago |
1 file, +76, -0 |
| 9b582886 |
hog: implement get_report functionality
When UHID_GET_REPORT is received, hog has to update the current value
of the report and send it back to the caller.
This function should be synchronous, so the answer is sent in
get_report_cb().
(David: Track reports and cancel them on uhid timeouts. Otherwise, we'd
incorrectly match reponses. Also fix "feature"->"get" typos and
handle reports without IDs) |
Benjamin Tissoires |
11 years ago |
1 file, +86, -0 |
| fe3d9fd8 |
hog: break out the report retrieval in its own function
HoG currently only implements UHID_OUTPUT. We need to also implement
UHID_GET_REPORT and UHID_SET_REPORT. Break out the report retrieval
to use this function in the two missing implementation. |
Benjamin Tissoires |
11 years ago |
1 file, +25, -17 |
| 43c346bd |
hog: import latest uhid.h definition
Kernel 3.18 ships a new API for uhid devices. This API is retro-compatible
so we can keep the current symbols. |
Benjamin Tissoires |
11 years ago |
1 file, +105, -12 |
| fce2b49e |
tools/sdptool: Add support for MAP service
Add support for MAP service in local SDP server.
The MAP MAS record captured in local SDP server:
Service Name: OBEX Message Access Server
Service RecHandle: 0x1000e
Service Class ID List:
"Message Access - MAS" (0x1132)
Protocol Descriptor List:
"L2CAP" (0x0100)
"RFCOMM" (0x0003)
Channel: 17
"OBEX" (0x0008)
Profile Descriptor List:
"Message Access" (0x1134)
Version: 0x0100
Now we are able to do sdptool search/add/del/get
for MAP service. |
Gowtham Anandha Babu |
11 years ago |
1 file, +81, -0 |
| 037ea88d |
plugins/autopair: Provide descriptive error log
Add more description in error logging. |
Gowtham Anandha Babu |
11 years ago |
1 file, +2, -2 |
| c9748778 |
shared/gatt-client: Call ready_handler only in init
Currently disconnect_cb calls ready_handler to notify the upper layer
if a disconnect occurred during initialization. This patch fixes it so
that the handler is only called if in_init is set. |
Arman Uguray |
11 years ago |
1 file, +2, -1 |
| d8f6a237 |
shared/att: Call io_shutdown on ATT violations
The existing code handles ATT protocol request timeouts and invalid
incoming request PDUs by cleaning up the io structure via io_destroy.
This doesn't always work, since this only terminates the connection if
io_set_close_on_destroy has been set. Calling io_destroy to force a
disconnect also has the added side-effect of not invoking the disconnect
callback registered with struct io.
This patch fixes these by calling io_shutdown on the io instead when
required by ATT protocol specification. This both cleans up the
connection regardless of whether or not close_on_unref has been set, and
it triggers the disconnect callback via an EPOLLHUP event. |
Arman Uguray |
11 years ago |
1 file, +13, -8 |
| 58d6a048 |
android/pts: PTS tests for ScPP on Android 5.0 |
Ruslan Mstoi |
11 years ago |
1 file, +5, -5 |
| a336b948 |
android/hal-a2dp: Add missing a2dp handler introduced in Android 5
This is added just to be fair with the IPC mechanism and this callback
should never be called by A2DP Source. It is valid for Sink role only. |
Jakub Tyszkowski |
11 years ago |
1 file, +13, -0 |
| 98e9d1ca |
android/a2dp-sink: Add skeleton for a2dp sink daemon
This adds stubs for a2dp sink role in daemon. As Sink uses the same HAL
API, daemon can use the same structs and defines as Source does. |
Jakub Tyszkowski |
11 years ago |
4 files, +111, -0 |
| 52336869 |
android/hal: Add HAL for A2DP Sink role
This role was introduced with some devices in Android 5. The same set
of IPC structs and defines is used as in Sink as it uses the same HAL
API as Source does, but just yet another instance of HAL. |
Jakub Tyszkowski |
11 years ago |
6 files, +179, -2 |
| f18597ca |
android/hal-ipc-api: Extend a2dp hal API with A2DP Sink role
Android 5 adds audio configuration callback for the a2dp HAL. This
callback is used only by newly introduced a2dp sink role. A2dp Sink
uses the same HAL API as Source role does. Of course there is a
sepparate HAL instance for Sink and just the interface is common with
Source role. |
Jakub Tyszkowski |
11 years ago |
1 file, +11, -1 |
| f3522bc4 |
android/README: Update documentation with Android 5 info |
Szymon Janc |
11 years ago |
1 file, +49, -35 |
| 5be8e312 |
android/hal-gatt: Fix build error on Android KitKat |
Szymon Janc |
11 years ago |
1 file, +1, -1 |
| f288b34f |
android/tester: Update GATT server tests
Update transport type defines to Android 5. |
Szymon Janc |
11 years ago |
1 file, +4, -4 |
| c016f84f |
android/gatt: Fix transport mask for service start
With Android 5 transport enum was changed to bit mask. With this change
we use bit masks in daemon and for Kitkat we map enum to bit mask in
hal. |
Jakub Tyszkowski |
11 years ago |
3 files, +41, -14 |
| 3f63bdd1 |
unit/test-gatt: Add /TP/GAD/SR/BV-01-C test
Verify that a Generic Attribute Profile server can support a search for
all Primary Services it contains. |
Arman Uguray |
11 years ago |
1 file, +52, -0 |
| 8f1a3c9d |
unit/test-gatt: Add /TP/GAC/SR/BV-01-C test
Verify that a Generic Attribute Profile server can accept an Exchange
MTU Request and respond with an Exchange MTU response. |
Arman Uguray |
11 years ago |
1 file, +45, -1 |
| 3e6e5647 |
android/pts: PTS tests for AVDTP on Android 5.0 |
Sebastian Chlad |
11 years ago |
1 file, +2, -2 |
| 5aee9335 |
android/pts: Correct typo in AVDTP PICS file |
Sebastian Chlad |
11 years ago |
1 file, +1, -1 |
| c312a1a2 |
android/pts: PTS tests for HSP on Android 5.0 and PTS 5.3 |
Sebastian Chlad |
11 years ago |
1 file, +4, -4 |
| 083ca4ee |
android/client: Add get_connection_state command |
Marcin Kraglak |
11 years ago |
1 file, +15, -0 |
| a3baeb16 |
android/client: Print data from energy_info_cb |
Marcin Kraglak |
11 years ago |
1 file, +6, -1 |
| 5a4765e6 |
android/client: Add read_energy_info command |
Marcin Kraglak |
11 years ago |
1 file, +9, -0 |
| 963def30 |
android/hal-bluetooth: Implement read_energy_info |
Marcin Kraglak |
11 years ago |
3 files, +50, -2 |
| 64f08bc0 |
android/hal-bluetooth: Implement get_connection_state |
Marcin Kraglak |
11 years ago |
3 files, +50, -2 |
| e9b99f6a |
android/hidhost: Fix logical vs bitwise operation
"buf[0] & !1" is always 0, should be bitwise operation. |
Andrei Emeltchenko |
11 years ago |
1 file, +1, -1 |
| f1c52234 |
doc/test-coverage: Update test count |
Szymon Janc |
11 years ago |
1 file, +2, -2 |
| 7c5c5365 |
unit/test-hfp: Fix parsing empty string test
Empty string shall be ignored by AT parser and no response shall be
sent. Therefore this test should close HFP connection just after empty
string is sent, otherwise test hungs. |
Lukasz Rymanowski |
11 years ago |
1 file, +20, -1 |
| fca4a8c3 |
shared/hfp: Improve handling AT commands
This patch improves handling AT commands in cases:
1. In ring buffer we have currupted commands like Y\rAT+X\r
2. In ring buffer for some reason we have more than AT commands and all
commands are unknown except the last one.
In bith cases parser read data until first \r and then stop to read.
This is fixed with this patch |
Lukasz Rymanowski |
11 years ago |
1 file, +55, -36 |
| 50e1db3f |
shared/hfp: Remove not used assignment
There is no need to store how much data has been drain. It is not used. |
Lukasz Rymanowski |
11 years ago |
1 file, +1, -1 |
| f357911c |
shared/hfp: Refactor call_prefix_handler
With this patch call_prefix_handle gets new name handle_at_command and
returns true if correct at command has been handled or false when
provided data does not contain any AT command. |
Lukasz Rymanowski |
11 years ago |
1 file, +17, -11 |
| 8d4261c8 |
unit/test-hfp: Add test for reading \rAT+X\r |
Lukasz Rymanowski |
11 years ago |
1 file, +19, -1 |