Loading system/vendor_libs/test_vendor_lib/model/controller/le_advertiser.cc +5 −0 Original line number Diff line number Diff line Loading @@ -103,6 +103,11 @@ bool LeAdvertiser::IsEnabled() const { return enabled_; } bool LeAdvertiser::IsExtended() const { return extended_; } bool LeAdvertiser::IsConnectable() const { return type_ != model::packets::AdvertisementType::ADV_NONCONN_IND && type_ != model::packets::AdvertisementType::ADV_SCAN_IND; } uint8_t LeAdvertiser::GetNumAdvertisingEvents() const { return num_events_; } std::unique_ptr<model::packets::LeAdvertisementBuilder> Loading system/vendor_libs/test_vendor_lib/model/controller/le_advertiser.h +2 −0 Original line number Diff line number Diff line Loading @@ -71,6 +71,8 @@ class LeAdvertiser { bool IsExtended() const; bool IsConnectable() const; uint8_t GetNumAdvertisingEvents() const; bluetooth::hci::AddressWithType GetAddress() const; Loading system/vendor_libs/test_vendor_lib/model/controller/link_layer_controller.cc +9 −1 Original line number Diff line number Diff line Loading @@ -1430,6 +1430,13 @@ void LinkLayerController::IncomingLeConnectPacket( return; } if (!advertisers_[set].IsConnectable()) { LOG_INFO( "Rejecting connection request from %s to non-connectable advertiser", incoming.GetSourceAddress().ToString().c_str()); return; } uint16_t handle = HandleLeConnection( AddressWithType( incoming.GetSourceAddress(), Loading @@ -1445,9 +1452,10 @@ void LinkLayerController::IncomingLeConnectPacket( static_cast<uint8_t>(my_address.GetAddressType())); SendLeLinkLayerPacket(std::move(to_send)); advertisers_[set].Disable(); if (advertisers_[set].IsExtended()) { uint8_t num_advertisements = advertisers_[set].GetNumAdvertisingEvents(); advertisers_[set].Disable(); if (properties_.GetLeEventSupported( bluetooth::hci::SubeventCode::ADVERTISING_SET_TERMINATED)) { send_event_(bluetooth::hci::LeAdvertisingSetTerminatedBuilder::Create( Loading Loading
system/vendor_libs/test_vendor_lib/model/controller/le_advertiser.cc +5 −0 Original line number Diff line number Diff line Loading @@ -103,6 +103,11 @@ bool LeAdvertiser::IsEnabled() const { return enabled_; } bool LeAdvertiser::IsExtended() const { return extended_; } bool LeAdvertiser::IsConnectable() const { return type_ != model::packets::AdvertisementType::ADV_NONCONN_IND && type_ != model::packets::AdvertisementType::ADV_SCAN_IND; } uint8_t LeAdvertiser::GetNumAdvertisingEvents() const { return num_events_; } std::unique_ptr<model::packets::LeAdvertisementBuilder> Loading
system/vendor_libs/test_vendor_lib/model/controller/le_advertiser.h +2 −0 Original line number Diff line number Diff line Loading @@ -71,6 +71,8 @@ class LeAdvertiser { bool IsExtended() const; bool IsConnectable() const; uint8_t GetNumAdvertisingEvents() const; bluetooth::hci::AddressWithType GetAddress() const; Loading
system/vendor_libs/test_vendor_lib/model/controller/link_layer_controller.cc +9 −1 Original line number Diff line number Diff line Loading @@ -1430,6 +1430,13 @@ void LinkLayerController::IncomingLeConnectPacket( return; } if (!advertisers_[set].IsConnectable()) { LOG_INFO( "Rejecting connection request from %s to non-connectable advertiser", incoming.GetSourceAddress().ToString().c_str()); return; } uint16_t handle = HandleLeConnection( AddressWithType( incoming.GetSourceAddress(), Loading @@ -1445,9 +1452,10 @@ void LinkLayerController::IncomingLeConnectPacket( static_cast<uint8_t>(my_address.GetAddressType())); SendLeLinkLayerPacket(std::move(to_send)); advertisers_[set].Disable(); if (advertisers_[set].IsExtended()) { uint8_t num_advertisements = advertisers_[set].GetNumAdvertisingEvents(); advertisers_[set].Disable(); if (properties_.GetLeEventSupported( bluetooth::hci::SubeventCode::ADVERTISING_SET_TERMINATED)) { send_event_(bluetooth::hci::LeAdvertisingSetTerminatedBuilder::Create( Loading