summaryrefslogtreecommitdiffstats
path: root/stack/avrc
Commit message (Collapse)AuthorAgeFilesLines
* Check data length when parsing AVRCP vendor specific command responsesPavlin Radoslavov2019-01-131-1/+34
| | | | | | | | Bug: 111450531 Bug: 111896861 Test: PoC test program Change-Id: I564bee8f05efabc29383659a75e695b4da76c6aa (cherry picked from commit 7439ea940354f65a147c4ecfce3bada49c688047)
* Check AVRCP data length when parsing inside avrc_ctrl_pars_vendor_rsp()Pavlin Radoslavov2019-01-131-4/+49
| | | | | | | | Bug: 111450417 Test: PoC test program Change-Id: Idd619e52dc7a2944d0d08af824505580e299c163 (cherry picked from commit 1c14e10cac53d5a5724dcf34c5679ad8819f9442) (cherry picked from commit f779ebe368d245c0d9ac954cf7b2b102e7da56be)
* Add missing AVRCP message length checks inside avrc_msg_cbackPavlin Radoslavov2018-11-181-6/+34
| | | | | | | | | | | | | Explicitly check the length of the received message before accessing the data. Bug: 111803925 Bug: 79883824 Test: POC scripts Change-Id: I00b1c6bd6dd7e18ac2c469ef2032c7ff10dcaecb Merged-In: I00b1c6bd6dd7e18ac2c469ef2032c7ff10dcaecb (cherry picked from commit 282deb3e27407aaa88b8ddbdbd7bb7d56ddc635f) (cherry picked from commit 007868d05f4b761842c7345161aeda6fd40dd245)
* Fix OOB read in avrc_ctrl_pars_vendor_rspHansong Zhang2018-11-181-0/+8
| | | | | | | Bug: 78526423 Test: manual Change-Id: I0eeacc6a25b12f4b999098375d0d032cfa462a91 (cherry picked from commit d945ada503ed9c9ea24e092df51faba57f5d589a)
* AVRCP: Check the number of text value attributes requestedAjay Panicker2018-04-061-0/+5
| | | | | | | Test: Builds Bug: 69479009 Change-Id: I184ddfdb56c15c2b07d52a2624240738efb4d207 (cherry picked from commit 6313da35abc93fcfb783c68f2e02427df9928ecf)
* AVRCP: Check the number of text attributes requestedAjay Panicker2018-03-301-0/+8
| | | | | | | | Test: Build Bug: 69478941 Change-Id: Ibc456511c8d7339213f08b07d70f5e25be140d68 (cherry picked from commit 249bb665b1020e81547246f5b29ed9040d696388) CVE-2017-13266
* Fix for issues reported by Static analysis tool.Sudharma Damgatla2015-10-061-6/+13
| | | | | | Fixed issues in reported by static analysis tool. Change-Id: Ia08641ee774b3da07445ef17269862f38d83606d
* Bluetooth: Send reject response.Gaurav Asati2015-10-061-10/+46
| | | | | | | | | - Send reject response when size of cmd packet is more then allowed max size. - Use new buffer if earlier allocated buffer is smaller then current buffer. Change-Id: Idf95910f17ce16b024748ef4f9aef40f75808765
* Bluetooth: Support for Avrcp 1.3 ControllerAnubhavGupta2015-10-067-23/+570
| | | | | | | | | | - support for SDP registration - support for sending vendor dependant commands - support for abs vol - support for receiving vendor dependant response - serialization of connection and rc_features callback Change-Id: I108b270b2f7a1c2a035ac2e4811639238455b367
* Bluetooth: Use correct Avdtp features.Gaurav Asati2015-10-061-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Use AVDT_GetAllCapReq request only when both remote and local Avdtp version are 1.3 and above. CRs-Fixed: 500730 Change-Id: I7145d8c26b5cc73c35e497c1b54d241e3f2317c8 Bluetooth: Clear Collision mask and send disconnect - clear collision mask during cleanup - send avdt disconnect in opening state. CRs-Fixed: 704728 Change-Id: I7438963694ac52dd995d1322823b791ef1cced44 Bluetooth: Set A2dp L2CAP TX Priority to HIGH Raise a2dp l2cap tx priority from medium to high to resolve audio glitchs during concurrency test. Change-Id: If30c6ba6cd1efc2816c686bdfd66814b8227c7a4 CRs-fixed: 733624 Bluetooth: Perform SDP for TG for SINK and CT role - In case we are A2DP Sink and AVRCP CT, we have to perform SDP for AVRCP_TG role. Change-Id: I9990f785920ad35da96a973139c336fe41e3f91e AVRC: Register for AVRC only connection once - Register for AVRC only connection once Change-Id: Ia85771a75d2b2e34aeb80c985a7eefd0300764c0 Bluetooth: Handle getCapability failure for Incoming Connection This change takes care of handling GetCapability failure event for Incoming Connection. DUT will initiate disconnect if GetCapability response is failed. CRs-fixed: 506864 Change-Id: Icc121739cc3da6f999a09f2e576cbfaec3007155 Bluetooth: update proper suspended state to BluetoothApk - update proper suspended state so as to avoid abandoning focus Change-Id: Ie0b8ffbd086bbce1080b7d7930062d09375b6e61 AVRCP: Delay after uinput open - uinput is not ready immediately after create. Because of this any command sent from remote immediately after connection will be ignored. Delay by 30 ms to give time for initialization. Change-Id: I97f1d960d4f5bc85b5e4ca7e58c728aeb187d01e Bluetooth: Synchronise A2dp HAL and Btif state. During Remote initiate start stream, A2dp HAL and Btif states are not in sync, Audio HAL in Suspend and Btif in Start state hence Audio HAL cannot send Suspend command. Change is made to synchronise A2DP HAL and Btif State by sending a CHECK_STREAM_Ready Command. CRs-Fixed: 549210 Change-Id: I5da46c433ec44b94afc4151facc0894fcb88759a Bluetooth: Handle Open after set_config - handle priority check from idle state - handle open after set_config# - changed queue size to 24 Change-Id: I0317dc5ff0e364d35723d74aa36a03ac42503e26 Bluetooth: Fix Crash due to random Connection While connecting randomly between paired headsets rc_handle was not initialised properly and this was causing crash while trying to retrieve peer device features. Change-Id: I4f93d541f616ca2c2bbb1e7871740264b20e3de4 CRs-Fixed: 465980 Add devices to Avrcp Absolute Volume Whitelist Add devices to absolute volume whitelist as these devices are tested to be functioning fine. Change-Id: I2a0c7ae8fd2ff83320327ee08d6d27025134520d
* AVRCP 1.5 Implementation.Ayan Ghosh2015-10-066-185/+723
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | AVRCP 1.5 Implementation Change-Id: Ia35dc4344b05584cf5ab3b463815c9e6297d24ab Proper check to ensure attributes are populated properly Incorporated proper check to ensure if memory is allocated properly then all requested attributes are populated in response from DUT. CRs-Fixed: 753309 Change-Id: Iead549635cd2059bc8cf33585a5d87ae023149d4 Reset Browsing Bit if carkit is blacklisted - Reset Browsing bit if carkit is blacklisted for avrcp 1.5. - Not to send 1.3+ specific supported events if carkit is blacklisted. CRs-Fixed: 762470 Change-Id: I32ac80c0549b2b89dd2522dbb0dea89d255d33dc Free Browse packet Free Borwse packet in AVRC layer once the same is copied to BTA for further processing. CRs-Fixed: 785286 Change-Id: I8037a649cff5a1e527c28ba36999a1bed34d315a BTIF-AV: Use valid memory for AVRCP message After the context switch to BTIF for META message processing the buffer allocated for tAVRC_MSG will be freed, hence allocate the required memory and free that after handling the META message. Conflicts: stack/avrc/avrc_api.c Crs-Fixed: 651506 Change-Id: Icbf61776a6fb63fac1555bf25d3700beccf2b67a
* BT: Audio: Enhance default stack logging for AUDIOrakesh reddy2015-10-062-4/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Make default logging for upstream events, statemachine state transitions, sco state transitions, call state transitions etc. Change-Id: Ia0dcb22e2efb99f186166ae4af2a8cb73f87616d Bluetooth: A2DP Sink Logging. - logs for state transition. - Latency logs with sequence Number. Change-Id: Iedabccd97d1118406f43b7ba494bdec5935b60b9 Print delay logs during A2dp streaming - Log systrace during A2dp streaming. This logging is not enabled by default.BT_AUDIO_SYSTRACE_LOG needs to be defined in applicable files to turn this logging on. - Properly name threads. - Log A2dp write delays. - Log pcm dump before writing to media socket to mediatask. This logging is not enabled by default. BT_AUDIO_SAMPLE_LOG needs to be dfined to enable this logging Change-Id: If081480b29f02126a1d48b9d0d9f855a3a605cc5 Enable required AVRCP Logging by default Enable required AVRCP Logging by default. Introduce additional logging whereever required. Change-Id: Ie2e88de06254257af3b77b4f8b06401273f29262 CRs-Fixed: 751733
* Allocate large enough buffers when copying AVRC packetsSatya Calloji2015-08-071-8/+14
| | | | | | | | | AVRC response is created by copying the original received packet. When allocating a buffer for the response, the buffer length should be large enough to contain the response. Bug: 22437809 Change-Id: I862d633e76d3c5221582459f19935a45e53577c7
* Add an explicit check for AVRCP vendor dataPavlin Radoslavov2015-08-042-2/+16
| | | | | | | | Add an explicit check for AVRCP vendor data when parsing received vendor commands or responses. Bug: 21768387 Change-Id: I715de6fc7348d063c448971a8dae6dd1b00c7062
* Promote AVCTP version to 1.4Anubhav Gupta2015-07-281-0/+16
| | | | | | | | | | | | | | Promoting AVCTP version to 1.4 from 1.2 as Bluedroid stack already has got support for the same. Below changes are incorporated as part of this: - AVCTP version in SDP entry is upgraded to 1.4 for both AVRCP Target and controller role. - Service class #1 is added in extra for AVRCP Controller SDP entry to be in sync with AVCTP version change. - Browsing support is not enabled as that needs corresponding profile level implementation, which is currently unavailable. Change-Id: I72f7f67eb0a789fd321e9468f2a51bb5e9385a89
* Fix a bug allocating buffers for fragmented AVRC packetsAnubhav Gupta2015-07-281-4/+9
| | | | | | | | | Use the correct offset_len when allocating buffers for AVRC packets that need to be fragmented. Bug: 22156175 Change-Id: I7db12474c84edacb4f0739d50a43e8cebdcca676
* Fix a bug when responding to AVRCP UNIT_INFO and SUBUNIT_INFOPavlin Radoslavov2015-07-101-3/+3
| | | | | | | | Assign appropriately the p_rsp_data pointer to point in the buffer with the response. Bug: 22307858 Change-Id: I2f77f290ff2c62c09b3be18ff047167a48c7c9d4
* Copy an AVRC packet before sending a response backPavlin Radoslavov2015-06-261-38/+60
| | | | | | | | | | | | | | Don't reuse AVRC buffers for responding back. Apparently, in the AVRC packets we transmit the offset with the payload must be at least 15 octets. If the original buffer is not large enough, this results in memory corruption. Also, use an explicit check for 'bt_rc_ctrl_callbacks' as a workaround until the upper layer does the right thing with the callbacks registration. Bug: 22006014 Change-Id: I28c248d1580bdddbda76298d19faadf8985187fc
* Fix issues in A2dp, Avrcp, HF and AG reported by static analysis toolMallikarjuna GB2015-06-041-1/+1
| | | | | | | - Fixes to validate Array Index Value and Null Pointer Dereference reported by static analysis tool. Change-Id: Id1492315f68378fdcfa517bd0a5cacefc8ebfddb
* Replace malloc/calloc/free with osi_malloc/osi_calloc/osi_freePavlin Radoslavov2015-06-031-8/+8
| | | | | | | | | | | | | | | | | | There were several leftover places that were still using malloc/calloc/free . Those are replaced to use osi_malloc/osi_calloc/osi_free like majority of the rest of the code. Note: There are few remaining places that are still using malloc/calloc/free: * Some of the unit tests * audio_a2dp_hw/audio_a2dp_hw.c It is used as part of the audio.a2dp.default.so library, and the bluetooth.default.so library Its usage of malloc/calloc/free should be refactored independently. Change-Id: Iafbed996e5f1ae8eb1343fb2acfadf32e515e419
* Merge commit 'f7f839985b3931682363d2ef3b7c5cae55a842ee' into mergeEtan Cohen2015-03-313-14/+11
|\ | | | | | | Change-Id: Iaaec1ea0bf3009b7e32a9a60f697631a3f56e889
| * Eliminate unusable wcassert code in favor of plain old C asssert.Sharvil Nanavati2015-03-162-11/+9
| | | | | | | | | | | | | | | | The WC_* macros only expand to something meaningful when _DEBUG is also defined. However, on enabling _DEBUG, bluedroid fails to build because the wc_assert function is not defined anywhere. We can get what I imagine is the equivalent behavior by switching over to the standard C assert macro.
| * Removing unnecessary BTAPI #defines.June R. Tate-Gans2015-03-161-3/+2
| |
* | Cleanups needed to make clang happyBernhard Rosenkränzer2014-12-051-8/+0
|/ | | | | | | | | This patch removes a slew of unused variables and some unused functions, fixes some incomplete initializations of structs and an sprintf parameter mismatching the format string. Change-Id: I35f22fdccc8350f885cd357d3685b869224fa433 Signed-off-by: Bernhard Rosenkränzer <Bernhard.Rosenkranzer@linaro.org>
* Logging cleanup: AVRC, MCA, GATT, and SMP.Sharvil Nanavati2014-06-197-73/+73
| | | | Change-Id: I6d1e61ff023b5fd19f144955cff16831cc18c6e6
* Eliminate warnings, add -Wall and -Werror to all projects.Sharvil Nanavati2014-04-181-1/+1
| | | | | | | | | | | | This change enables all warnings and treats warnings as errors. As a result, nobody should be able to submit new code to bluedroid that contains compiler warnings. Instead, they should fix the warnings before submitting. This change has already caught a type mismatch bug in stack/avrc/avrc_api.c where an integer was being stored in a boolean. Change-Id: Ic41960754b39a1a6aa37f1c1095003195f466183
* Remove executable bit on source files.Sharvil Nanavati2014-04-128-0/+0
| | | | Change-Id: Id456478aea626f57fed3479346e8fb4dbd0fafa6
* Major warnings cleanupMike J. Chen2014-02-112-3/+20
| | | | | | | | | | | | Mostly fixing unused parameter warnings. A few other warnings also fixed like possible use of unitialized variables (no real issue found, just compiler couldn't follow the path), signed vs unsigned warning. Also fixed some typos, indent issues, removal of dead code, etc. Change-Id: I95eb887aefc4d559d7921f71a0af5f3bfb01ac01 Signed-off-by: Mike J. Chen <mjchen@google.com>
* Fix warning "comparison is always true due to limited range of data type"Mike J. Chen2014-01-311-3/+2
| | | | | Change-Id: I4b195607d0cd8ee135b26065eed0eef5407061b6 Signed-off-by: Mike J. Chen <mjchen@google.com>
* change AVRCP profile version from 1.4 to 1.3 in SDP record.Zhihai Xu2013-09-131-4/+8
| | | | | bug:10728403 Change-Id: I741c8741173088bc91f43fbbcda8c0bd13a7d84d
* Add support for AbsoluteVolumeSatya Calloji2013-08-165-9/+510
| | | | | | | | | | Add support for AbsoluteVolume in BTIF bug 9595622 Change-Id: I11b707f6ab50d31bd11e879b0ebe5ad5bac54ad9 Conflicts: btif/src/btif_rc.c
* Initial version of Stack for AVRCP 1.3Ravi Nagarajan2013-03-207-5/+1968
| | | | | | BTIF and stack changes for supporting AVRCP 1.3 Change-Id: Id02eb7b6a385683cedc41c62b6f829f5d7620bd4
* Snapshot cdeccf6fdd8c2d494ea2867cb37a025bf8879bafThe Android Open Source Project2012-12-124-0/+1253
Change-Id: Ia2de32ccb97a9641462c72363b0a8c4288f4f36d