OSDN Git Service

android-x86/external-bluetooth-bluez.git
10 years agomonitor: Fix structures for LE long term key request commands
Marcel Holtmann [Tue, 13 Aug 2013 03:30:19 +0000 (20:30 -0700)]
monitor: Fix structures for LE long term key request commands

10 years agomonitor: Add definitions for LE test commands
Marcel Holtmann [Tue, 13 Aug 2013 03:26:47 +0000 (20:26 -0700)]
monitor: Add definitions for LE test commands

10 years agoclient/transfer: Add proper message to errors
Luiz Augusto von Dentz [Thu, 8 Aug 2013 13:41:14 +0000 (16:41 +0300)]
client/transfer: Add proper message to errors

This improve the error message when a transfer fails by using
g_obex_strerror to decode the response code to a human readable string.

10 years agogobex: Add proper message to transfer errors
Luiz Augusto von Dentz [Thu, 8 Aug 2013 13:08:16 +0000 (16:08 +0300)]
gobex: Add proper message to transfer errors

This improve the error message when a transfer fails by using
g_obex_strerror to decode the response code to a human readable string.

10 years agomonitor: Fix fields for LE Set Advertising Parameters command
Marcel Holtmann [Mon, 12 Aug 2013 04:29:08 +0000 (21:29 -0700)]
monitor: Fix fields for LE Set Advertising Parameters command

10 years agomonitor: Add support for LE Set Advertising Parameters command
Marcel Holtmann [Mon, 12 Aug 2013 04:28:03 +0000 (21:28 -0700)]
monitor: Add support for LE Set Advertising Parameters command

10 years agomonitor: Fix whitespace issue
Marcel Holtmann [Mon, 12 Aug 2013 04:09:52 +0000 (21:09 -0700)]
monitor: Fix whitespace issue

10 years agomonitor: Print proper LE address labels
Marcel Holtmann [Mon, 12 Aug 2013 04:07:53 +0000 (21:07 -0700)]
monitor: Print proper LE address labels

10 years agotools/scotest: Fix supporting hex voice setting values
Johan Hedberg [Thu, 8 Aug 2013 11:05:45 +0000 (14:05 +0300)]
tools/scotest: Fix supporting hex voice setting values

10 years agotools/scotest: Don't try BT_VOICE unless a non-zero voice setting was given
Johan Hedberg [Thu, 8 Aug 2013 11:00:46 +0000 (14:00 +0300)]
tools/scotest: Don't try BT_VOICE unless a non-zero voice setting was given

10 years agotools/btiotest: Fix applying voice setting for incoming connections
Johan Hedberg [Thu, 8 Aug 2013 09:48:37 +0000 (12:48 +0300)]
tools/btiotest: Fix applying voice setting for incoming connections

10 years agoRelease 5.8
Marcel Holtmann [Thu, 8 Aug 2013 05:32:56 +0000 (22:32 -0700)]
Release 5.8

10 years agobuild: Update library version
Marcel Holtmann [Wed, 7 Aug 2013 19:35:24 +0000 (12:35 -0700)]
build: Update library version

10 years agolib: Update company identifiers
Marcel Holtmann [Wed, 7 Aug 2013 19:21:46 +0000 (12:21 -0700)]
lib: Update company identifiers

10 years agotools: Fix path for bluetooth.org assigned numbers table
Marcel Holtmann [Wed, 7 Aug 2013 19:20:35 +0000 (12:20 -0700)]
tools: Fix path for bluetooth.org assigned numbers table

10 years agocore: Fix error message in profile ext_auth function
Frederic Danis [Thu, 1 Aug 2013 14:12:58 +0000 (16:12 +0200)]
core: Fix error message in profile ext_auth function

10 years agotools/btiotest: Print voice setting
Johan Hedberg [Thu, 1 Aug 2013 12:43:38 +0000 (15:43 +0300)]
tools/btiotest: Print voice setting

10 years agotools/sco-tester: Add more connection test cases
Frédéric Dalleau [Thu, 1 Aug 2013 09:54:18 +0000 (12:54 +0300)]
tools/sco-tester: Add more connection test cases

10 years agoshared/hciemu: Add hciemu_get_features API (needed for SCO tests)
Frédéric Dalleau [Thu, 1 Aug 2013 09:53:45 +0000 (12:53 +0300)]
shared/hciemu: Add hciemu_get_features API (needed for SCO tests)

10 years agoemulator: Add btdev_get_features API (needed for SCO tests)
Frédéric Dalleau [Thu, 1 Aug 2013 09:52:40 +0000 (12:52 +0300)]
emulator: Add btdev_get_features API (needed for SCO tests)

10 years agotools/sco-tester: Add new SCO test tool
Frédéric Dalleau [Thu, 1 Aug 2013 09:47:24 +0000 (12:47 +0300)]
tools/sco-tester: Add new SCO test tool

10 years agoemulator: Add SCO connection creation support
Frédéric Dalleau [Thu, 1 Aug 2013 09:46:49 +0000 (12:46 +0300)]
emulator: Add SCO connection creation support

10 years agoscotest: Add option for SCO voice setting
Frédéric Dalleau [Fri, 5 Jul 2013 15:46:45 +0000 (17:46 +0200)]
scotest: Add option for SCO voice setting

10 years agobtiotest: Add option for SCO voice setting
Frédéric Dalleau [Fri, 5 Jul 2013 15:46:44 +0000 (17:46 +0200)]
btiotest: Add option for SCO voice setting

10 years agobtio: Add option for SCO voice setting
Frédéric Dalleau [Fri, 5 Jul 2013 15:46:43 +0000 (17:46 +0200)]
btio: Add option for SCO voice setting

10 years agolib: SCO voice setting support header
Frédéric Dalleau [Wed, 26 Jun 2013 17:32:08 +0000 (19:32 +0200)]
lib: SCO voice setting support header

Modify headers to enable support for changing SCO voice setting.
Corresponding commit implements functionality on kernel side.

10 years agomonitor: Opencode strndupa in print_string
Szymon Janc [Wed, 31 Jul 2013 08:51:39 +0000 (10:51 +0200)]
monitor: Opencode strndupa in print_string

Strndupa is GNU extension. print_string is simple and opencoding
strndupa is not a big loss.

This fix linkage error with bionic library which doesn't provide
strndupa.

target Executable: btmon (out/target/product/grouper/obj/EXECUTABLES/
    btmon_intermediates/LINKED/btmon)
prebuilts/gcc/linux-x86/arm/arm-linux-androideabi-4.6/bin/../lib/gcc/
    arm-linux-androideabi/4.6.x-google/../../../../
    arm-linux-androideabi/bin/ld: out/target/product/grouper/obj/
    EXECUTABLES/btmon_intermediates/monitor/sdp.o: in function
    print_string:external/bluetooth/bluez/monitor/sdp.c:146: error:
    undefined reference to 'strndupa'
collect2: ld returned 1 exit status
make: *** [out/target/product/grouper/obj/EXECUTABLES/
    btmon_intermediates/LINKED/btmon] Error

10 years agoaudio/player: Fix overflowing position
Luiz Augusto von Dentz [Wed, 31 Jul 2013 11:27:52 +0000 (14:27 +0300)]
audio/player: Fix overflowing position

The position should stop at UINT32_MAX after that the progress can no
longer be calculated, this should also prevent the position to change
when the remote stack doesn't support it which is also indicated with
UINT32_MAX which apparently is the case of Spotify on Android 4.3:

[CHG] Player /org/bluez/hci0/dev_XX_XX_XX_XX_XX_XX/player0 Position: 0xffffffff
[CHG] Player /org/bluez/hci0/dev_XX_XX_XX_XX_XX_XX/player0 Status: playing
[CHG] Player /org/bluez/hci0/dev_XX_XX_XX_XX_XX_XX/player0 Position: 0x000000

10 years agoattrib: Add support for 128-bit characteristic UUIDs in gatt_service_add
Dirk-Jan C. Binnema [Mon, 29 Jul 2013 18:42:50 +0000 (11:42 -0700)]
attrib: Add support for 128-bit characteristic UUIDs in gatt_service_add

Custom GATT services typically use 128-bits UUIDs; this patch allows for
using gatt_service_add to define such services by adding a new option
GATT_OPT_CHR_UUID, which allows for passing bt_uuid_t* values. Note, a
previous patch renamed the old GATT_OPT_CHR_UUID into
GATT_OPT_CHR_UUID16.

10 years agoattrib: Rename GATT_OPT_CHR_UUID into GATT_OPT_CHR_UUID16
Dirk-Jan C. Binnema [Mon, 29 Jul 2013 18:42:49 +0000 (11:42 -0700)]
attrib: Rename GATT_OPT_CHR_UUID into GATT_OPT_CHR_UUID16

Rename the option for all in-tree users. This frees up GATT_OPT_CHR_UUID to be used
for UUIDs of type bt_uuid_t* (in a next patch).

10 years agoattrib: Update gatt_service_add size assert for dealing with 128-bit UUIDs
Dirk-Jan C. Binnema [Mon, 29 Jul 2013 18:42:48 +0000 (11:42 -0700)]
attrib: Update gatt_service_add size assert for dealing with 128-bit UUIDs

To paraphrase Anderson Lizardo: "h" was overflowing for 128-bit services
because the handle is incremented after each attribute is added so at
the end we had: 0xffff + 1 == 0 (h is uint16_t).

As it seems more complex to try to remove the overflow without affecting
the logic too much, we update the assertion.

10 years agoaudio/AVCTP: Do not process browsing queue until connection completes
Luiz Augusto von Dentz [Mon, 29 Jul 2013 14:04:39 +0000 (17:04 +0300)]
audio/AVCTP: Do not process browsing queue until connection completes

Any request processed before the connection completes will likely fail
in avctp_browsing_send so instead delay the processing.

10 years agoaudio/AVCTP: Fix connecting browsing channel multiple times
Luiz Augusto von Dentz [Mon, 29 Jul 2013 14:04:38 +0000 (17:04 +0300)]
audio/AVCTP: Fix connecting browsing channel multiple times

While accepting the connection via DEFER_SETUP a second connection can
be created by using avctp_connect_browsing which will not detect one is
in course as the state has not yet changed, this can cause memory leaks
or crashes as the following:

profiles/audio/avctp.c:avctp_confirm_cb() AVCTP: incoming connect from XX:XX:XX:XX:XX:XX
profiles/audio/avctp.c:avctp_set_state() AVCTP Browsing Connecting
profiles/audio/avctp.c:avctp_connect_browsing_cb() AVCTP Browsing: connected to XX:XX:XX:XX:XX:XX
profiles/audio/avctp.c:avctp_set_state() AVCTP Browsing Connected
profiles/audio/avctp.c:avctp_connect_browsing_cb() AVCTP Browsing: connected to XX:XX:XX:XX:XX:XX
profiles/audio/avctp.c:avctp_set_state() AVCTP Browsing Connected
profiles/audio/avctp.c:session_browsing_cb() AVCTP Browsing: disconnected
profiles/audio/avctp.c:avctp_set_state() AVCTP Connected
Invalid read of size 8
   at 0x41EB28: session_browsing_cb (avctp.c:842)
   by 0x32F5447E05: g_main_context_dispatch (in /usr/lib64/libglib-2.0.so.0.3600.3)
   by 0x32F5448157: ??? (in /usr/lib64/libglib-2.0.so.0.3600.3)
   by 0x32F5448559: g_main_loop_run (in /usr/lib64/libglib-2.0.so.0.3600.3)
   by 0x40A28F: main (main.c:583)
 Address 0x20 is not stack'd, malloc'd or (recently) free'd

10 years agoaudio/AVRCP: Connect browsing channel in case of GetCapabilities response
Luiz Augusto von Dentz [Mon, 29 Jul 2013 14:04:37 +0000 (17:04 +0300)]
audio/AVRCP: Connect browsing channel in case of GetCapabilities response

If the remote stack respond to GetCapabilities before connecting to
browsing channel connect it immediatelly as some events might depend on
it to work properly.

The spec actually recommends the browsing channel to be connected
immediatelly after the control channel:

AVRCP 1.5 - Page 23

"4.1.1 Connection establishment
...
If a browsing channel is supported by both devices it shall be
established after control channel establishment. It is recommended that
the browsing channel is established immediately after the control
channel is established and released immediately before the control
channel is released to avoid unsatisfactory latency when a browsing
command is sent."

10 years agoaudio/AVRCP: Connect browsing channel when accepting the connection
Luiz Augusto von Dentz [Mon, 29 Jul 2013 14:04:36 +0000 (17:04 +0300)]
audio/AVRCP: Connect browsing channel when accepting the connection

If remote stack for some reason don't connect the browsing channel
connect it after a timeout (1 sec.)

10 years agoaudio/AVRCP: Fix not setting browsing feature in CT record
Luiz Augusto von Dentz [Mon, 29 Jul 2013 14:04:35 +0000 (17:04 +0300)]
audio/AVRCP: Fix not setting browsing feature in CT record

The record already contain the additional protocol containing the
browsing channel but the feature is not set as it is supposed to.

10 years agoaudio/AVRCP: Fix not connecting Browsing channel when supported
Luiz Augusto von Dentz [Mon, 29 Jul 2013 14:04:34 +0000 (17:04 +0300)]
audio/AVRCP: Fix not connecting Browsing channel when supported

Both controller and target services can initiate the connection but
probably only one of the services will be in CONNECTING state which may
happen to not have browsing feature set.

Currently this happens when connecting BlueZ vs BlueZ where the CT record
does not have browsing feature set so if the corresponding service start
connecting it wont connect the browsing channel due to lack of feature.

10 years agoaudio/AVRCP: Fix memory leaks
Luiz Augusto von Dentz [Mon, 29 Jul 2013 14:04:33 +0000 (17:04 +0300)]
audio/AVRCP: Fix memory leaks

When the remote stack support both AVAILABLE_PLAYER_CHANGED and
ADDRESSED_PLAYER_CHANGED the player twice are inited twice leaking
the memory allocated in the first time:

16 bytes in 1 blocks are definitely lost in loss record 45 of 236
   at 0x4A06409: malloc (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so)
   by 0x32F544D89E: g_malloc (in /usr/lib64/libglib-2.0.so.0.3600.3)
   by 0x32F5464BF7: g_memdup (in /usr/lib64/libglib-2.0.so.0.3600.3)
   by 0x4247CC: avrcp_get_media_player_list_rsp (avrcp.c:2432)
   by 0x41ECAB: session_browsing_cb (avctp.c:826)
   by 0x32F5447E05: g_main_context_dispatch (in /usr/lib64/libglib-2.0.so.0.3600.3)
   by 0x32F5448157: ??? (in /usr/lib64/libglib-2.0.so.0.3600.3)
   by 0x32F5448559: g_main_loop_run (in /usr/lib64/libglib-2.0.so.0.3600.3)
   by 0x40A28F: main (main.c:583)

16 bytes in 1 blocks are definitely lost in loss record 46 of 236
   at 0x4A082F7: realloc (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so)
   by 0x32F544D946: g_realloc (in /usr/lib64/libglib-2.0.so.0.3600.3)
   by 0x32F5466D43: ??? (in /usr/lib64/libglib-2.0.so.0.3600.3)
   by 0x32F5467032: g_string_insert_len (in /usr/lib64/libglib-2.0.so.0.3600.3)
   by 0x32F5435287: ??? (in /usr/lib64/libglib-2.0.so.0.3600.3)
   by 0x421E62: avrcp_set_browsed_player_rsp (avrcp.c:2349)
   by 0x41ECAB: session_browsing_cb (avctp.c:826)
   by 0x32F5447E05: g_main_context_dispatch (in /usr/lib64/libglib-2.0.so.0.3600.3)
   by 0x32F5448157: ??? (in /usr/lib64/libglib-2.0.so.0.3600.3)
   by 0x32F5448559: g_main_loop_run (in /usr/lib64/libglib-2.0.so.0.3600.3)
   by 0x40A28F: main (main.c:583)

10 years agoscanparam: Remove unneeded header include
Claudio Takahasi [Mon, 29 Jul 2013 13:59:32 +0000 (09:59 -0400)]
scanparam: Remove unneeded header include

10 years agoscanparam: Apply convention for "GSource id" like variable
Anderson Lizardo [Mon, 29 Jul 2013 13:59:31 +0000 (09:59 -0400)]
scanparam: Apply convention for "GSource id" like variable

By convention, BlueZ code checks for "Gsource id" like variables using:

if (source_id > 0)
...

Also fix the variable type to match that returned by
g_attrib_unregister().

10 years agoscanparam: Fix missing check for valid GAttrib when removing device
Anderson Lizardo [Mon, 29 Jul 2013 13:59:30 +0000 (09:59 -0400)]
scanparam: Fix missing check for valid GAttrib when removing device

If device is removed while there is no connection, scan->attrib will be
NULL, because its reference is managed by attio connect/disconnect
callbacks. This means that on disconnect any resources owned by GAttrib
will be properly destroyed.

10 years agoscanparam: Remove unnecessary assignment
Anderson Lizardo [Mon, 29 Jul 2013 13:59:29 +0000 (09:59 -0400)]
scanparam: Remove unnecessary assignment

"scan" will be g_free()'d on this same function, so no need to assign 0
to refresh_cb_id.

10 years agoscanparam: Fix handle range check on descriptor discovery
Anderson Lizardo [Mon, 29 Jul 2013 13:59:28 +0000 (09:59 -0400)]
scanparam: Fix handle range check on descriptor discovery

When discovering descriptors, if there is only a single descriptor, the
start handle will be equal to the end handle. It is valid to issue the
Find Information Request on this case.

Before this fix, notification for Scan Refresh characteristic was never
enabled.

10 years agoaudio/player: Fix not setting playlist items as playable
Luiz Augusto von Dentz [Fri, 26 Jul 2013 13:24:00 +0000 (16:24 +0300)]
audio/player: Fix not setting playlist items as playable

All items in the playlist should have playable flag set otherwise they
cannot be part of the playlist.

10 years agotest: Fix ProximityMonitor1 interface name typo in test-proximity
Anderson Lizardo [Thu, 25 Jul 2013 19:23:43 +0000 (15:23 -0400)]
test: Fix ProximityMonitor1 interface name typo in test-proximity

10 years agodoc/media-api: Add Metadata property to MediaItem
Luiz Augusto von Dentz [Fri, 26 Jul 2013 08:19:44 +0000 (11:19 +0300)]
doc/media-api: Add Metadata property to MediaItem

The implementation uses a single property to expose the item metadata
not multiple for every single metadata entry.

10 years agobuild: Fix make distcheck
Anderson Lizardo [Thu, 25 Jul 2013 18:25:46 +0000 (14:25 -0400)]
build: Fix make distcheck

Fix this error:

make[1]: *** No rule to make target `profiles/audio/audio.conf', needed
by `distdir'.  Stop.
make: *** [test_build] Error 2

10 years agotools/mpris-player: Fix leaking memory when unregistering a player
Luiz Augusto von Dentz [Thu, 25 Jul 2013 13:05:28 +0000 (16:05 +0300)]
tools/mpris-player: Fix leaking memory when unregistering a player

Any memory allocated for user_data passed to
dbus_connection_register_object_path should be freed once unregistered.

10 years agotool/mpris-player: Fix not unregister players when adapter is removed
Luiz Augusto von Dentz [Thu, 25 Jul 2013 13:01:11 +0000 (16:01 +0300)]
tool/mpris-player: Fix not unregister players when adapter is removed

This prevent the players to be registered again when an adapter appeared
again.

10 years agoaudio: Remove audio.conf
Luiz Augusto von Dentz [Wed, 24 Jul 2013 11:56:24 +0000 (14:56 +0300)]
audio: Remove audio.conf

With the audio plugin split there is no longer a need to have a .conf
file and anyway any configuration should be put in main.conf under
plugin name group.

10 years agoaudio: Remove audio plugin
Luiz Augusto von Dentz [Wed, 24 Jul 2013 11:56:23 +0000 (14:56 +0300)]
audio: Remove audio plugin

Audio plugin is now splitted in multiple plugins so it is no longer
necessary to have a manager to deal with many different drivers.

10 years agoaudio: Move A2DP code to its own plugin
Luiz Augusto von Dentz [Wed, 24 Jul 2013 11:56:22 +0000 (14:56 +0300)]
audio: Move A2DP code to its own plugin

This moves A2DP related code to a2dp plugin and making it possible to
disable by passing -P a2dp and increasing the modularity of the code.

10 years agoaudio: Move AVRCP related code to its own plugin
Luiz Augusto von Dentz [Wed, 24 Jul 2013 11:56:21 +0000 (14:56 +0300)]
audio: Move AVRCP related code to its own plugin

This moves AVRCP related code to avrcp plugin and making it possible to
disable by passing -P avrcp and increasing the modularity of the code.

11 years agotools/mgmt-tester: Add stop discovery for BR/EDR only
Bruna Moreira [Sun, 21 Jul 2013 00:17:20 +0000 (20:17 -0400)]
tools/mgmt-tester: Add stop discovery for BR/EDR only

Send stop command during inquiry. Check if inquiry cancel is sent and
discovering event is disabled.

11 years agoemulator: Add new function for running all hooks
Bruna Moreira [Sun, 21 Jul 2013 00:17:19 +0000 (20:17 -0400)]
emulator: Add new function for running all hooks

It was defined four hook types and they are run before/after the first
part of default command processing and send event. Note that hook return
will define if the emulator will process/send next events (calling the
default_cmd_completion() function or not).

11 years agoemulator: cmd_status() using send_packet() for run hooks easily
Eder Ruiz Maria [Sun, 21 Jul 2013 00:17:18 +0000 (20:17 -0400)]
emulator: cmd_status() using send_packet() for run hooks easily

Now like cmd_command(), cmd_status() directly uses send_packet() instead
of send_event(), consequently cmd_status() must build the hci packet
without help of send_event(). With this change the events sent by
default_cmd() no more use send_event(), who is a good place to run hooks
for BTDEV_HOOK_POST_EVT. And the functions cmd_command() and
cmd_status() can run hooks for BTDEV_HOOK_POST_CMD.

11 years agoemulator: Split default_cmd() for better command and event handler
Eder Ruiz Maria [Sun, 21 Jul 2013 00:17:17 +0000 (20:17 -0400)]
emulator: Split default_cmd() for better command and event handler

Now except for command complete event and command status event, all
other are handled by default_cmd_completion(). With this we can easily
add hooks in some points.

11 years agoemulator: Add support for delete a hook
Eder Ruiz Maria [Sun, 21 Jul 2013 00:17:16 +0000 (20:17 -0400)]
emulator: Add support for delete a hook

11 years agoemulator: Export command and event hooks for hciemu user
Eder Ruiz Maria [Sun, 21 Jul 2013 00:17:15 +0000 (20:17 -0400)]
emulator: Export command and event hooks for hciemu user

11 years agoemulator: Add hook only if there aren't other with same type and opcode
Eder Ruiz Maria [Sun, 21 Jul 2013 00:17:14 +0000 (20:17 -0400)]
emulator: Add hook only if there aren't other with same type and opcode

11 years agoemulator: Add support for pre/post command/event hooks
Eder Ruiz Maria [Sun, 21 Jul 2013 00:17:13 +0000 (20:17 -0400)]
emulator: Add support for pre/post command/event hooks

Now who use emulator can add hooks to manipulate hci packets before
and after process commands and send events.

11 years agoattrib: Reduce scope of variable declarations in char_discovered_cb()
Anderson Lizardo [Fri, 19 Jul 2013 17:34:17 +0000 (13:34 -0400)]
attrib: Reduce scope of variable declarations in char_discovered_cb()

This makes it easy to identify where variables are being used.

11 years agoattrib: Allow dec_read_resp() to just check if PDU is valid
Anderson Lizardo [Fri, 19 Jul 2013 17:34:16 +0000 (13:34 -0400)]
attrib: Allow dec_read_resp() to just check if PDU is valid

If a NULL "value" parameter is given, only check whether PDU is valid,
without copying attribute value to a buffer.

11 years agoattrib: Add encode/decode execute write support
Alvaro Silva [Fri, 19 Jul 2013 17:34:15 +0000 (13:34 -0400)]
attrib: Add encode/decode execute write support

Add functions for encoding/decoding Execute Write Request PDUs.

11 years agoattrib: Add encode/decode prepare write support
Alvaro Silva [Fri, 19 Jul 2013 17:34:14 +0000 (13:34 -0400)]
attrib: Add encode/decode prepare write support

Add functions for encoding/decoding Prepare Write Request PDUs.

11 years agoattrib: Remove unused parameter from enc_write_resp()
Alvaro Silva [Fri, 19 Jul 2013 17:34:13 +0000 (13:34 -0400)]
attrib: Remove unused parameter from enc_write_resp()

11 years agoattrib: Fix coding style for various enc_*/dec_* functions
Eder Ruiz Maria [Fri, 19 Jul 2013 17:34:12 +0000 (13:34 -0400)]
attrib: Fix coding style for various enc_*/dec_* functions

Fix coding style for enc_read_blob(), enc_read_blob_resp(),
dec_read_resp(), enc_error_resp(), enc_find_info_req(),
enc_find_info_resp() and enc_prep_write().

11 years agoattrib: Simplify prepare_write()
Anderson Lizardo [Fri, 19 Jul 2013 17:34:11 +0000 (13:34 -0400)]
attrib: Simplify prepare_write()

All parameters can be retrieved from struct write_long_data fields,
therefore there is no need to pass them separately.

11 years agoattrib: Fix coding style in prepare_write_cb()
Anderson Lizardo [Fri, 19 Jul 2013 17:34:10 +0000 (13:34 -0400)]
attrib: Fix coding style in prepare_write_cb()

11 years agoattrib: Do not use Write Command in gatt_write_char()
Anderson Lizardo [Fri, 19 Jul 2013 17:34:09 +0000 (13:34 -0400)]
attrib: Do not use Write Command in gatt_write_char()

Previously, if no callback was given to gatt_write_char(), it was
assumed that a "Write Without Response" (which uses Write Command)
should be used instead of Write Request.

This "shortcut" is unnecessary (there is gatt_write_cmd() for the
situations where Write Without Response is required) and just duplicates
code.

This commit also fixes the few places where gatt_write_cmd() should be
used.

11 years agoattrib: Rename gatt_find_info() to gatt_discover_char_desc()
Anderson Lizardo [Fri, 19 Jul 2013 17:34:08 +0000 (13:34 -0400)]
attrib: Rename gatt_find_info() to gatt_discover_char_desc()

The old name referred to the underlying ATT PDU (Find Information
Request and Find Information Response) and not to the actual GATT
procedure (Discover All Characteristic Descriptors).

11 years agogatttool: Remove unused code
Eder Ruiz Maria [Fri, 19 Jul 2013 17:34:07 +0000 (13:34 -0400)]
gatttool: Remove unused code

Since commit 6a3a89774c6738df4d5b77636c4ce747b7497ae9 the code
removed here has no sense.

11 years agoaudio/player: Fix attempting to set the same setting value
Luiz Augusto von Dentz [Tue, 23 Jul 2013 12:52:32 +0000 (15:52 +0300)]
audio/player: Fix attempting to set the same setting value

This cause unnecessary commands to be sent over the air so instead the
code should just return success as nothing should be changed.

11 years agoaudio/media: Fix not updating position
Luiz Augusto von Dentz [Tue, 23 Jul 2013 12:52:31 +0000 (15:52 +0300)]
audio/media: Fix not updating position

The status may not be 'playing' as MPRIS documents it as 'Playing'
instead, to make this less prone to typos like this the code now
uses strcasecmp.

11 years agoaudio/AVRCP: Fix registration of VOLUME_CHANGED
Luiz Augusto von Dentz [Tue, 23 Jul 2013 12:52:30 +0000 (15:52 +0300)]
audio/AVRCP: Fix registration of VOLUME_CHANGED

First check with GetCapabilities if the event is really support before
registering.

11 years agoaudio/AVRCP: Rework role detection
Luiz Augusto von Dentz [Tue, 23 Jul 2013 12:52:29 +0000 (15:52 +0300)]
audio/AVRCP: Rework role detection

This makes AVRCP agnostic to any roles so the same session can be used
both for controller and target role.

11 years agocyclingspeed: Fix MultipleLocationsSupported property name usage
Anderson Lizardo [Tue, 23 Jul 2013 01:36:05 +0000 (21:36 -0400)]
cyclingspeed: Fix MultipleLocationsSupported property name usage

MultipleLocationsSupported is the correct property name, as implemented
in profiles/cyclingspeed/cyclingspeed.c.

11 years agomailmap: Add Martin due to one commit with incomplete name
Johan Hedberg [Sat, 20 Jul 2013 20:33:02 +0000 (23:33 +0300)]
mailmap: Add Martin due to one commit with incomplete name

11 years agoattrib: Fix interactive gatttool segfault
Sathish Narasimman [Fri, 19 Jul 2013 04:31:52 +0000 (10:01 +0530)]
attrib: Fix interactive gatttool segfault

Passing the special character single quote:

$gatttool -I
[   ][                 ][LE]> '
Segmentation fault (core dumped)

Checking g_shell_parse_argv fail status (return FALSE on failure), works
fine.

11 years agobuild: Build a simpler version of libgdbus-internal
Marcel Holtmann [Thu, 18 Jul 2013 14:37:19 +0000 (07:37 -0700)]
build: Build a simpler version of libgdbus-internal

11 years agobuild-sys: Don't build gdbus several times
Lucas De Marchi [Wed, 3 Jul 2013 12:29:20 +0000 (09:29 -0300)]
build-sys: Don't build gdbus several times

We are currently compiling gdbus 3 times: one for tests, one for
bluetoothd and another for obexd.

$ ls gdbus/*watch.o
gdbus/bluetoothd-watch.o  gdbus/obexd-watch.o  gdbus/watch.o

Instead of prepending $(gdbus_sources) to several _SOURCES variable, use
a convenience library.

11 years agobuild-sys: Rename lib suffix to -internal
Lucas De Marchi [Wed, 3 Jul 2013 12:29:19 +0000 (09:29 -0300)]
build-sys: Rename lib suffix to -internal

libbluetooth-private -> libbluetooth-internal

11 years agolib: Remove duplicated HSP_HS_UUID definition
Anderson Lizardo [Thu, 18 Jul 2013 02:20:09 +0000 (22:20 -0400)]
lib: Remove duplicated HSP_HS_UUID definition

There is an identical definition on the same header file (next to
HSP_AG_UUID).

11 years agotools/bluetooth-player: Make show-item command print Player property
Luiz Augusto von Dentz [Wed, 17 Jul 2013 11:27:53 +0000 (14:27 +0300)]
tools/bluetooth-player: Make show-item command print Player property

This makes show-item command to print Player property that indicates
which player the item belongs to.

11 years agodoc/media-api: Update documentation of MediaItem1
Luiz Augusto von Dentz [Wed, 17 Jul 2013 11:18:26 +0000 (14:18 +0300)]
doc/media-api: Update documentation of MediaItem1

This adds documentation of property Player

11 years agoaudio/player: Add Player property to MediaItem1
Luiz Augusto von Dentz [Wed, 17 Jul 2013 11:17:11 +0000 (14:17 +0300)]
audio/player: Add Player property to MediaItem1

This proper refer to the player object path which the item belongs to

11 years agodoc/media-api: Update documentation of MediaFolder1
Luiz Augusto von Dentz [Wed, 17 Jul 2013 10:51:36 +0000 (13:51 +0300)]
doc/media-api: Update documentation of MediaFolder1

This adds missing access types to properties NumberOfItems and Name

11 years agocore: Fix default authorize value for external profiles
Martin Xu [Wed, 17 Jul 2013 02:37:25 +0000 (10:37 +0800)]
core: Fix default authorize value for external profiles

Previously the value of "authorize" was essentially ignored in the
settings table. This wasn't very noticeable since almost all profiles
use the default true value. Since the default value of "authorize" is
true it cannot be left out from the default settings table entries
(leaving it out would set it implicitly to false).

11 years agodoc/media-api: Update documentation of MediaPlayer1
Luiz Augusto von Dentz [Tue, 16 Jul 2013 11:51:36 +0000 (14:51 +0300)]
doc/media-api: Update documentation of MediaPlayer1

This adds documentation of properties Type and Subtype

11 years agoinput: Add debug logs for attio connection status in HoG code
Johan Hedberg [Tue, 16 Jul 2013 10:59:17 +0000 (13:59 +0300)]
input: Add debug logs for attio connection status in HoG code

11 years agoinput: Fix minor coding style issue in HoG code
Johan Hedberg [Tue, 16 Jul 2013 10:58:37 +0000 (13:58 +0300)]
input: Fix minor coding style issue in HoG code

11 years agocore: Add debug log for attrib disconnection reason
Johan Hedberg [Tue, 16 Jul 2013 10:53:59 +0000 (13:53 +0300)]
core: Add debug log for attrib disconnection reason

11 years agocore: Remove unnecessary btd_device reference count in browse_req
Johan Hedberg [Mon, 15 Jul 2013 11:29:54 +0000 (14:29 +0300)]
core: Remove unnecessary btd_device reference count in browse_req

The browse request is "owned" by the btd_device structure so it doesn't
make sense to have browse_req keeping an extra reference for the
btd_device.

11 years agocore: Use proper header for S_IRUSR/S_IWUSR
Szymon Janc [Tue, 9 Jul 2013 07:40:00 +0000 (09:40 +0200)]
core: Use proper header for S_IRUSR/S_IWUSR

According to open() manual one should include <sys/stat.h>.
This fix build with bionic library:

target thumb C: libbluetoothd <= external/bluetooth/bluez/src/attrib-server.c
external/bluetooth/bluez/src/attrib-server.c: In function 'write_value':
external/bluetooth/bluez/src/attrib-server.c:922:26: error: 'S_IRUSR'
 undeclared (first use in this function)
external/bluetooth/bluez/src/attrib-server.c:922:26: note: each undeclared
identifier is reported only once for each function it appears in
external/bluetooth/bluez/src/attrib-server.c:922:36: error: 'S_IWUSR'
undeclared (first use in this function)

11 years agoplugins/policy: Limit the number of retries to sink profile
Luiz Augusto von Dentz [Thu, 11 Jul 2013 09:48:19 +0000 (12:48 +0300)]
plugins/policy: Limit the number of retries to sink profile

The policy should only retry a limit number of times.

11 years agoplugins/policy: Limit the number of retries to source profile
Luiz Augusto von Dentz [Thu, 11 Jul 2013 09:40:54 +0000 (12:40 +0300)]
plugins/policy: Limit the number of retries to source profile

The policy should only retry a limit number of times.

11 years agoaudio/control: Enable initiate connection to CT role
Luiz Augusto von Dentz [Tue, 9 Jul 2013 11:46:03 +0000 (14:46 +0300)]
audio/control: Enable initiate connection to CT role

Since the policy uses service API to initiate the connections this needs
to be enabled for both CT and TG roles.

11 years agoaudio/sink: Move stream retry logic to policy plugin
Luiz Augusto von Dentz [Fri, 5 Jul 2013 10:38:42 +0000 (13:38 +0300)]
audio/sink: Move stream retry logic to policy plugin

policy plugin is a better place to have such a logic as it is already
handling other connection policies related to such profiles.

11 years agoaudio/source: Move stream retry logic to policy plugin
Luiz Augusto von Dentz [Fri, 5 Jul 2013 10:29:28 +0000 (13:29 +0300)]
audio/source: Move stream retry logic to policy plugin

policy plugin is a better place to have such a logic as it is already
handling other connection policies related to such profiles.

11 years agoplugins/policy: Reword audio policy code in a simple plugin
Luiz Augusto von Dentz [Tue, 2 Jul 2013 15:31:59 +0000 (18:31 +0300)]
plugins/policy: Reword audio policy code in a simple plugin

This moves audio device policy to a plugin and removes any dependency of
audio plugin to it.