Loading system/main/shim/l2cap.cc +29 −10 Original line number Diff line number Diff line Loading @@ -267,8 +267,11 @@ void bluetooth::shim::legacy::L2cap::OnLocalInitiatedConnectionCreated( LOG_WARN("Failed intitiating connection remote:%s psm:%hd cid:%hd", string_address.c_str(), psm, cid); } Classic().Callbacks(psm)->pL2CA_ConnectCfm_Cb( cid, connected ? (kConnectionSuccess) : (kConnectionFail)); do_in_main_thread( FROM_HERE, base::Bind(classic_.Callbacks(psm)->pL2CA_ConnectCfm_Cb, cid, connected ? (kConnectionSuccess) : (kConnectionFail))); } else { LOG_DEBUG("Connection Closed before presentation to upper layer"); if (connected) { Loading @@ -295,8 +298,10 @@ void bluetooth::shim::legacy::L2cap::OnRemoteInitiatedConnectionCreated( cid_to_psm_map_[cid] = psm; cid_to_remote_cid_map_[cid] = remote_cid; SetDownstreamCallbacks(cid); Classic().Callbacks(psm)->pL2CA_ConnectInd_Cb(raw_address, cid, psm, kUnusedId); do_in_main_thread( FROM_HERE, base::Bind(classic_.Callbacks(CidToPsm(cid))->pL2CA_ConnectInd_Cb, raw_address, cid, psm, kUnusedId)); } bool bluetooth::shim::legacy::L2cap::Write(uint16_t cid, BT_HDR* bt_hdr) { Loading Loading @@ -334,11 +339,18 @@ void bluetooth::shim::legacy::L2cap::SetDownstreamCallbacks(uint16_t cid) { } if (cid_closing_set_.count(cid) == 1) { cid_closing_set_.erase(cid); classic_.Callbacks(CidToPsm(cid)) ->pL2CA_DisconnectCfm_Cb(cid, kUnusedResult); do_in_main_thread( FROM_HERE, base::Bind( classic_.Callbacks(CidToPsm(cid))->pL2CA_DisconnectCfm_Cb, cid, kUnusedResult)); } else { classic_.Callbacks(CidToPsm(cid)) ->pL2CA_DisconnectInd_Cb(cid, kDisconnectResponseRequired); do_in_main_thread( FROM_HERE, base::Bind( classic_.Callbacks(CidToPsm(cid))->pL2CA_DisconnectInd_Cb, cid, kDisconnectResponseRequired)); } cid_to_psm_map_.erase(cid); cid_to_remote_cid_map_.erase(cid); Loading Loading @@ -373,8 +385,15 @@ bool bluetooth::shim::legacy::L2cap::ConfigRequest( .ext_flow_spec_present = false, .flags = 0, }; classic_.Callbacks(CidToPsm(cid))->pL2CA_ConfigCfm_Cb(cid, &cfg_info); classic_.Callbacks(CidToPsm(cid))->pL2CA_ConfigInd_Cb(cid, &cfg_info); LOG(INFO) << __func__ << "Rcvd config request"; do_in_main_thread( FROM_HERE, base::Bind(classic_.Callbacks(CidToPsm(cid))->pL2CA_ConfigInd_Cb, cid, base::Unretained(&cfg_info))); do_in_main_thread( FROM_HERE, base::Bind(classic_.Callbacks(CidToPsm(cid))->pL2CA_ConfigCfm_Cb, cid, base::Unretained(&cfg_info))); }); return true; } Loading Loading
system/main/shim/l2cap.cc +29 −10 Original line number Diff line number Diff line Loading @@ -267,8 +267,11 @@ void bluetooth::shim::legacy::L2cap::OnLocalInitiatedConnectionCreated( LOG_WARN("Failed intitiating connection remote:%s psm:%hd cid:%hd", string_address.c_str(), psm, cid); } Classic().Callbacks(psm)->pL2CA_ConnectCfm_Cb( cid, connected ? (kConnectionSuccess) : (kConnectionFail)); do_in_main_thread( FROM_HERE, base::Bind(classic_.Callbacks(psm)->pL2CA_ConnectCfm_Cb, cid, connected ? (kConnectionSuccess) : (kConnectionFail))); } else { LOG_DEBUG("Connection Closed before presentation to upper layer"); if (connected) { Loading @@ -295,8 +298,10 @@ void bluetooth::shim::legacy::L2cap::OnRemoteInitiatedConnectionCreated( cid_to_psm_map_[cid] = psm; cid_to_remote_cid_map_[cid] = remote_cid; SetDownstreamCallbacks(cid); Classic().Callbacks(psm)->pL2CA_ConnectInd_Cb(raw_address, cid, psm, kUnusedId); do_in_main_thread( FROM_HERE, base::Bind(classic_.Callbacks(CidToPsm(cid))->pL2CA_ConnectInd_Cb, raw_address, cid, psm, kUnusedId)); } bool bluetooth::shim::legacy::L2cap::Write(uint16_t cid, BT_HDR* bt_hdr) { Loading Loading @@ -334,11 +339,18 @@ void bluetooth::shim::legacy::L2cap::SetDownstreamCallbacks(uint16_t cid) { } if (cid_closing_set_.count(cid) == 1) { cid_closing_set_.erase(cid); classic_.Callbacks(CidToPsm(cid)) ->pL2CA_DisconnectCfm_Cb(cid, kUnusedResult); do_in_main_thread( FROM_HERE, base::Bind( classic_.Callbacks(CidToPsm(cid))->pL2CA_DisconnectCfm_Cb, cid, kUnusedResult)); } else { classic_.Callbacks(CidToPsm(cid)) ->pL2CA_DisconnectInd_Cb(cid, kDisconnectResponseRequired); do_in_main_thread( FROM_HERE, base::Bind( classic_.Callbacks(CidToPsm(cid))->pL2CA_DisconnectInd_Cb, cid, kDisconnectResponseRequired)); } cid_to_psm_map_.erase(cid); cid_to_remote_cid_map_.erase(cid); Loading Loading @@ -373,8 +385,15 @@ bool bluetooth::shim::legacy::L2cap::ConfigRequest( .ext_flow_spec_present = false, .flags = 0, }; classic_.Callbacks(CidToPsm(cid))->pL2CA_ConfigCfm_Cb(cid, &cfg_info); classic_.Callbacks(CidToPsm(cid))->pL2CA_ConfigInd_Cb(cid, &cfg_info); LOG(INFO) << __func__ << "Rcvd config request"; do_in_main_thread( FROM_HERE, base::Bind(classic_.Callbacks(CidToPsm(cid))->pL2CA_ConfigInd_Cb, cid, base::Unretained(&cfg_info))); do_in_main_thread( FROM_HERE, base::Bind(classic_.Callbacks(CidToPsm(cid))->pL2CA_ConfigCfm_Cb, cid, base::Unretained(&cfg_info))); }); return true; } Loading