• R/O
  • HTTP
  • SSH
  • HTTPS

提交

标签
No Tags

Frequently used words (click to add to your profile)

javac++androidlinuxc#windowsobjective-ccocoa誰得qtpythonphprubygameguibathyscaphec計画中(planning stage)翻訳omegatframeworktwitterdomtestvb.netdirectxゲームエンジンbtronarduinopreviewer

system/bt


Commit MetaInfo

修订版c9b410982c53a744596636bf72affb40185a35cb (tree)
时间2021-03-02 23:23:40
作者Chih-Wei Huang <cwhuang@linu...>
CommiterChih-Wei Huang

Log Message

Android 8.1.0 Release 81 (6780335)
-----BEGIN PGP SIGNATURE-----

iF0EABECAB0WIQRDQNE1cO+UXoOBCWTorT+BmrEOeAUCX3uqgQAKCRDorT+BmrEO
eAgWAJsEgQwQfqXSiJQ97yfqLg28AlAWngCeMszhF7t9+M6+t/A5JdPlEhow2qY=
=H8Ei
-----END PGP SIGNATURE-----

Merge tag 'android-8.1.0_r81' into oreo-x86

Android 8.1.0 Release 81 (6780335)

更改概述

差异

--- a/embdrv/sbc/decoder/srce/decoder-sbc.c
+++ b/embdrv/sbc/decoder/srce/decoder-sbc.c
@@ -311,7 +311,6 @@ OI_STATUS OI_CODEC_SBC_DecodeFrame(OI_CODEC_SBC_DECODER_CONTEXT* context,
311311 return OI_CODEC_SBC_CHECKSUM_MISMATCH;
312312 }
313313
314-#ifdef OI_DEBUG
315314 /*
316315 * Make sure the bitpool values are sane.
317316 */
@@ -328,7 +327,6 @@ OI_STATUS OI_CODEC_SBC_DecodeFrame(OI_CODEC_SBC_DECODER_CONTEXT* context,
328327 OI_SBC_MaxBitpool(&context->common.frameInfo)));
329328 return OI_STATUS_INVALID_PARAMETERS;
330329 }
331-#endif
332330
333331 /*
334332 * Now decode the SBC data. Partial decode is not yet implemented for an SBC
--- a/stack/btm/btm_sec.cc
+++ b/stack/btm/btm_sec.cc
@@ -51,6 +51,8 @@
5151 bool(APPL_AUTH_WRITE_EXCEPTION)(const RawAddress& bd_addr);
5252 #endif
5353
54+extern void bta_dm_process_remove_device(const RawAddress& bd_addr);
55+
5456 /*******************************************************************************
5557 * L O C A L F U N C T I O N P R O T O T Y P E S *
5658 ******************************************************************************/
@@ -3280,6 +3282,13 @@ void btm_io_capabilities_req(const RawAddress& p) {
32803282 BTM_TRACE_EVENT("%s: State: %s", __func__,
32813283 btm_pair_state_descr(btm_cb.pairing_state));
32823284
3285+ if (btm_sec_is_a_bonded_dev(p)) {
3286+ BTM_TRACE_WARNING(
3287+ "%s: Incoming bond request, but %s is already bonded (removing)",
3288+ __func__, p.ToString().c_str());
3289+ bta_dm_process_remove_device(p);
3290+ }
3291+
32833292 p_dev_rec = btm_find_or_alloc_dev(evt_data.bd_addr);
32843293
32853294 BTM_TRACE_DEBUG("%s:Security mode: %d, Num Read Remote Feat pages: %d",
--- a/stack/gatt/gatt_cl.cc
+++ b/stack/gatt/gatt_cl.cc
@@ -762,6 +762,12 @@ void gatt_process_read_by_type_rsp(tGATT_TCB& tcb, tGATT_CLCB* p_clcb,
762762 /* discover included service */
763763 else if (p_clcb->operation == GATTC_OPTYPE_DISCOVERY &&
764764 p_clcb->op_subtype == GATT_DISC_INC_SRVC) {
765+ if (value_len < 4) {
766+ android_errorWriteLog(0x534e4554, "158833854");
767+ LOG(ERROR) << __func__ << " Illegal Response length, must be at least 4.";
768+ gatt_end_operation(p_clcb, GATT_INVALID_PDU, NULL);
769+ return;
770+ }
765771 STREAM_TO_UINT16(record_value.incl_service.s_handle, p);
766772 STREAM_TO_UINT16(record_value.incl_service.e_handle, p);
767773
@@ -813,6 +819,12 @@ void gatt_process_read_by_type_rsp(tGATT_TCB& tcb, tGATT_CLCB* p_clcb,
813819 return;
814820 } else /* discover characterisitic */
815821 {
822+ if (value_len < 3) {
823+ android_errorWriteLog(0x534e4554, "158778659");
824+ LOG(ERROR) << __func__ << " Illegal Response length, must be at least 3.";
825+ gatt_end_operation(p_clcb, GATT_INVALID_PDU, NULL);
826+ return;
827+ }
816828 STREAM_TO_UINT8(record_value.dclr_value.char_prop, p);
817829 STREAM_TO_UINT16(record_value.dclr_value.val_handle, p);
818830 if (!GATT_HANDLE_IS_VALID(record_value.dclr_value.val_handle)) {