| 4f45ed81 |
audio/AVRCP: Add support for PlayItem command
This adds support for PlayItem command via player callback. |
Luiz Augusto von Dentz |
12 years ago |
2 files, +50, -0 |
| f1af5592 |
audio/player: Add implementation of MediaFolder.ChangeFolder |
Luiz Augusto von Dentz |
12 years ago |
3 files, +85, -12 |
| 6d0cd7d3 |
audio/AVRCP: Add support for ChangePath command
This adds support for ChangePath command via player callback. |
Luiz Augusto von Dentz |
12 years ago |
2 files, +73, -6 |
| 9f81f668 |
audio/player: Add support for MediaItem.Metadata property |
Luiz Augusto von Dentz |
12 years ago |
1 file, +41, -1 |
| ff065d5d |
audio/player: Add function media_item_set_playable |
Luiz Augusto von Dentz |
12 years ago |
3 files, +20, -1 |
| a40b1d1a |
audio/player: Add support for setting current Item object
This introduces media_player_set_playlist_item which is used when the
current item UID is known, with this the application can tell what
is the current item in the playlist. |
Luiz Augusto von Dentz |
12 years ago |
3 files, +40, -6 |
| b34ed942 |
audio/player: Add implementation of MediaFolder.ListItems |
Luiz Augusto von Dentz |
12 years ago |
3 files, +164, -3 |
| 06a4b8f5 |
audio/AVRCP: Add support for GetFolderItems command
This adds support for GetFolderItems command via player callback. |
Luiz Augusto von Dentz |
12 years ago |
2 files, +195, -4 |
| bcd72dea |
audio/AVRCP: Add browsed flag to player
This flag indicates if the player is browsed and are checked to avoid
setting the same player as browsed multiple times. |
Luiz Augusto von Dentz |
12 years ago |
1 file, +3, -1 |
| 846482e8 |
audio/player: Split item creation
This split item creation into two functions, media_player_create_folder
for folders and media_player_create_item for regular items. |
Luiz Augusto von Dentz |
12 years ago |
3 files, +250, -108 |
| 050a29b3 |
tools/mpris-player: Fix crash when forwarding player message
The iterator to which the message should be copied to should be the copy
message not the original message. |
Luiz Augusto von Dentz |
12 years ago |
1 file, +2, -2 |
| 14b00ae8 |
emulator: Fix Remote Name Request Cancel command complete
The Command Complete event for this HCI command contains two parameters,
status and bd_addr. |
Anderson Lizardo |
12 years ago |
2 files, +8, -2 |
| fc2911aa |
emulator: Fix uninitialised memory usage on inquiry
This happens when using "btvirt -l2" and running "discoverable on" on
hci1 and "scan on" on hci0 using bluetoothctl:
==1870== Syscall param write(buf) points to uninitialised byte(s)
==1870== at 0x4114443: __write_nocancel (syscall-template.S:82)
==1870== by 0x804B503: send_packet (btdev.c:478)
==1870== by 0x804B599: send_event (btdev.c:503)
==1870== by 0x804B8C0: inquiry_complete (btdev.c:589)
==1870== by 0x804C538: default_cmd (btdev.c:881)
==1870== by 0x804E5DE: process_cmd (btdev.c:1559)
==1870== by 0x804E646: btdev_receive_h4 (btdev.c:1577)
==1870== by 0x804A487: vhci_read_callback (vhci.c:82)
==1870== by 0x804923E: mainloop_run (mainloop.c:142)
==1870== by 0x8048FD4: main (main.c:145)
==1870== Address 0x41e4d0f is 15 bytes inside a block of size 258
alloc'd
==1870== at 0x402B56C: malloc (vg_replace_malloc.c:270)
==1870== by 0x804B531: send_event (btdev.c:490)
==1870== by 0x804B8C0: inquiry_complete (btdev.c:589)
==1870== by 0x804C538: default_cmd (btdev.c:881)
==1870== by 0x804E5DE: process_cmd (btdev.c:1559)
==1870== by 0x804E646: btdev_receive_h4 (btdev.c:1577)
==1870== by 0x804A487: vhci_read_callback (vhci.c:82)
==1870== by 0x804923E: mainloop_run (mainloop.c:142)
==1870== by 0x8048FD4: main (main.c:145)
==1870== |
Anderson Lizardo |
12 years ago |
1 file, +3, -0 |
| c79d2862 |
adapter: rename compare_discovery_sender
The new name "compare_sender" is more generic and will be used for more
than one purpose. |
Gustavo Padovan |
12 years ago |
1 file, +3, -3 |
| 6d2c670e |
adapter: rename discovery_client to watch_client
Rename to a more generic name since we will have different uses for this. |
Gustavo Padovan |
12 years ago |
1 file, +8, -8 |
| 0b928031 |
adapter: remove unused toggle_discoverable |
Gustavo Padovan |
12 years ago |
1 file, +0, -1 |
| 71d733b4 |
adapter: fix setting of discoverable timeout
The mgmt_cp_set_discoverable struct was getting reset for no reason after
we set up the discoverable timeout value. |
Gustavo Padovan |
12 years ago |
1 file, +0, -3 |
| 0585258e |
lib: Fix two size constants
Fixes the value of RESET_FAILED_CONTACT_COUNTER_RP_SIZE and
RESET_FAILED_CONTACT_COUNTER_RP_SIZE macros to respect the
associated struct. |
Alex Deymo |
12 years ago |
1 file, +2, -2 |
| c757d55c |
tools/mpris-player: Fix append_iter to copy all fields
This makes append_iter to work properly when copying another iter with
more than one field. |
Luiz Augusto von Dentz |
12 years ago |
1 file, +39, -34 |
| 83ecd743 |
core: Avoid unnecessary gboolean on pincode callback API
Use standard "bool" type instead. Callers in plugins/* are fixed on the
same commit to avoid compilation errors. |
Anderson Lizardo |
12 years ago |
4 files, +9, -9 |
| 0743aa5a |
plugins: Use open()/read() instead of fopen()/fread() on autopair
open()/read() is more common on BlueZ code. Incidentally, get rid of
this compilation error (using gcc 4.6.3):
plugins/autopair.c: In function ‘autopair_init’:
plugins/autopair.c:154:8: error: ignoring return value of ‘fread’,
declared with attribute warn_unused_result [-Werror=unused-result] |
Anderson Lizardo |
12 years ago |
1 file, +15, -7 |
| cf00b35d |
tools/hcidump: Fix parsing of Search PDU |
Luiz Augusto von Dentz |
12 years ago |
1 file, +6, -5 |
| bb8f7335 |
rfcomm: Remove bogus manual entry
This was introduced in commit b1b5f09d40 "Include security parameters"
back in 2007. Those options are already descibed few lines below. |
Szymon Janc |
12 years ago |
1 file, +3, -14 |
| a3cb0775 |
tools: Update rfcomm help
This includes:
remove describtion of non-existing option '-f'
add missing description of '-L' option
add missing long version of '-i' option |
Szymon Janc |
12 years ago |
1 file, +9, -9 |
| c8e79a7a |
build: Fix generating bluetoothd manpage
CONFIGDIR was not properly substituted in bluetoothd.8 manpage. |
Szymon Janc |
12 years ago |
1 file, +1, -0 |
| 640d2515 |
man: Update bluetoothd manual
This puts manual up-to-date with bluetoothd options. |
Szymon Janc |
12 years ago |
1 file, +34, -11 |
| bc49a387 |
core: Only page device once per connect attempt
In case of EHOSTDOWN/page timeout the code should not proceed with the
next profile as it is very likely it will fail again, moreover the page
timeout is configurable and should be enough for getting a response from
the remote device in a reasonable time. |
Luiz Augusto von Dentz |
12 years ago |
1 file, +4, -0 |
| dcd5640e |
emulator: Fix typo in supported command comment |
Johan Hedberg |
12 years ago |
1 file, +1, -1 |
| 96ef1671 |
tools/bluetooth-player: Fix crash when using search command
Invalid read of size 8
at 0x3F34619C4A: dbus_message_iter_append_basic (in /usr/lib64/libdbus-1.so.3.7.2)
by 0x40B764: search_setup (bluetooth-player.c:893)
by 0x4094FC: g_dbus_proxy_method_call (client.c:742)
by 0x40C2A4: cmd_search (bluetooth-player.c:941)
by 0x40B307: rl_handler (bluetooth-player.c:1099)
by 0x3733E2AFDA: rl_callback_read_char (in /usr/lib64/libreadline.so.6.2)
by 0x40BC0D: input_handler (bluetooth-player.c:1216)
by 0x3F31A47A54: g_main_context_dispatch (in /usr/lib64/libglib-2.0.so.0.3400.2)
by 0x3F31A47D87: ??? (in /usr/lib64/libglib-2.0.so.0.3400.2)
by 0x3F31A48181: g_main_loop_run (in /usr/lib64/libglib-2.0.so.0.3400.2)
by 0x40445F: main (bluetooth-player.c:1434)
Address 0x4d4beb0 is 0 bytes inside a block of size 4 alloc'd
at 0x4A0887C: malloc (vg_replace_malloc.c:270)
by 0x3F31A4D68E: g_malloc (in /usr/lib64/libglib-2.0.so.0.3400.2)
by 0x3F31A63F0B: g_strdup (in /usr/lib64/libglib-2.0.so.0.3400.2)
by 0x40C281: cmd_search (bluetooth-player.c:939)
by 0x40B307: rl_handler (bluetooth-player.c:1099)
by 0x3733E2AFDA: rl_callback_read_char (in /usr/lib64/libreadline.so.6.2)
by 0x40BC0D: input_handler (bluetooth-player.c:1216)
by 0x3F31A47A54: g_main_context_dispatch (in /usr/lib64/libglib-2.0.so.0.3400.2)
by 0x3F31A47D87: ??? (in /usr/lib64/libglib-2.0.so.0.3400.2)
by 0x3F31A48181: g_main_loop_run (in /usr/lib64/libglib-2.0.so.0.3400.2)
by 0x40445F: main (bluetooth-player.c:1434) |
Luiz Augusto von Dentz |
12 years ago |
1 file, +1, -1 |
| f9423201 |
audio: Fix memory leak while creating SDP records
Fix these leaks:
==674== 8 bytes in 1 blocks are definitely lost in loss record 45 of 201
==674== at 0x402BE68: malloc (in
/usr/lib/valgrind/vgpreload_memcheck-x86-linux.so)
==674== by 0x80DF653: sdp_list_append (sdp.c:1742)
==674== by 0x8063974: avrcp_ct_record (avrcp.c:297)
==674== by 0x8068A6D: avrcp_remote_register (avrcp.c:3149)
==674== by 0x805F31C: avrcp_remote_server_probe (manager.c:320)
==674== by 0x80BCB4E: probe_profile (adapter.c:2629)
==674== by 0x80C5880: btd_profile_foreach (profile.c:639)
==674== by 0x80C3FD4: adapter_register (adapter.c:5619)
==674== by 0x80C4A01: read_info_complete (adapter.c:5894)
==674== by 0x80D489A: request_complete (mgmt.c:221)
==674== by 0x80D4BA8: received_data (mgmt.c:319)
==674== by 0x40BF17D: ??? (in
/lib/i386-linux-gnu/libglib-2.0.so.0.3200.3)
==674==
==674== 32 bytes in 1 blocks are definitely lost in loss record 127 of
201
==674== at 0x402BE68: malloc (in
/usr/lib/valgrind/vgpreload_memcheck-x86-linux.so)
==674== by 0x80DCE49: sdp_data_alloc_with_length (sdp.c:360)
==674== by 0x80DD33F: sdp_data_alloc (sdp.c:497)
==674== by 0x806379D: avrcp_ct_record (avrcp.c:272)
==674== by 0x8068A6D: avrcp_remote_register (avrcp.c:3149)
==674== by 0x805F31C: avrcp_remote_server_probe (manager.c:320)
==674== by 0x80BCB4E: probe_profile (adapter.c:2629)
==674== by 0x80C5880: btd_profile_foreach (profile.c:639)
==674== by 0x80C3FD4: adapter_register (adapter.c:5619)
==674== by 0x80C4A01: read_info_complete (adapter.c:5894)
==674== by 0x80D489A: request_complete (mgmt.c:221)
==674== by 0x80D4BA8: received_data (mgmt.c:319) |
Anderson Lizardo |
12 years ago |
1 file, +8, -6 |
| 9ee1038c |
obexd: Fix not checking for valid fd on NewConnection
The fd needs to be checked as it may not be valid which cause the
following warnings:
==8162== Warning: invalid file descriptor 1031 in syscall fcntl(DUPFD_CLOEXEC)()
(obexd:8162): GLib-WARNING **: giounix.c:412Error while getting flags for FD: Bad file descriptor (9) |
Luiz Augusto von Dentz |
12 years ago |
1 file, +13, -0 |
| 00622544 |
obexd: Fix crash when resetting OPP session without a transfer
Invalid read of size 8
at 0x42A570: manager_emit_transfer_completed (manager.c:863)
by 0x42A76A: os_reset_session (obex.c:206)
by 0x42A8BB: disconn_func (obex.c:1085)
by 0x419C55: incoming_data (gobex.c:1224)
by 0x3F31A47A54: g_main_context_dispatch (in /usr/lib64/libglib-2.0.so.0.3400.2)
by 0x3F31A47D87: ??? (in /usr/lib64/libglib-2.0.so.0.3400.2)
by 0x3F31A48181: g_main_loop_run (in /usr/lib64/libglib-2.0.so.0.3400.2)
by 0x40DDB2: main (main.c:319)
Address 0x10 is not stack'd, malloc'd or (recently) free'd
Invalid read of size 1
at 0x42A231: manager_unregister_transfer (manager.c:672)
by 0x420F8B: opp_disconnect (opp.c:158)
by 0x42A8EC: disconn_func (obex.c:1088)
by 0x419C55: incoming_data (gobex.c:1224)
by 0x3F31A47A54: g_main_context_dispatch (in /usr/lib64/libglib-2.0.so.0.3400.2)
by 0x3F31A47D87: ??? (in /usr/lib64/libglib-2.0.so.0.3400.2)
by 0x3F31A48181: g_main_loop_run (in /usr/lib64/libglib-2.0.so.0.3400.2)
by 0x40DDB2: main (main.c:319)
Address 0x0 is not stack'd, malloc'd or (recently) free'd |
Luiz Augusto von Dentz |
12 years ago |
1 file, +17, -3 |
| f2b4bf71 |
AVRCP: Fix sending SetPlayerApplicationSettingValue using notify command type
The command type for SetPlayerApplicationSettingValue is control |
Luiz Augusto von Dentz |
12 years ago |
1 file, +1, -1 |
| 90766eea |
AVRCP: Allways fallback to GetElementAttributes if GetItemAttributes fails
Although GetItemAttributes is mandatory when browsing is supported this
depend on the actual browsed player which may still not support it. |
Luiz Augusto von Dentz |
12 years ago |
1 file, +1, -2 |
| 52ca0cb3 |
AVRCP: Fix sending invalid attributes when responding to GetElementAttributes
The list returned by media.c contains the attributes in string format not
the binary format which cause us to send wrong/reserved attributes as can
be observed bellow:
> ACL data: handle 12 flags 0x02 dlen 58
L2CAP(d): cid 0x0041 len 54 [psm 23]
AVCTP Control: Response : pt 0x00 transaction 14 pid 0x110e
AV/C: Stable: address 0x48 opcode 0x00
Subunit: Panel
Opcode: Vendor Dependent
Company ID: 0x001958
AVRCP: GetElementAttributes: pt Single len 0x0029
AttributeCount: 0x05
Attribute: 0x00df9490 (Reserved)
CharsetID: 0x006a (UTF-8)
AttributeValueLength: 0x0000
AttributeValue:
Attribute: 0x00e0e880 (Reserved)
CharsetID: 0x006a (UTF-8)
AttributeValueLength: 0x0000
AttributeValue:
Attribute: 0x00e07b00 (Reserved)
CharsetID: 0x006a (UTF-8)
AttributeValueLength: 0x0000
AttributeValue:
Attribute: 0x00e16bc0 (Reserved)
CharsetID: 0x006a (UTF-8)
AttributeValueLength: 0x0000
AttributeValue:
Attribute: 0x00e07bc0 (Reserved)
CharsetID: 0x006a (UTF-8)
AttributeValueLength: 0x0000
AttributeValue: |
Luiz Augusto von Dentz |
12 years ago |
1 file, +33, -3 |
| 09dda27b |
core: Fix not been able to cancel Device.Connect with Device.Disconnect
Device.Disconnect should be able to interrupt the connection attempt
started by Device.Connect. |
Luiz Augusto von Dentz |
12 years ago |
2 files, +17, -6 |
| 42154de5 |
AVRCP: Fix crash while setting player volume
Invalid read of size 8
at 0x41A4EA: avrcp_handle_set_volume (avrcp.c:3619)
by 0x418598: session_cb (avctp.c:790)
by 0x3F31A47A54: g_main_context_dispatch (in /usr/lib64/libglib-2.0.so.0.3400.2)
by 0x3F31A47D87: ??? (in /usr/lib64/libglib-2.0.so.0.3400.2)
by 0x3F31A48181: g_main_loop_run (in /usr/lib64/libglib-2.0.so.0.3400.2)
by 0x40A335: main (main.c:595)
Address 0x48 is not stack'd, malloc'd or (recently) free'd |
Luiz Augusto von Dentz |
12 years ago |
1 file, +2, -1 |
| 20721796 |
AVRCP: Fix crash when connecting role without a record
Invalid read of size 4
at 0x469310: btd_service_connecting_complete (service.c:315)
by 0x41B29F: session_ct_init_control (avrcp.c:3208)
by 0x41AD70: state_changed (avrcp.c:3356)
by 0x417B84: avctp_set_state (avctp.c:550)
by 0x419E04: avctp_connect_cb (avctp.c:1222)
by 0x450869: accept_cb (btio.c:202)
by 0x3F31A47A54: g_main_context_dispatch (in /usr/lib64/libglib-2.0.so.0.3400.2)
by 0x3F31A47D87: ??? (in /usr/lib64/libglib-2.0.so.0.3400.2)
by 0x3F31A48181: g_main_loop_run (in /usr/lib64/libglib-2.0.so.0.3400.2)
by 0x40A335: main (main.c:595)
Address 0x20 is not stack'd, malloc'd or (recently) free'd |
Luiz Augusto von Dentz |
12 years ago |
1 file, +5, -0 |
| 8321ce7e |
AVRCP: Fix setting reserved bit in GetCapabilities response
EventID 0x00 is reserved:
< ACL data: handle 12 flags 0x00 dlen 25
L2CAP(d): cid 0x0541 len 21 [psm 23]
AVCTP Control: Response : pt 0x00 transaction 2 pid 0x110e
AV/C: Stable: address 0x48 opcode 0x00
Subunit: Panel
Opcode: Vendor Dependent
Company ID: 0x001958
AVRCP: GetCapabilities: pt Single len 0x0008
CapabilityID: 0x03 (EventsID)
CapabilityCount: 0x06
EventsID: 0x00 (Reserved)
EventsID: 0x01 (EVENT_PLAYBACK_STATUS_CHANGED)
EventsID: 0x02 (EVENT_TRACK_CHANGED)
EventsID: 0x03 (EVENT_TRACK_REACHED_END)
EventsID: 0x04 (EVENT_TRACK_REACHED_START)
EventsID: 0x08 (EVENT_PLAYER_APPLICATION_SETTING_CHANGED) |
Luiz Augusto von Dentz |
12 years ago |
1 file, +1, -1 |
| 49cf7c2f |
AVRCP: Fix crash if player status is NULL
Assume status is 'stopped' in case the status is NULL. |
Luiz Augusto von Dentz |
12 years ago |
1 file, +2, -0 |
| cac6a580 |
AVRCP: Fix crash when current addressed player is removed
In some stacks e.g. iOS the addressed player is removed before a new
player is set which leaves the session poiting to invalid player. |
Luiz Augusto von Dentz |
12 years ago |
1 file, +24, -4 |
| d977f179 |
AVRCP: Add additional protocol discriptor list for Browsing channel
This is documented in the spec and is checked by PTS when testing the
browsing channel. |
Luiz Augusto von Dentz |
12 years ago |
1 file, +21, -3 |
| 6656992c |
AVRCP: Fix crash while listing available settings in TG role
Invalid read of size 1
at 0x41AFD0: attrval_to_val (avrcp.c:492)
by 0x41B0E1: avrcp_handle_list_player_attributes (avrcp.c:931)
by 0x41D606: handle_vendordep_pdu (avrcp.c:1620)
by 0x4185F8: session_cb (avctp.c:985)
by 0x3F31A47A54: g_main_context_dispatch (in /usr/lib64/libglib-2.0.so.0.3400.2)
by 0x3F31A47D87: ??? (in /usr/lib64/libglib-2.0.so.0.3400.2)
by 0x3F31A48181: g_main_loop_run (in /usr/lib64/libglib-2.0.so.0.3400.2)
by 0x40A2E5: main (main.c:595)
Address 0x0 is not stack'd, malloc'd or (recently) free'd |
Luiz Augusto von Dentz |
12 years ago |
1 file, +2, -0 |
| 45204929 |
AVCTP: Call callback in case the request timeout
If the request timeout deliver a empty PDU to the callback so it
can take proper action. |
Luiz Augusto von Dentz |
12 years ago |
2 files, +40, -6 |
| adb4d533 |
AVCTP: Fix coding style
Fix unnecessary extra tabs |
Luiz Augusto von Dentz |
12 years ago |
1 file, +2, -3 |
| 4ae6135d |
AVRCP: Fix crash when registering unsupported notification
Reject command if notification is not supported otherwise this can
cause crashes. |
Luiz Augusto von Dentz |
12 years ago |
1 file, +4, -0 |
| 29952ebb |
tools/bluetooth-player: Add show-item command
Add support for show-item command which can be used to print item
information. |
Luiz Augusto von Dentz |
12 years ago |
1 file, +25, -0 |
| d7adaaf8 |
tools/bluetooth-player: Add search command
Add support for search command which can be used to search a for items
containing a given string. |
Luiz Augusto von Dentz |
12 years ago |
1 file, +65, -0 |
| d8763661 |
tools/bluetooth-player: Add scan command
Add support for scan command which can be used to set scan mode. |
Luiz Augusto von Dentz |
12 years ago |
1 file, +34, -0 |
| ad3acd58 |
tools/bluetooth-player: Add shuffle command
Add support for shuffle command which can be used to set shuffle mode. |
Luiz Augusto von Dentz |
12 years ago |
1 file, +34, -0 |