From 96d59f25fa12158e1fd93c6be5ecb11268a065d5 Mon Sep 17 00:00:00 2001 From: Zach Johnson Date: Sat, 12 Dec 2020 17:58:24 -0800 Subject: [PATCH] EventPacket -> Event simpler Bug: 171749953 Tag: #gd-refactor Test: gd/cert/run --rhost SimpleHalTest Change-Id: Ib493861824c05d3a019e25d9fed8ad09cfac55dd --- gd/cert/captures.py | 10 +- gd/cert/matchers.py | 4 +- gd/hal/fuzz/fuzz_hci_hal.cc | 2 +- gd/hci/acl_manager/classic_impl.h | 32 +++--- gd/hci/acl_manager_test.cc | 15 ++- gd/hci/cert/le_acl_manager_test.py | 8 +- gd/hci/controller.cc | 2 +- gd/hci/controller_test.cc | 9 +- gd/hci/facade/facade.cc | 2 +- gd/hci/fuzz/fuzz_hci_layer.cc | 11 +-- gd/hci/fuzz/fuzz_hci_layer.h | 14 ++- gd/hci/fuzz/hci_layer_fuzz_client.cc | 4 +- gd/hci/hci_layer.cc | 34 +++---- gd/hci/hci_layer.h | 13 ++- gd/hci/hci_layer_test.cc | 26 +++-- gd/hci/hci_packets.pdl | 108 ++++++++++----------- gd/hci/hci_packets_test.cc | 6 +- gd/hci/le_address_manager_test.cc | 6 +- gd/hci/le_advertising_manager_test.cc | 15 ++- gd/hci/le_scanning_manager_test.cc | 15 ++- gd/neighbor/facade/facade.cc | 2 +- gd/neighbor/inquiry.cc | 4 +- gd/neighbor/inquiry_test.cc | 16 +-- gd/neighbor/name.cc | 4 +- gd/security/channel/security_manager_channel.cc | 2 +- gd/security/channel/security_manager_channel.h | 4 +- .../channel/security_manager_channel_unittest.cc | 4 +- gd/security/internal/security_manager_impl.cc | 4 +- gd/security/internal/security_manager_impl.h | 2 +- .../pairing/classic_pairing_handler_unittest.cc | 4 +- gd/security/pairing_handler_le.h | 6 +- gd/security/test/fake_hci_layer.h | 13 ++- gd/security/test/fake_l2cap_test.cc | 4 +- gd/security/test/pairing_handler_le_pair_test.cc | 10 +- main/shim/hci_layer.cc | 2 +- .../model/controller/dual_mode_controller.cc | 4 +- .../model/controller/dual_mode_controller.h | 2 +- .../model/controller/link_layer_controller.cc | 14 +-- .../model/controller/link_layer_controller.h | 6 +- .../test_vendor_lib/model/devices/car_kit.cc | 2 +- 40 files changed, 216 insertions(+), 229 deletions(-) diff --git a/gd/cert/captures.py b/gd/cert/captures.py index f767d3f34..48fb3860c 100644 --- a/gd/cert/captures.py +++ b/gd/cert/captures.py @@ -32,25 +32,25 @@ class HalCaptures(object): return Capture( lambda packet: packet.payload[0:5] == b'\x0e\x0a\x01\x09\x10', lambda packet: hci_packets.ReadBdAddrCompleteView( hci_packets.CommandCompleteView( - hci_packets.EventPacketView(bt_packets.PacketViewLittleEndian(list(packet.payload)))))) + hci_packets.EventView(bt_packets.PacketViewLittleEndian(list(packet.payload)))))) @staticmethod def ConnectionRequestCapture(): return Capture( lambda packet: packet.payload[0:2] == b'\x04\x0a', lambda packet: hci_packets.ConnectionRequestView( - hci_packets.EventPacketView(bt_packets.PacketViewLittleEndian(list(packet.payload))))) + hci_packets.EventView(bt_packets.PacketViewLittleEndian(list(packet.payload))))) @staticmethod def ConnectionCompleteCapture(): return Capture( lambda packet: packet.payload[0:3] == b'\x03\x0b\x00', lambda packet: hci_packets.ConnectionCompleteView( - hci_packets.EventPacketView(bt_packets.PacketViewLittleEndian(list(packet.payload))))) + hci_packets.EventView(bt_packets.PacketViewLittleEndian(list(packet.payload))))) @staticmethod def DisconnectionCompleteCapture(): return Capture( lambda packet: packet.payload[0:2] == b'\x05\x04', lambda packet: hci_packets.DisconnectionCompleteView( - hci_packets.EventPacketView(bt_packets.PacketViewLittleEndian(list(packet.payload))))) + hci_packets.EventView(bt_packets.PacketViewLittleEndian(list(packet.payload))))) @staticmethod def LeConnectionCompleteCapture(): @@ -58,7 +58,7 @@ class HalCaptures(object): lambda packet: packet.payload[0] == 0x3e and (packet.payload[2] == 0x01 or packet.payload[2] == 0x0a), lambda packet: hci_packets.LeConnectionCompleteView( hci_packets.LeMetaEventView( - hci_packets.EventPacketView(bt_packets.PacketViewLittleEndian(list(packet.payload)))))) + hci_packets.EventView(bt_packets.PacketViewLittleEndian(list(packet.payload)))))) class HciCaptures(object): diff --git a/gd/cert/matchers.py b/gd/cert/matchers.py index 0a717b882..6186a48bf 100644 --- a/gd/cert/matchers.py +++ b/gd/cert/matchers.py @@ -96,7 +96,7 @@ class HciMatchers(object): @staticmethod def _extract_matching_event(packet_bytes, event_code): - event = hci_packets.EventPacketView(bt_packets.PacketViewLittleEndian(list(packet_bytes))) + event = hci_packets.EventView(bt_packets.PacketViewLittleEndian(list(packet_bytes))) if event is None: return None if event_code is not None and event.GetEventCode() != event_code: @@ -144,7 +144,7 @@ class HciMatchers(object): @staticmethod def LogEventCode(): - return lambda event: logging.info("Received event: %x" % hci_packets.EventPacketView(bt_packets.PacketViewLittleEndian(list(event.payload))).GetEventCode()) + return lambda event: logging.info("Received event: %x" % hci_packets.EventView(bt_packets.PacketViewLittleEndian(list(event.event))).GetEventCode()) @staticmethod def LinkKeyRequest(): diff --git a/gd/hal/fuzz/fuzz_hci_hal.cc b/gd/hal/fuzz/fuzz_hci_hal.cc index 0840e69ef..9e35dcf50 100644 --- a/gd/hal/fuzz/fuzz_hci_hal.cc +++ b/gd/hal/fuzz/fuzz_hci_hal.cc @@ -58,7 +58,7 @@ void FuzzHciHal::sendHciCommand(HciPacket packet) { } void FuzzHciHal::injectHciEvent(std::vector data) { - hci::EventPacketView event = hci::EventPacketView::FromBytes(data); + hci::EventView event = hci::EventView::FromBytes(data); if (!event.IsValid()) { return; } diff --git a/gd/hci/acl_manager/classic_impl.h b/gd/hci/acl_manager/classic_impl.h index 243c877c3..f2a7703f1 100644 --- a/gd/hci/acl_manager/classic_impl.h +++ b/gd/hci/acl_manager/classic_impl.h @@ -75,7 +75,7 @@ struct classic_impl : public security::ISecurityManagerListener { } } - void on_classic_event(EventPacketView event_packet) { + void on_classic_event(EventView event_packet) { EventCode event_code = event_packet.GetEventCode(); switch (event_code) { case EventCode::CONNECTION_COMPLETE: @@ -141,7 +141,7 @@ struct classic_impl : public security::ISecurityManagerListener { client_handler_ = handler; } - void on_incoming_connection(EventPacketView packet) { + void on_incoming_connection(EventView packet) { ConnectionRequestView request = ConnectionRequestView::Create(packet); ASSERT(request.IsValid()); Address address = request.GetBdAddr(); @@ -198,7 +198,7 @@ struct classic_impl : public security::ISecurityManagerListener { } } - void on_connection_complete(EventPacketView packet) { + void on_connection_complete(EventView packet) { ConnectionCompleteView connection_complete = ConnectionCompleteView::Create(packet); ASSERT(connection_complete.IsValid()); auto status = connection_complete.GetStatus(); @@ -251,7 +251,7 @@ struct classic_impl : public security::ISecurityManagerListener { } } - void on_connection_packet_type_changed(EventPacketView packet) { + void on_connection_packet_type_changed(EventView packet) { ConnectionPacketTypeChangedView packet_type_changed = ConnectionPacketTypeChangedView::Create(packet); if (!packet_type_changed.IsValid()) { LOG_ERROR("Received on_connection_packet_type_changed with invalid packet"); @@ -272,7 +272,7 @@ struct classic_impl : public security::ISecurityManagerListener { // We don't handle this event; we didn't do this in legacy stack either. } - void on_central_link_key_complete(EventPacketView packet) { + void on_central_link_key_complete(EventView packet) { CentralLinkKeyCompleteView complete_view = CentralLinkKeyCompleteView::Create(packet); if (!complete_view.IsValid()) { LOG_ERROR("Received on_central_link_key_complete with invalid packet"); @@ -294,7 +294,7 @@ struct classic_impl : public security::ISecurityManagerListener { callbacks->OnCentralLinkKeyComplete(key_flag); } - void on_authentication_complete(EventPacketView packet) { + void on_authentication_complete(EventView packet) { AuthenticationCompleteView authentication_complete = AuthenticationCompleteView::Create(packet); if (!authentication_complete.IsValid()) { LOG_ERROR("Received on_authentication_complete with invalid packet"); @@ -351,7 +351,7 @@ struct classic_impl : public security::ISecurityManagerListener { handler_->BindOnceOn(this, &classic_impl::on_accept_connection_status, address)); } - void on_change_connection_link_key_complete(EventPacketView packet) { + void on_change_connection_link_key_complete(EventView packet) { ChangeConnectionLinkKeyCompleteView complete_view = ChangeConnectionLinkKeyCompleteView::Create(packet); if (!complete_view.IsValid()) { LOG_ERROR("Received on_change_connection_link_key_complete with invalid packet"); @@ -372,7 +372,7 @@ struct classic_impl : public security::ISecurityManagerListener { callbacks->OnChangeConnectionLinkKeyComplete(); } - void on_read_clock_offset_complete(EventPacketView packet) { + void on_read_clock_offset_complete(EventView packet) { ReadClockOffsetCompleteView complete_view = ReadClockOffsetCompleteView::Create(packet); if (!complete_view.IsValid()) { LOG_ERROR("Received on_read_clock_offset_complete with invalid packet"); @@ -394,7 +394,7 @@ struct classic_impl : public security::ISecurityManagerListener { callbacks->OnReadClockOffsetComplete(clock_offset); } - void on_mode_change(EventPacketView packet) { + void on_mode_change(EventView packet) { ModeChangeView mode_change_view = ModeChangeView::Create(packet); if (!mode_change_view.IsValid()) { LOG_ERROR("Received on_mode_change with invalid packet"); @@ -417,7 +417,7 @@ struct classic_impl : public security::ISecurityManagerListener { callbacks->OnModeChange(current_mode, interval); } - void on_qos_setup_complete(EventPacketView packet) { + void on_qos_setup_complete(EventView packet) { QosSetupCompleteView complete_view = QosSetupCompleteView::Create(packet); if (!complete_view.IsValid()) { LOG_ERROR("Received on_qos_setup_complete with invalid packet"); @@ -443,7 +443,7 @@ struct classic_impl : public security::ISecurityManagerListener { callbacks->OnQosSetupComplete(service_type, token_rate, peak_bandwidth, latency, delay_variation); } - void on_role_change(EventPacketView packet) { + void on_role_change(EventView packet) { RoleChangeView role_change_view = RoleChangeView::Create(packet); if (!role_change_view.IsValid()) { LOG_ERROR("Received on_role_change with invalid packet"); @@ -463,7 +463,7 @@ struct classic_impl : public security::ISecurityManagerListener { } } - void on_flow_specification_complete(EventPacketView packet) { + void on_flow_specification_complete(EventView packet) { FlowSpecificationCompleteView complete_view = FlowSpecificationCompleteView::Create(packet); if (!complete_view.IsValid()) { LOG_ERROR("Received on_flow_specification_complete with invalid packet"); @@ -491,7 +491,7 @@ struct classic_impl : public security::ISecurityManagerListener { flow_direction, service_type, token_rate, token_bucket_size, peak_bandwidth, access_latency); } - void on_flush_occurred(EventPacketView packet) { + void on_flush_occurred(EventView packet) { FlushOccurredView flush_occurred_view = FlushOccurredView::Create(packet); if (!flush_occurred_view.IsValid()) { LOG_ERROR("Received on_flush_occurred with invalid packet"); @@ -518,7 +518,7 @@ struct classic_impl : public security::ISecurityManagerListener { callbacks->OnReadRemoteVersionInformationComplete(version, manufacturer_name, sub_version); } - void on_read_remote_supported_features_complete(EventPacketView packet) { + void on_read_remote_supported_features_complete(EventView packet) { auto view = ReadRemoteSupportedFeaturesCompleteView::Create(packet); ASSERT_LOG(view.IsValid(), "Read remote supported features packet invalid"); uint16_t handle = view.GetConnectionHandle(); @@ -531,7 +531,7 @@ struct classic_impl : public security::ISecurityManagerListener { callbacks->OnReadRemoteExtendedFeaturesComplete(0, 1, view.GetLmpFeatures()); } - void on_read_remote_extended_features_complete(EventPacketView packet) { + void on_read_remote_extended_features_complete(EventView packet) { auto view = ReadRemoteExtendedFeaturesCompleteView::Create(packet); ASSERT_LOG(view.IsValid(), "Read remote extended features packet invalid"); uint16_t handle = view.GetConnectionHandle(); @@ -545,7 +545,7 @@ struct classic_impl : public security::ISecurityManagerListener { view.GetPageNumber(), view.GetMaximumPageNumber(), view.GetExtendedLmpFeatures()); } - void on_link_supervision_timeout_changed(EventPacketView packet) { + void on_link_supervision_timeout_changed(EventView packet) { auto view = LinkSupervisionTimeoutChangedView::Create(packet); ASSERT_LOG(view.IsValid(), "Link supervision timeout changed packet invalid"); LOG_INFO("UNIMPLEMENTED called"); diff --git a/gd/hci/acl_manager_test.cc b/gd/hci/acl_manager_test.cc index bd703a3a7..fb3b49219 100644 --- a/gd/hci/acl_manager_test.cc +++ b/gd/hci/acl_manager_test.cc @@ -191,8 +191,7 @@ class TestHciLayer : public HciLayer { return command; } - void RegisterEventHandler(EventCode event_code, - common::ContextualCallback event_handler) override { + void RegisterEventHandler(EventCode event_code, common::ContextualCallback event_handler) override { registered_events_[event_code] = event_handler; } @@ -209,9 +208,9 @@ class TestHciLayer : public HciLayer { registered_le_events_.erase(subevent_code); } - void IncomingEvent(std::unique_ptr event_builder) { + void IncomingEvent(std::unique_ptr event_builder) { auto packet = GetPacketView(std::move(event_builder)); - EventPacketView event = EventPacketView::Create(packet); + EventView event = EventView::Create(packet); ASSERT_TRUE(event.IsValid()); EventCode event_code = event.GetEventCode(); ASSERT_NE(registered_events_.find(event_code), registered_events_.end()) << EventCodeText(event_code); @@ -220,7 +219,7 @@ class TestHciLayer : public HciLayer { void IncomingLeMetaEvent(std::unique_ptr event_builder) { auto packet = GetPacketView(std::move(event_builder)); - EventPacketView event = EventPacketView::Create(packet); + EventView event = EventView::Create(packet); LeMetaEventView meta_event_view = LeMetaEventView::Create(event); EXPECT_TRUE(meta_event_view.IsValid()); SubeventCode subevent_code = meta_event_view.GetSubeventCode(); @@ -252,14 +251,14 @@ class TestHciLayer : public HciLayer { EXPECT_EQ(queue_end->TryDequeue(), nullptr); } - void CommandCompleteCallback(EventPacketView event) { + void CommandCompleteCallback(EventView event) { CommandCompleteView complete_view = CommandCompleteView::Create(event); ASSERT_TRUE(complete_view.IsValid()); std::move(command_complete_callbacks.front()).Invoke(complete_view); command_complete_callbacks.pop_front(); } - void CommandStatusCallback(EventPacketView event) { + void CommandStatusCallback(EventView event) { CommandStatusView status_view = CommandStatusView::Create(event); ASSERT_TRUE(status_view.IsValid()); std::move(command_status_callbacks.front()).Invoke(status_view); @@ -293,7 +292,7 @@ class TestHciLayer : public HciLayer { } private: - std::map> registered_events_; + std::map> registered_events_; std::map> registered_le_events_; std::list> command_complete_callbacks; std::list> command_status_callbacks; diff --git a/gd/hci/cert/le_acl_manager_test.py b/gd/hci/cert/le_acl_manager_test.py index f39bc9b38..f3da3d23e 100644 --- a/gd/hci/cert/le_acl_manager_test.py +++ b/gd/hci/cert/le_acl_manager_test.py @@ -142,14 +142,14 @@ class LeAclManagerTest(GdBaseTestClass): if b'\x3e\x13\x01\x00' in packet_bytes: cc_view = hci_packets.LeConnectionCompleteView( hci_packets.LeMetaEventView( - hci_packets.EventPacketView(bt_packets.PacketViewLittleEndian(list(packet_bytes))))) + hci_packets.EventView(bt_packets.PacketViewLittleEndian(list(packet_bytes))))) handle = cc_view.GetConnectionHandle() address = cc_view.GetPeerAddress() return True if b'\x3e\x13\x0A\x00' in packet_bytes: cc_view = hci_packets.LeEnhancedConnectionCompleteView( hci_packets.LeMetaEventView( - hci_packets.EventPacketView(bt_packets.PacketViewLittleEndian(list(packet_bytes))))) + hci_packets.EventView(bt_packets.PacketViewLittleEndian(list(packet_bytes))))) handle = cc_view.GetConnectionHandle() address = cc_view.GetPeerResolvablePrivateAddress() return True @@ -260,13 +260,13 @@ class LeAclManagerTest(GdBaseTestClass): if b'\x3e\x13\x01\x00' in packet_bytes: cc_view = hci_packets.LeConnectionCompleteView( hci_packets.LeMetaEventView( - hci_packets.EventPacketView(bt_packets.PacketViewLittleEndian(list(packet_bytes))))) + hci_packets.EventView(bt_packets.PacketViewLittleEndian(list(packet_bytes))))) handle = cc_view.GetConnectionHandle() return True if b'\x3e\x13\x0A\x00' in packet_bytes: cc_view = hci_packets.LeEnhancedConnectionCompleteView( hci_packets.LeMetaEventView( - hci_packets.EventPacketView(bt_packets.PacketViewLittleEndian(list(packet_bytes))))) + hci_packets.EventView(bt_packets.PacketViewLittleEndian(list(packet_bytes))))) handle = cc_view.GetConnectionHandle() return True return False diff --git a/gd/hci/controller.cc b/gd/hci/controller.cc index 668147b90..6eeaca18d 100644 --- a/gd/hci/controller.cc +++ b/gd/hci/controller.cc @@ -138,7 +138,7 @@ struct Controller::impl { hci_ = nullptr; } - void NumberOfCompletedPackets(EventPacketView event) { + void NumberOfCompletedPackets(EventView event) { if (acl_credits_callback_.IsEmpty()) { LOG_WARN("Received event when AclManager is not listening"); return; diff --git a/gd/hci/controller_test.cc b/gd/hci/controller_test.cc index 17ecbddaf..dcbafe43b 100644 --- a/gd/hci/controller_test.cc +++ b/gd/hci/controller_test.cc @@ -196,15 +196,14 @@ class TestHciLayer : public HciLayer { return; } auto packet = GetPacketView(std::move(event_builder)); - EventPacketView event = EventPacketView::Create(packet); + EventView event = EventView::Create(packet); ASSERT_TRUE(event.IsValid()); CommandCompleteView command_complete = CommandCompleteView::Create(event); ASSERT_TRUE(command_complete.IsValid()); on_complete.Invoke(std::move(command_complete)); } - void RegisterEventHandler(EventCode event_code, - common::ContextualCallback event_handler) override { + void RegisterEventHandler(EventCode event_code, common::ContextualCallback event_handler) override { EXPECT_EQ(event_code, EventCode::NUMBER_OF_COMPLETED_PACKETS) << "Only NUMBER_OF_COMPLETED_PACKETS is needed"; number_of_completed_packets_callback_ = event_handler; } @@ -225,7 +224,7 @@ class TestHciLayer : public HciLayer { completed_packets.push_back(cp); auto event_builder = NumberOfCompletedPacketsBuilder::Create(completed_packets); auto packet = GetPacketView(std::move(event_builder)); - EventPacketView event = EventPacketView::Create(packet); + EventView event = EventView::Create(packet); ASSERT_TRUE(event.IsValid()); number_of_completed_packets_callback_.Invoke(event); } @@ -262,7 +261,7 @@ class TestHciLayer : public HciLayer { uint64_t le_event_mask = 0; private: - common::ContextualCallback number_of_completed_packets_callback_; + common::ContextualCallback number_of_completed_packets_callback_; std::queue command_queue_; mutable std::mutex mutex_; std::condition_variable not_empty_; diff --git a/gd/hci/facade/facade.cc b/gd/hci/facade/facade.cc index 7e1255940..0b7c44c02 100644 --- a/gd/hci/facade/facade.cc +++ b/gd/hci/facade/facade.cc @@ -201,7 +201,7 @@ class HciLayerFacadeService : public HciLayerFacade::Service { pending_acl_events_.OnIncomingEvent(std::move(incoming)); } - void on_event(hci::EventPacketView view) { + void on_event(hci::EventView view) { ASSERT(view.IsValid()); LOG_INFO("Got an Event %s", EventCodeText(view.GetEventCode()).c_str()); Event response; diff --git a/gd/hci/fuzz/fuzz_hci_layer.cc b/gd/hci/fuzz/fuzz_hci_layer.cc index 2bba8d5c7..05d526207 100644 --- a/gd/hci/fuzz/fuzz_hci_layer.cc +++ b/gd/hci/fuzz/fuzz_hci_layer.cc @@ -25,8 +25,7 @@ using bluetooth::common::ContextualCallback; using bluetooth::fuzz::GetArbitraryBytes; using bluetooth::fuzz::InvokeIfValid; -hci::SecurityInterface* FuzzHciLayer::GetSecurityInterface( - ContextualCallback event_handler) { +hci::SecurityInterface* FuzzHciLayer::GetSecurityInterface(ContextualCallback event_handler) { return &security_interface_; } @@ -36,7 +35,7 @@ hci::LeSecurityInterface* FuzzHciLayer::GetLeSecurityInterface( } hci::AclConnectionInterface* FuzzHciLayer::GetAclConnectionInterface( - ContextualCallback event_handler, + ContextualCallback event_handler, ContextualCallback on_disconnect, ContextualCallback on_read_remote_version) { @@ -138,7 +137,7 @@ void FuzzHciLayer::injectCommandStatus(std::vector data) { void FuzzHciLayer::injectEvent(FuzzedDataProvider& fdp) { auto handler_pair = event_handlers_.find(static_cast(fdp.ConsumeIntegral())); if (handler_pair != event_handlers_.end()) { - InvokeIfValid(handler_pair->second, GetArbitraryBytes(&fdp)); + InvokeIfValid(handler_pair->second, GetArbitraryBytes(&fdp)); } } @@ -150,7 +149,7 @@ void FuzzHciLayer::injectLeEvent(FuzzedDataProvider& fdp) { } void FuzzHciLayer::injectSecurityEvent(std::vector data) { - InvokeIfValid(security_event_handler_, data); + InvokeIfValid(security_event_handler_, data); } void FuzzHciLayer::injectLeSecurityEvent(std::vector data) { @@ -158,7 +157,7 @@ void FuzzHciLayer::injectLeSecurityEvent(std::vector data) { } void FuzzHciLayer::injectAclEvent(std::vector data) { - InvokeIfValid(acl_event_handler_, data); + InvokeIfValid(acl_event_handler_, data); } void FuzzHciLayer::injectAclDisconnect(FuzzedDataProvider& fdp) { diff --git a/gd/hci/fuzz/fuzz_hci_layer.h b/gd/hci/fuzz/fuzz_hci_layer.h index d822af297..c4dce0450 100644 --- a/gd/hci/fuzz/fuzz_hci_layer.h +++ b/gd/hci/fuzz/fuzz_hci_layer.h @@ -71,8 +71,7 @@ class FuzzHciLayer : public HciLayer { return acl_queue_.GetUpEnd(); } - void RegisterEventHandler(hci::EventCode event, - common::ContextualCallback handler) override { + void RegisterEventHandler(hci::EventCode event, common::ContextualCallback handler) override { event_handlers_[event] = handler; } @@ -95,14 +94,13 @@ class FuzzHciLayer : public HciLayer { } } - hci::SecurityInterface* GetSecurityInterface( - common::ContextualCallback event_handler) override; + hci::SecurityInterface* GetSecurityInterface(common::ContextualCallback event_handler) override; hci::LeSecurityInterface* GetLeSecurityInterface( common::ContextualCallback event_handler) override; hci::AclConnectionInterface* GetAclConnectionInterface( - common::ContextualCallback event_handler, + common::ContextualCallback event_handler, common::ContextualCallback on_disconnect, common::ContextualCallback on_read_remote_version) override; @@ -171,12 +169,12 @@ class FuzzHciLayer : public HciLayer { common::ContextualOnceCallback on_command_complete_; common::ContextualOnceCallback on_command_status_; - std::map> event_handlers_; + std::map> event_handlers_; std::map> le_event_handlers_; - common::ContextualCallback security_event_handler_; + common::ContextualCallback security_event_handler_; common::ContextualCallback le_security_event_handler_; - common::ContextualCallback acl_event_handler_; + common::ContextualCallback acl_event_handler_; common::ContextualCallback acl_on_disconnect_; common::ContextualCallback le_acl_event_handler_; common::ContextualCallback le_acl_on_disconnect_; diff --git a/gd/hci/fuzz/hci_layer_fuzz_client.cc b/gd/hci/fuzz/hci_layer_fuzz_client.cc index 47e93a937..622fd050b 100644 --- a/gd/hci/fuzz/hci_layer_fuzz_client.cc +++ b/gd/hci/fuzz/hci_layer_fuzz_client.cc @@ -32,10 +32,10 @@ void HciLayerFuzzClient::Start() { aclInject_ = new os::fuzz::FuzzInjectQueue(hci_->GetAclQueueEnd(), GetHandler()); // Can't do security right now, due to the Encryption Change conflict between ACL manager & security - // security_interface_ = hci_->GetSecurityInterface(common::Bind([](EventPacketView){}), GetHandler()); + // security_interface_ = hci_->GetSecurityInterface(common::Bind([](EventView){}), GetHandler()); le_security_interface_ = hci_->GetLeSecurityInterface(GetHandler()->Bind([](LeMetaEventView) {})); acl_connection_interface_ = hci_->GetAclConnectionInterface( - GetHandler()->Bind([](EventPacketView) {}), + GetHandler()->Bind([](EventView) {}), GetHandler()->Bind([](uint16_t, hci::ErrorCode) {}), GetHandler()->Bind([](uint16_t, uint8_t, uint16_t, uint16_t) {})); le_acl_connection_interface_ = hci_->GetLeAclConnectionInterface( diff --git a/gd/hci/hci_layer.cc b/gd/hci/hci_layer.cc index 774fd6281..c49cc4ac2 100644 --- a/gd/hci/hci_layer.cc +++ b/gd/hci/hci_layer.cc @@ -31,7 +31,7 @@ using bluetooth::common::ContextualOnceCallback; using bluetooth::hci::CommandBuilder; using bluetooth::hci::CommandCompleteView; using bluetooth::hci::CommandStatusView; -using bluetooth::hci::EventPacketView; +using bluetooth::hci::EventView; using bluetooth::hci::LeMetaEventView; using bluetooth::os::Handler; using common::BidiQueue; @@ -95,7 +95,7 @@ struct HciLayer::impl { command_queue_.clear(); } - void drop(EventPacketView event) { + void drop(EventView event) { LOG_INFO("Dropping event %s", EventCodeText(event.GetEventCode()).c_str()); } @@ -113,16 +113,16 @@ struct HciLayer::impl { send_next_command(); } - void on_command_status(EventPacketView event) { + void on_command_status(EventView event) { handle_command_response(event, "status"); } - void on_command_complete(EventPacketView event) { + void on_command_complete(EventView event) { handle_command_response(event, "complete"); } template - void handle_command_response(EventPacketView event, std::string logging_id) { + void handle_command_response(EventView event, std::string logging_id) { TResponse response_view = TResponse::Create(event); ASSERT(response_view.IsValid()); command_credits_ = response_view.GetNumHciCommandPackets(); @@ -170,7 +170,7 @@ struct HciLayer::impl { hci_timeout_alarm_->Schedule(BindOnce(&on_hci_timeout, op_code), kHciTimeoutMs); } - void register_event(EventCode event, ContextualCallback handler) { + void register_event(EventCode event, ContextualCallback handler) { ASSERT_LOG( event != EventCode::LE_META_EVENT, "Can not register handler for %02hhx (%s)", @@ -185,7 +185,7 @@ struct HciLayer::impl { event_handlers_.erase(event); } - void register_le_meta_event(ContextualCallback handler) { + void register_le_meta_event(ContextualCallback handler) { ASSERT_LOG( event_handlers_.count(EventCode::LE_META_EVENT) == 0, "Can not register a second handler for %02hhx (%s)", @@ -208,7 +208,7 @@ struct HciLayer::impl { subevent_handlers_.erase(subevent_handlers_.find(event)); } - void on_hci_event(EventPacketView event) { + void on_hci_event(EventView event) { ASSERT(event.IsValid()); EventCode event_code = event.GetEventCode(); ASSERT_LOG( @@ -219,7 +219,7 @@ struct HciLayer::impl { event_handlers_[event_code].Invoke(event); } - void on_le_meta_event(EventPacketView event) { + void on_le_meta_event(EventView event) { LeMetaEventView meta_event_view = LeMetaEventView::Create(event); ASSERT(meta_event_view.IsValid()); SubeventCode subevent_code = meta_event_view.GetSubeventCode(); @@ -237,7 +237,7 @@ struct HciLayer::impl { // Command Handling std::list command_queue_; - std::map> event_handlers_; + std::map> event_handlers_; std::map> subevent_handlers_; OpCode waiting_command_{OpCode::NONE}; uint8_t command_credits_{1}; // Send reset first @@ -254,7 +254,7 @@ struct HciLayer::hal_callbacks : public hal::HciHalCallbacks { void hciEventReceived(hal::HciPacket event_bytes) override { auto packet = packet::PacketView(std::make_shared>(event_bytes)); - EventPacketView event = EventPacketView::Create(packet); + EventView event = EventView::Create(packet); module_.CallOn(module_.impl_, &impl::on_hci_event, move(event)); } @@ -294,11 +294,11 @@ void HciLayer::EnqueueCommand( CallOn(impl_, &impl::enqueue_command, move(command), move(on_status)); } -void HciLayer::RegisterEventHandler(EventCode event, ContextualCallback handler) { +void HciLayer::RegisterEventHandler(EventCode event, ContextualCallback handler) { CallOn(impl_, &impl::register_event, event, handler); } -void HciLayer::RegisterLeMetaEventHandler(ContextualCallback handler) { +void HciLayer::RegisterLeMetaEventHandler(ContextualCallback handler) { CallOn(impl_, &impl::register_le_meta_event, handler); } @@ -314,7 +314,7 @@ void HciLayer::UnregisterLeEventHandler(SubeventCode event) { CallOn(impl_, &impl::unregister_le_event, event); } -void HciLayer::on_disconnection_complete(EventPacketView event_view) { +void HciLayer::on_disconnection_complete(EventView event_view) { auto disconnection_view = DisconnectionCompleteView::Create(event_view); if (!disconnection_view.IsValid()) { LOG_INFO("Dropping invalid disconnection packet"); @@ -332,7 +332,7 @@ void HciLayer::Disconnect(uint16_t handle, ErrorCode reason) { } } -void HciLayer::on_read_remote_version_complete(EventPacketView event_view) { +void HciLayer::on_read_remote_version_complete(EventView event_view) { auto view = ReadRemoteVersionInformationCompleteView::Create(event_view); ASSERT_LOG(view.IsValid(), "Read remote version information packet invalid"); if (view.GetStatus() != ErrorCode::SUCCESS) { @@ -352,7 +352,7 @@ void HciLayer::ReadRemoteVersion(uint16_t handle, uint8_t version, uint16_t manu } AclConnectionInterface* HciLayer::GetAclConnectionInterface( - ContextualCallback event_handler, + ContextualCallback event_handler, ContextualCallback on_disconnect, ContextualCallback on_read_remote_version) { @@ -377,7 +377,7 @@ LeAclConnectionInterface* HciLayer::GetLeAclConnectionInterface( return &le_acl_connection_manager_interface_; } -SecurityInterface* HciLayer::GetSecurityInterface(ContextualCallback event_handler) { +SecurityInterface* HciLayer::GetSecurityInterface(ContextualCallback event_handler) { for (const auto event : SecurityEvents) { RegisterEventHandler(event, event_handler); } diff --git a/gd/hci/hci_layer.h b/gd/hci/hci_layer.h index 33dbbe5af..3999fbef2 100644 --- a/gd/hci/hci_layer.h +++ b/gd/hci/hci_layer.h @@ -56,8 +56,7 @@ class HciLayer : public Module, public CommandInterface { virtual common::BidiQueueEnd* GetAclQueueEnd(); - virtual void RegisterEventHandler(EventCode event_code, - common::ContextualCallback event_handler); + virtual void RegisterEventHandler(EventCode event_code, common::ContextualCallback event_handler); virtual void UnregisterEventHandler(EventCode event_code); @@ -66,12 +65,12 @@ class HciLayer : public Module, public CommandInterface { virtual void UnregisterLeEventHandler(SubeventCode subevent_code); - virtual SecurityInterface* GetSecurityInterface(common::ContextualCallback event_handler); + virtual SecurityInterface* GetSecurityInterface(common::ContextualCallback event_handler); virtual LeSecurityInterface* GetLeSecurityInterface(common::ContextualCallback event_handler); virtual AclConnectionInterface* GetAclConnectionInterface( - common::ContextualCallback event_handler, + common::ContextualCallback event_handler, common::ContextualCallback on_disconnect, common::ContextualCallback on_read_remote_version_complete); @@ -105,7 +104,7 @@ class HciLayer : public Module, public CommandInterface { virtual void Disconnect(uint16_t handle, ErrorCode reason); virtual void ReadRemoteVersion(uint16_t handle, uint8_t version, uint16_t manufacturer_name, uint16_t sub_version); - virtual void RegisterLeMetaEventHandler(common::ContextualCallback event_handler); + virtual void RegisterLeMetaEventHandler(common::ContextualCallback event_handler); private: struct impl; @@ -133,8 +132,8 @@ class HciLayer : public Module, public CommandInterface { std::list> disconnect_handlers_; std::list> read_remote_version_handlers_; - void on_disconnection_complete(EventPacketView event_view); - void on_read_remote_version_complete(EventPacketView event_view); + void on_disconnection_complete(EventView event_view); + void on_read_remote_version_complete(EventView event_view); // Interfaces CommandInterfaceImpl acl_connection_manager_interface_{*this}; diff --git a/gd/hci/hci_layer_test.cc b/gd/hci/hci_layer_test.cc index 8b8728ec1..41d81dd42 100644 --- a/gd/hci/hci_layer_test.cc +++ b/gd/hci/hci_layer_test.cc @@ -159,7 +159,7 @@ class DependsOnHci : public Module { void SendSecurityCommandExpectingComplete(std::unique_ptr command) { if (security_interface_ == nullptr) { security_interface_ = - hci_->GetSecurityInterface(GetHandler()->BindOn(this, &DependsOnHci::handle_event)); + hci_->GetSecurityInterface(GetHandler()->BindOn(this, &DependsOnHci::handle_event)); } hci_->EnqueueCommand(std::move(command), GetHandler()->BindOnceOn(this, &DependsOnHci::handle_event)); @@ -186,8 +186,8 @@ class DependsOnHci : public Module { return event_promise_->get_future(); } - EventPacketView GetReceivedEvent() { - EventPacketView packetview = incoming_events_.front(); + EventView GetReceivedEvent() { + EventView packetview = incoming_events_.front(); incoming_events_.pop_front(); return packetview; } @@ -210,8 +210,8 @@ class DependsOnHci : public Module { void Start() { hci_ = GetDependency(); - hci_->RegisterEventHandler(EventCode::CONNECTION_COMPLETE, - GetHandler()->BindOn(this, &DependsOnHci::handle_event)); + hci_->RegisterEventHandler( + EventCode::CONNECTION_COMPLETE, GetHandler()->BindOn(this, &DependsOnHci::handle_event)); hci_->RegisterLeEventHandler(SubeventCode::CONNECTION_COMPLETE, GetHandler()->BindOn(this, &DependsOnHci::handle_event)); hci_->GetAclQueueEnd()->RegisterDequeue(GetHandler(), @@ -232,7 +232,7 @@ class DependsOnHci : public Module { HciLayer* hci_ = nullptr; const SecurityInterface* security_interface_; const LeSecurityInterface* le_security_interface_; - std::list incoming_events_; + std::list incoming_events_; std::list incoming_acl_packets_; std::unique_ptr> event_promise_; std::unique_ptr> acl_promise_; @@ -356,7 +356,7 @@ TEST_F(HciTest, leMetaEvent) { ASSERT_EQ(event_status, std::future_status::ready); auto event = upper->GetReceivedEvent(); - ASSERT_TRUE(LeConnectionCompleteView::Create(LeMetaEventView::Create(EventPacketView::Create(event))).IsValid()); + ASSERT_TRUE(LeConnectionCompleteView::Create(LeMetaEventView::Create(EventView::Create(event))).IsValid()); } TEST_F(HciTest, noOpCredits) { @@ -400,8 +400,7 @@ TEST_F(HciTest, noOpCredits) { auto event = upper->GetReceivedEvent(); ASSERT_TRUE( - ReadLocalVersionInformationCompleteView::Create(CommandCompleteView::Create(EventPacketView::Create(event))) - .IsValid()); + ReadLocalVersionInformationCompleteView::Create(CommandCompleteView::Create(EventView::Create(event))).IsValid()); } TEST_F(HciTest, creditsTest) { @@ -448,8 +447,7 @@ TEST_F(HciTest, creditsTest) { auto event = upper->GetReceivedEvent(); ASSERT_TRUE( - ReadLocalVersionInformationCompleteView::Create(CommandCompleteView::Create(EventPacketView::Create(event))) - .IsValid()); + ReadLocalVersionInformationCompleteView::Create(CommandCompleteView::Create(EventView::Create(event))).IsValid()); // Verify that the second one is sent command_sent_status = command_future.wait_for(kTimeout); @@ -478,8 +476,7 @@ TEST_F(HciTest, creditsTest) { event = upper->GetReceivedEvent(); ASSERT_TRUE( - ReadLocalSupportedCommandsCompleteView::Create(CommandCompleteView::Create(EventPacketView::Create(event))) - .IsValid()); + ReadLocalSupportedCommandsCompleteView::Create(CommandCompleteView::Create(EventView::Create(event))).IsValid()); // Verify that the third one is sent command_sent_status = command_future.wait_for(kTimeout); ASSERT_EQ(command_sent_status, std::future_status::ready); @@ -503,8 +500,7 @@ TEST_F(HciTest, creditsTest) { ASSERT_EQ(event_status, std::future_status::ready); event = upper->GetReceivedEvent(); ASSERT_TRUE( - ReadLocalSupportedFeaturesCompleteView::Create(CommandCompleteView::Create(EventPacketView::Create(event))) - .IsValid()); + ReadLocalSupportedFeaturesCompleteView::Create(CommandCompleteView::Create(EventView::Create(event))).IsValid()); } TEST_F(HciTest, leSecurityInterfaceTest) { diff --git a/gd/hci/hci_packets.pdl b/gd/hci/hci_packets.pdl index eb13a651f..697d94c3e 100644 --- a/gd/hci/hci_packets.pdl +++ b/gd/hci/hci_packets.pdl @@ -690,7 +690,7 @@ enum EventCode : 8 { VENDOR_SPECIFIC = 0xFF, } -packet EventPacket { +packet Event { event_code : EventCode, _size_(_payload_) : 8, _payload_, @@ -794,13 +794,13 @@ enum ErrorCode: 8 { // Events that are defined with their respective commands -packet CommandComplete : EventPacket (event_code = COMMAND_COMPLETE){ +packet CommandComplete : Event (event_code = COMMAND_COMPLETE){ num_hci_command_packets : 8, command_op_code : OpCode, _payload_, } -packet CommandStatus : EventPacket (event_code = COMMAND_STATUS){ +packet CommandStatus : Event (event_code = COMMAND_STATUS){ status : ErrorCode, // SUCCESS means PENDING num_hci_command_packets : 8, command_op_code : OpCode, @@ -3874,7 +3874,7 @@ packet ControllerBqrComplete : CommandComplete (command_op_code = CONTROLLER_BQR // HCI Event Packets -packet InquiryComplete : EventPacket (event_code = INQUIRY_COMPLETE){ +packet InquiryComplete : Event (event_code = INQUIRY_COMPLETE){ status : ErrorCode, } @@ -3888,7 +3888,7 @@ struct InquiryResult { _reserved_ : 1, } -packet InquiryResult : EventPacket (event_code = INQUIRY_RESULT){ +packet InquiryResult : Event (event_code = INQUIRY_RESULT){ _count_(inquiry_results) : 8, inquiry_results : InquiryResult[], } @@ -3898,7 +3898,7 @@ enum LinkType : 8 { ACL = 0x01, } -packet ConnectionComplete : EventPacket (event_code = CONNECTION_COMPLETE){ +packet ConnectionComplete : Event (event_code = CONNECTION_COMPLETE){ status : ErrorCode, connection_handle : 12, _reserved_ : 4, @@ -3913,26 +3913,26 @@ enum ConnectionRequestLinkType : 8 { ESCO = 0x02, } -packet ConnectionRequest : EventPacket (event_code = CONNECTION_REQUEST){ +packet ConnectionRequest : Event (event_code = CONNECTION_REQUEST){ bd_addr : Address, class_of_device : ClassOfDevice, link_type : ConnectionRequestLinkType, } -packet DisconnectionComplete : EventPacket (event_code = DISCONNECTION_COMPLETE){ +packet DisconnectionComplete : Event (event_code = DISCONNECTION_COMPLETE){ status : ErrorCode, connection_handle : 12, _reserved_ : 4, reason : ErrorCode, } -packet AuthenticationComplete : EventPacket (event_code = AUTHENTICATION_COMPLETE){ +packet AuthenticationComplete : Event (event_code = AUTHENTICATION_COMPLETE){ status : ErrorCode, connection_handle : 12, _reserved_ : 4, } -packet RemoteNameRequestComplete : EventPacket (event_code = REMOTE_NAME_REQUEST_COMPLETE){ +packet RemoteNameRequestComplete : Event (event_code = REMOTE_NAME_REQUEST_COMPLETE){ status : ErrorCode, bd_addr : Address, remote_name : 8[248], // UTF-8 encoded user-friendly descriptive name @@ -3944,34 +3944,34 @@ enum EncryptionEnabled : 8 { BR_EDR_AES_CCM = 0x02, } -packet EncryptionChange : EventPacket (event_code = ENCRYPTION_CHANGE){ +packet EncryptionChange : Event (event_code = ENCRYPTION_CHANGE){ status : ErrorCode, connection_handle : 12, _reserved_ : 4, encryption_enabled : EncryptionEnabled, } -packet ChangeConnectionLinkKeyComplete : EventPacket (event_code = CHANGE_CONNECTION_LINK_KEY_COMPLETE){ +packet ChangeConnectionLinkKeyComplete : Event (event_code = CHANGE_CONNECTION_LINK_KEY_COMPLETE){ status : ErrorCode, connection_handle : 12, _reserved_ : 4, } -packet CentralLinkKeyComplete : EventPacket (event_code = CENTRAL_LINK_KEY_COMPLETE){ +packet CentralLinkKeyComplete : Event (event_code = CENTRAL_LINK_KEY_COMPLETE){ status : ErrorCode, connection_handle : 12, _reserved_ : 4, key_flag : KeyFlag, } -packet ReadRemoteSupportedFeaturesComplete : EventPacket (event_code = READ_REMOTE_SUPPORTED_FEATURES_COMPLETE){ +packet ReadRemoteSupportedFeaturesComplete : Event (event_code = READ_REMOTE_SUPPORTED_FEATURES_COMPLETE){ status : ErrorCode, connection_handle : 12, _reserved_ : 4, lmp_features : 64, } -packet ReadRemoteVersionInformationComplete : EventPacket (event_code = READ_REMOTE_VERSION_INFORMATION_COMPLETE){ +packet ReadRemoteVersionInformationComplete : Event (event_code = READ_REMOTE_VERSION_INFORMATION_COMPLETE){ status : ErrorCode, connection_handle : 12, _reserved_ : 4, @@ -3980,7 +3980,7 @@ packet ReadRemoteVersionInformationComplete : EventPacket (event_code = READ_REM sub_version : 16, } -packet QosSetupComplete : EventPacket (event_code = QOS_SETUP_COMPLETE){ +packet QosSetupComplete : Event (event_code = QOS_SETUP_COMPLETE){ status : ErrorCode, connection_handle : 12, _reserved_ : 4, @@ -3994,22 +3994,22 @@ packet QosSetupComplete : EventPacket (event_code = QOS_SETUP_COMPLETE){ // Command Complete and Command Status Events are implemented above Commands. -packet HardwareError : EventPacket (event_code = HARDWARE_ERROR){ +packet HardwareError : Event (event_code = HARDWARE_ERROR){ hardware_code : 8, } -packet FlushOccurred : EventPacket (event_code = FLUSH_OCCURRED){ +packet FlushOccurred : Event (event_code = FLUSH_OCCURRED){ connection_handle : 12, _reserved_ : 4, } -packet RoleChange : EventPacket (event_code = ROLE_CHANGE){ +packet RoleChange : Event (event_code = ROLE_CHANGE){ status : ErrorCode, bd_addr : Address, new_role : Role, } -packet NumberOfCompletedPackets : EventPacket (event_code = NUMBER_OF_COMPLETED_PACKETS){ +packet NumberOfCompletedPackets : Event (event_code = NUMBER_OF_COMPLETED_PACKETS){ _count_(completed_packets) : 8, completed_packets : CompletedPackets[], } @@ -4020,7 +4020,7 @@ enum Mode : 8 { SNIFF = 0x02, } -packet ModeChange : EventPacket (event_code = MODE_CHANGE){ +packet ModeChange : Event (event_code = MODE_CHANGE){ status : ErrorCode, connection_handle : 12, _reserved_ : 4, @@ -4034,16 +4034,16 @@ struct ZeroKeyAndAddress { _fixed_ = 0 : 64, } -packet ReturnLinkKeys : EventPacket (event_code = RETURN_LINK_KEYS){ +packet ReturnLinkKeys : Event (event_code = RETURN_LINK_KEYS){ _count_(keys) : 8, keys : ZeroKeyAndAddress[], } -packet PinCodeRequest : EventPacket (event_code = PIN_CODE_REQUEST){ +packet PinCodeRequest : Event (event_code = PIN_CODE_REQUEST){ bd_addr : Address, } -packet LinkKeyRequest : EventPacket (event_code = LINK_KEY_REQUEST){ +packet LinkKeyRequest : Event (event_code = LINK_KEY_REQUEST){ bd_addr : Address, } @@ -4057,27 +4057,27 @@ enum KeyType : 8 { AUTHENTICATED_P256 = 0x08, } -packet LinkKeyNotification : EventPacket (event_code = LINK_KEY_NOTIFICATION){ +packet LinkKeyNotification : Event (event_code = LINK_KEY_NOTIFICATION){ bd_addr : Address, link_key : 8[16], key_type : KeyType, } -packet LoopbackCommand : EventPacket (event_code = LOOPBACK_COMMAND){ +packet LoopbackCommand : Event (event_code = LOOPBACK_COMMAND){ _payload_, // Command packet, truncated if it was longer than 252 bytes } -packet DataBufferOverflow : EventPacket (event_code = DATA_BUFFER_OVERFLOW){ +packet DataBufferOverflow : Event (event_code = DATA_BUFFER_OVERFLOW){ link_type : LinkType, } -packet MaxSlotsChange : EventPacket (event_code = MAX_SLOTS_CHANGE){ +packet MaxSlotsChange : Event (event_code = MAX_SLOTS_CHANGE){ connection_handle : 12, _reserved_ : 4, lmp_max_slots : 8, } -packet ReadClockOffsetComplete : EventPacket (event_code = READ_CLOCK_OFFSET_COMPLETE){ +packet ReadClockOffsetComplete : Event (event_code = READ_CLOCK_OFFSET_COMPLETE){ status : ErrorCode, connection_handle : 12, _reserved_ : 4, @@ -4085,22 +4085,22 @@ packet ReadClockOffsetComplete : EventPacket (event_code = READ_CLOCK_OFFSET_COM _reserved_ : 1, } -packet ConnectionPacketTypeChanged : EventPacket (event_code = CONNECTION_PACKET_TYPE_CHANGED){ +packet ConnectionPacketTypeChanged : Event (event_code = CONNECTION_PACKET_TYPE_CHANGED){ status : ErrorCode, connection_handle : 12, _reserved_ : 4, packet_type : 16, } -packet QosViolation : EventPacket (event_code = QOS_VIOLATION){ +packet QosViolation : Event (event_code = QOS_VIOLATION){ _payload_, // placeholder (unimplemented) } -packet PageScanRepetitionModeChange : EventPacket (event_code = PAGE_SCAN_REPETITION_MODE_CHANGE){ +packet PageScanRepetitionModeChange : Event (event_code = PAGE_SCAN_REPETITION_MODE_CHANGE){ _payload_, // placeholder (unimplemented) } -packet FlowSpecificationComplete : EventPacket (event_code = FLOW_SPECIFICATION_COMPLETE){ +packet FlowSpecificationComplete : Event (event_code = FLOW_SPECIFICATION_COMPLETE){ status : ErrorCode, connection_handle : 12, _reserved_ : 4, @@ -4123,12 +4123,12 @@ struct InquiryResultWithRssi { rssi : 8, } -packet InquiryResultWithRssi : EventPacket (event_code = INQUIRY_RESULT_WITH_RSSI){ +packet InquiryResultWithRssi : Event (event_code = INQUIRY_RESULT_WITH_RSSI){ _count_(inquiry_results) : 8, inquiry_results : InquiryResultWithRssi[], } -packet ReadRemoteExtendedFeaturesComplete : EventPacket (event_code = READ_REMOTE_EXTENDED_FEATURES_COMPLETE){ +packet ReadRemoteExtendedFeaturesComplete : Event (event_code = READ_REMOTE_EXTENDED_FEATURES_COMPLETE){ status : ErrorCode, connection_handle : 12, _reserved_ : 4, @@ -4137,15 +4137,15 @@ packet ReadRemoteExtendedFeaturesComplete : EventPacket (event_code = READ_REMOT extended_lmp_features : 64, } -packet SynchronousConnectionComplete : EventPacket (event_code = SYNCHRONOUS_CONNECTION_COMPLETE){ +packet SynchronousConnectionComplete : Event (event_code = SYNCHRONOUS_CONNECTION_COMPLETE){ _payload_, // placeholder (unimplemented) } -packet SynchronousConnectionChanged : EventPacket (event_code = SYNCHRONOUS_CONNECTION_CHANGED){ +packet SynchronousConnectionChanged : Event (event_code = SYNCHRONOUS_CONNECTION_CHANGED){ _payload_, // placeholder (unimplemented) } -packet SniffSubratingEvent : EventPacket (event_code = SNIFF_SUBRATING){ +packet SniffSubratingEvent : Event (event_code = SNIFF_SUBRATING){ status : ErrorCode, connection_handle : 12, _reserved_ : 4, @@ -4155,7 +4155,7 @@ packet SniffSubratingEvent : EventPacket (event_code = SNIFF_SUBRATING){ minimum_local_timeout : 16, // 0x000 - 0xFFFE (0s - 40.9s) } -packet ExtendedInquiryResult : EventPacket (event_code = EXTENDED_INQUIRY_RESULT) { +packet ExtendedInquiryResult : Event (event_code = EXTENDED_INQUIRY_RESULT) { _fixed_ = 0x01 : 8, address : Address, page_scan_repetition_mode : PageScanRepetitionMode, @@ -4167,43 +4167,43 @@ packet ExtendedInquiryResult : EventPacket (event_code = EXTENDED_INQUIRY_RESULT extended_inquiry_response : GapData[], } -packet EncryptionKeyRefreshComplete : EventPacket (event_code = ENCRYPTION_KEY_REFRESH_COMPLETE){ +packet EncryptionKeyRefreshComplete : Event (event_code = ENCRYPTION_KEY_REFRESH_COMPLETE){ status : ErrorCode, connection_handle : 12, _reserved_ : 4, } -packet IoCapabilityRequest : EventPacket (event_code = IO_CAPABILITY_REQUEST){ +packet IoCapabilityRequest : Event (event_code = IO_CAPABILITY_REQUEST){ bd_addr : Address, } -packet IoCapabilityResponse : EventPacket (event_code = IO_CAPABILITY_RESPONSE){ +packet IoCapabilityResponse : Event (event_code = IO_CAPABILITY_RESPONSE){ bd_addr : Address, io_capability : IoCapability, oob_data_present : OobDataPresent, authentication_requirements : AuthenticationRequirements, } -packet UserConfirmationRequest : EventPacket (event_code = USER_CONFIRMATION_REQUEST){ +packet UserConfirmationRequest : Event (event_code = USER_CONFIRMATION_REQUEST){ bd_addr : Address, numeric_value : 20, // 0x00000-0xF423F (000000 - 999999) _reserved_ : 12, } -packet UserPasskeyRequest : EventPacket (event_code = USER_PASSKEY_REQUEST){ +packet UserPasskeyRequest : Event (event_code = USER_PASSKEY_REQUEST){ bd_addr : Address, } -packet RemoteOobDataRequest : EventPacket (event_code = REMOTE_OOB_DATA_REQUEST){ +packet RemoteOobDataRequest : Event (event_code = REMOTE_OOB_DATA_REQUEST){ bd_addr : Address, } -packet SimplePairingComplete : EventPacket (event_code = SIMPLE_PAIRING_COMPLETE){ +packet SimplePairingComplete : Event (event_code = SIMPLE_PAIRING_COMPLETE){ status : ErrorCode, bd_addr : Address, } -packet LinkSupervisionTimeoutChanged : EventPacket (event_code = LINK_SUPERVISION_TIMEOUT_CHANGED){ +packet LinkSupervisionTimeoutChanged : Event (event_code = LINK_SUPERVISION_TIMEOUT_CHANGED){ connection_handle : 12, _reserved_ : 4, link_supervision_timeout : 16, // 0x001-0xFFFF (0.625ms-40.9s) @@ -4222,33 +4222,33 @@ packet EnhancedFlush : Command (op_code = ENHANCED_FLUSH){ packet EnhancedFlushStatus : CommandStatus (command_op_code = ENHANCED_FLUSH){ } -packet EnhancedFlushComplete : EventPacket (event_code = ENHANCED_FLUSH_COMPLETE){ +packet EnhancedFlushComplete : Event (event_code = ENHANCED_FLUSH_COMPLETE){ connection_handle : 12, _reserved_ : 4, } -packet UserPasskeyNotification : EventPacket (event_code = USER_PASSKEY_NOTIFICATION){ +packet UserPasskeyNotification : Event (event_code = USER_PASSKEY_NOTIFICATION){ bd_addr : Address, passkey : 20, // 0x00000-0xF423F (000000 - 999999) _reserved_ : 12, } -packet KeypressNotification : EventPacket (event_code = KEYPRESS_NOTIFICATION){ +packet KeypressNotification : Event (event_code = KEYPRESS_NOTIFICATION){ bd_addr : Address, notification_type : KeypressNotificationType, } -packet RemoteHostSupportedFeaturesNotification : EventPacket (event_code = REMOTE_HOST_SUPPORTED_FEATURES_NOTIFICATION){ +packet RemoteHostSupportedFeaturesNotification : Event (event_code = REMOTE_HOST_SUPPORTED_FEATURES_NOTIFICATION){ bd_addr : Address, host_supported_features : 64, } -packet LeMetaEvent : EventPacket (event_code = LE_META_EVENT) { +packet LeMetaEvent : Event (event_code = LE_META_EVENT) { subevent_code : SubeventCode, _body_, } -packet NumberOfCompletedDataBlocks : EventPacket (event_code = NUMBER_OF_COMPLETED_DATA_BLOCKS){ +packet NumberOfCompletedDataBlocks : Event (event_code = NUMBER_OF_COMPLETED_DATA_BLOCKS){ _payload_, // placeholder (unimplemented) } @@ -4615,7 +4615,7 @@ packet LeBigInfoAdvertisingReport : LeMetaEvent (subevent_code = BIG_INFO_ADVERT // Vendor specific events -packet VendorSpecificEvent : EventPacket (event_code = VENDOR_SPECIFIC) { +packet VendorSpecificEvent : Event (event_code = VENDOR_SPECIFIC) { subevent_code : VseSubeventCode, _payload_, } diff --git a/gd/hci/hci_packets_test.cc b/gd/hci/hci_packets_test.cc index bf09d431a..25147be1b 100644 --- a/gd/hci/hci_packets_test.cc +++ b/gd/hci/hci_packets_test.cc @@ -314,8 +314,8 @@ std::vector le_get_vendor_capabilities_complete{ TEST(HciPacketsTest, testLeGetVendorCapabilitiesComplete) { PacketView packet_bytes_view( std::make_shared>(le_get_vendor_capabilities_complete)); - auto view = LeGetVendorCapabilitiesCompleteView::Create( - CommandCompleteView::Create(EventPacketView::Create(packet_bytes_view))); + auto view = + LeGetVendorCapabilitiesCompleteView::Create(CommandCompleteView::Create(EventView::Create(packet_bytes_view))); ASSERT_TRUE(view.IsValid()); auto base_capabilities = view.GetBaseVendorCapabilities(); @@ -536,7 +536,7 @@ TEST(HciPacketsTest, testLeSetExtendedAdvertisingParametersComplete) { std::make_shared>(le_set_extended_advertising_parameters_complete); PacketView packet_bytes_view(packet_bytes); auto view = LeSetExtendedAdvertisingParametersCompleteView::Create( - CommandCompleteView::Create(EventPacketView::Create(packet_bytes_view))); + CommandCompleteView::Create(EventView::Create(packet_bytes_view))); ASSERT_TRUE(view.IsValid()); ASSERT_EQ(static_cast(-11), view.GetSelectedTxPower()); } diff --git a/gd/hci/le_address_manager_test.cc b/gd/hci/le_address_manager_test.cc index 55c579b5c..febff37ab 100644 --- a/gd/hci/le_address_manager_test.cc +++ b/gd/hci/le_address_manager_test.cc @@ -90,14 +90,14 @@ class TestHciLayer : public HciLayer { return command_packet_view; } - void IncomingEvent(std::unique_ptr event_builder) { + void IncomingEvent(std::unique_ptr event_builder) { auto packet = GetPacketView(std::move(event_builder)); - EventPacketView event = EventPacketView::Create(packet); + EventView event = EventView::Create(packet); ASSERT_TRUE(event.IsValid()); CommandCompleteCallback(event); } - void CommandCompleteCallback(EventPacketView event) { + void CommandCompleteCallback(EventView event) { CommandCompleteView complete_view = CommandCompleteView::Create(event); ASSERT_TRUE(complete_view.IsValid()); std::move(command_complete_callbacks.front()).Invoke(complete_view); diff --git a/gd/hci/le_advertising_manager_test.cc b/gd/hci/le_advertising_manager_test.cc index d610fee18..85e109c4a 100644 --- a/gd/hci/le_advertising_manager_test.cc +++ b/gd/hci/le_advertising_manager_test.cc @@ -164,8 +164,7 @@ class TestHciLayer : public HciLayer { return command; } - void RegisterEventHandler(EventCode event_code, - common::ContextualCallback event_handler) override { + void RegisterEventHandler(EventCode event_code, common::ContextualCallback event_handler) override { registered_events_[event_code] = event_handler; } @@ -174,9 +173,9 @@ class TestHciLayer : public HciLayer { registered_le_events_[subevent_code] = event_handler; } - void IncomingEvent(std::unique_ptr event_builder) { + void IncomingEvent(std::unique_ptr event_builder) { auto packet = GetPacketView(std::move(event_builder)); - EventPacketView event = EventPacketView::Create(packet); + EventView event = EventView::Create(packet); ASSERT_TRUE(event.IsValid()); EventCode event_code = event.GetEventCode(); ASSERT_NE(registered_events_.find(event_code), registered_events_.end()) << EventCodeText(event_code); @@ -185,7 +184,7 @@ class TestHciLayer : public HciLayer { void IncomingLeMetaEvent(std::unique_ptr event_builder) { auto packet = GetPacketView(std::move(event_builder)); - EventPacketView event = EventPacketView::Create(packet); + EventView event = EventView::Create(packet); LeMetaEventView meta_event_view = LeMetaEventView::Create(event); ASSERT_TRUE(meta_event_view.IsValid()); SubeventCode subevent_code = meta_event_view.GetSubeventCode(); @@ -194,14 +193,14 @@ class TestHciLayer : public HciLayer { registered_le_events_[subevent_code].Invoke(meta_event_view); } - void CommandCompleteCallback(EventPacketView event) { + void CommandCompleteCallback(EventView event) { CommandCompleteView complete_view = CommandCompleteView::Create(event); ASSERT_TRUE(complete_view.IsValid()); std::move(command_complete_callbacks.front()).Invoke(complete_view); command_complete_callbacks.pop_front(); } - void CommandStatusCallback(EventPacketView event) { + void CommandStatusCallback(EventView event) { CommandStatusView status_view = CommandStatusView::Create(event); ASSERT_TRUE(status_view.IsValid()); std::move(command_status_callbacks.front()).Invoke(status_view); @@ -217,7 +216,7 @@ class TestHciLayer : public HciLayer { void Stop() override {} private: - std::map> registered_events_; + std::map> registered_events_; std::map> registered_le_events_; std::list> command_complete_callbacks; std::list> command_status_callbacks; diff --git a/gd/hci/le_scanning_manager_test.cc b/gd/hci/le_scanning_manager_test.cc index 2155287ac..eebb93680 100644 --- a/gd/hci/le_scanning_manager_test.cc +++ b/gd/hci/le_scanning_manager_test.cc @@ -114,8 +114,7 @@ class TestHciLayer : public HciLayer { return command; } - void RegisterEventHandler(EventCode event_code, - common::ContextualCallback event_handler) override { + void RegisterEventHandler(EventCode event_code, common::ContextualCallback event_handler) override { registered_events_[event_code] = event_handler; } @@ -124,9 +123,9 @@ class TestHciLayer : public HciLayer { registered_le_events_[subevent_code] = event_handler; } - void IncomingEvent(std::unique_ptr event_builder) { + void IncomingEvent(std::unique_ptr event_builder) { auto packet = GetPacketView(std::move(event_builder)); - EventPacketView event = EventPacketView::Create(packet); + EventView event = EventView::Create(packet); ASSERT_TRUE(event.IsValid()); EventCode event_code = event.GetEventCode(); ASSERT_NE(registered_events_.find(event_code), registered_events_.end()) << EventCodeText(event_code); @@ -135,7 +134,7 @@ class TestHciLayer : public HciLayer { void IncomingLeMetaEvent(std::unique_ptr event_builder) { auto packet = GetPacketView(std::move(event_builder)); - EventPacketView event = EventPacketView::Create(packet); + EventView event = EventView::Create(packet); LeMetaEventView meta_event_view = LeMetaEventView::Create(event); ASSERT_TRUE(meta_event_view.IsValid()); SubeventCode subevent_code = meta_event_view.GetSubeventCode(); @@ -144,14 +143,14 @@ class TestHciLayer : public HciLayer { registered_le_events_[subevent_code].Invoke(meta_event_view); } - void CommandCompleteCallback(EventPacketView event) { + void CommandCompleteCallback(EventView event) { CommandCompleteView complete_view = CommandCompleteView::Create(event); ASSERT_TRUE(complete_view.IsValid()); std::move(command_complete_callbacks.front()).Invoke(complete_view); command_complete_callbacks.pop_front(); } - void CommandStatusCallback(EventPacketView event) { + void CommandStatusCallback(EventView event) { CommandStatusView status_view = CommandStatusView::Create(event); ASSERT_TRUE(status_view.IsValid()); std::move(command_status_callbacks.front()).Invoke(status_view); @@ -167,7 +166,7 @@ class TestHciLayer : public HciLayer { void Stop() override {} private: - std::map> registered_events_; + std::map> registered_events_; std::map> registered_le_events_; std::list> command_complete_callbacks; std::list> command_status_callbacks; diff --git a/gd/neighbor/facade/facade.cc b/gd/neighbor/facade/facade.cc index 54d00e404..1a7aef06d 100644 --- a/gd/neighbor/facade/facade.cc +++ b/gd/neighbor/facade/facade.cc @@ -176,7 +176,7 @@ class NeighborFacadeService : public NeighborFacade::Service { } private: - void on_incoming_inquiry_result(hci::EventPacketView view) { + void on_incoming_inquiry_result(hci::EventView view) { InquiryResultMsg inquiry_result_msg; inquiry_result_msg.set_packet(std::string(view.begin(), view.end())); pending_events_.OnIncomingEvent(std::move(inquiry_result_msg)); diff --git a/gd/neighbor/inquiry.cc b/gd/neighbor/inquiry.cc index f835c792c..332a047a4 100644 --- a/gd/neighbor/inquiry.cc +++ b/gd/neighbor/inquiry.cc @@ -85,7 +85,7 @@ struct InquiryModule::impl { void EnqueueCommandCompleteSync(std::unique_ptr command); void OnCommandCompleteSync(hci::CommandCompleteView view); - void OnEvent(hci::EventPacketView view); + void OnEvent(hci::EventView view); std::promise* command_sync_{nullptr}; @@ -194,7 +194,7 @@ void neighbor::InquiryModule::impl::OnCommandStatus(hci::CommandStatusView statu } } -void neighbor::InquiryModule::impl::OnEvent(hci::EventPacketView view) { +void neighbor::InquiryModule::impl::OnEvent(hci::EventView view) { switch (view.GetEventCode()) { case hci::EventCode::INQUIRY_COMPLETE: { auto packet = hci::InquiryCompleteView::Create(view); diff --git a/gd/neighbor/inquiry_test.cc b/gd/neighbor/inquiry_test.cc index eed46caf9..80ac0127f 100644 --- a/gd/neighbor/inquiry_test.cc +++ b/gd/neighbor/inquiry_test.cc @@ -188,7 +188,7 @@ class TestHciLayer : public hci::HciLayer { LOG_INFO("Dropping unhandled command:%s", hci::OpCodeText(command.GetOpCode()).c_str()); return; } - hci::EventPacketView event = hci::EventPacketView::Create(GetPacketView(std::move(event_builder))); + hci::EventView event = hci::EventView::Create(GetPacketView(std::move(event_builder))); ASSERT_TRUE(event.IsValid()); hci::CommandCompleteView command_complete = hci::CommandCompleteView::Create(event); ASSERT_TRUE(command_complete.IsValid()); @@ -219,7 +219,7 @@ class TestHciLayer : public hci::HciLayer { LOG_INFO("Dropping unhandled status expecting command:%s", hci::OpCodeText(command.GetOpCode()).c_str()); return; } - hci::EventPacketView event = hci::EventPacketView::Create(GetPacketView(std::move(event_builder))); + hci::EventView event = hci::EventView::Create(GetPacketView(std::move(event_builder))); ASSERT_TRUE(event.IsValid()); hci::CommandStatusView command_status = hci::CommandStatusView::Create(event); ASSERT_TRUE(command_status.IsValid()); @@ -231,7 +231,7 @@ class TestHciLayer : public hci::HciLayer { } void RegisterEventHandler( - hci::EventCode event_code, common::ContextualCallback event_handler) override { + hci::EventCode event_code, common::ContextualCallback event_handler) override { switch (event_code) { case hci::EventCode::INQUIRY_RESULT: inquiry_result_callback_ = event_handler; @@ -289,7 +289,7 @@ class TestHciLayer : public hci::HciLayer { } void InjectInquiryResult(std::unique_ptr result) { - hci::EventPacketView view = hci::EventPacketView::Create(GetPacketView(std::move(result))); + hci::EventView view = hci::EventView::Create(GetPacketView(std::move(result))); ASSERT_TRUE(view.IsValid()); inquiry_result_callback_.Invoke(std::move(view)); } @@ -301,10 +301,10 @@ class TestHciLayer : public hci::HciLayer { private: std::promise* promise_sync_complete_{nullptr}; - common::ContextualCallback inquiry_result_callback_; - common::ContextualCallback inquiry_result_with_rssi_callback_; - common::ContextualCallback extended_inquiry_result_callback_; - common::ContextualCallback inquiry_complete_callback_; + common::ContextualCallback inquiry_result_callback_; + common::ContextualCallback inquiry_result_with_rssi_callback_; + common::ContextualCallback extended_inquiry_result_callback_; + common::ContextualCallback inquiry_complete_callback_; }; class InquiryTest : public ::testing::Test { diff --git a/gd/neighbor/name.cc b/gd/neighbor/name.cc index 2984c3064..3a7cb640f 100644 --- a/gd/neighbor/name.cc +++ b/gd/neighbor/name.cc @@ -66,7 +66,7 @@ struct NameModule::impl { void OnCommandComplete(hci::CommandCompleteView view); void OnCommandStatus(hci::CommandStatusView status); - void OnEvent(hci::EventPacketView view); + void OnEvent(hci::EventView view); std::unordered_map> read_callback_handler_map_; std::unordered_map> cancel_callback_handler_map_; @@ -118,7 +118,7 @@ void neighbor::NameModule::impl::OnCommandStatus(hci::CommandStatusView status) } } -void neighbor::NameModule::impl::OnEvent(hci::EventPacketView view) { +void neighbor::NameModule::impl::OnEvent(hci::EventView view) { switch (view.GetEventCode()) { case hci::EventCode::REMOTE_NAME_REQUEST_COMPLETE: { auto packet = hci::RemoteNameRequestCompleteView::Create(view); diff --git a/gd/security/channel/security_manager_channel.cc b/gd/security/channel/security_manager_channel.cc index b24a7e5a8..696956e1d 100644 --- a/gd/security/channel/security_manager_channel.cc +++ b/gd/security/channel/security_manager_channel.cc @@ -85,7 +85,7 @@ void SecurityManagerChannel::SendCommand( hci_security_interface_->EnqueueCommand(std::move(command), std::forward(callback)); } -void SecurityManagerChannel::OnHciEventReceived(hci::EventPacketView packet) { +void SecurityManagerChannel::OnHciEventReceived(hci::EventView packet) { ASSERT_LOG(listener_ != nullptr, "No listener set!"); ASSERT(packet.IsValid()); listener_->OnHciEventReceived(packet); diff --git a/gd/security/channel/security_manager_channel.h b/gd/security/channel/security_manager_channel.h index de852407d..a0a15b120 100644 --- a/gd/security/channel/security_manager_channel.h +++ b/gd/security/channel/security_manager_channel.h @@ -41,7 +41,7 @@ using SecurityCommandStatusCallback = common::ContextualOnceCallbacksecond->OnReceive(packet); } -void SecurityManagerImpl::OnHciEventReceived(hci::EventPacketView packet) { - auto event = hci::EventPacketView::Create(packet); +void SecurityManagerImpl::OnHciEventReceived(hci::EventView packet) { + auto event = hci::EventView::Create(packet); ASSERT_LOG(event.IsValid(), "Received invalid packet"); const hci::EventCode code = event.GetEventCode(); switch (code) { diff --git a/gd/security/internal/security_manager_impl.h b/gd/security/internal/security_manager_impl.h index 854e246a0..29b423f9a 100644 --- a/gd/security/internal/security_manager_impl.h +++ b/gd/security/internal/security_manager_impl.h @@ -160,7 +160,7 @@ class SecurityManagerImpl : public channel::ISecurityManagerChannelListener, pub * * @param packet data received from HCI */ - void OnHciEventReceived(hci::EventPacketView packet) override; + void OnHciEventReceived(hci::EventView packet) override; /** * When a conncetion closes we should clean up the pairing handler diff --git a/gd/security/pairing/classic_pairing_handler_unittest.cc b/gd/security/pairing/classic_pairing_handler_unittest.cc index 9d72aefd5..4385cff0b 100644 --- a/gd/security/pairing/classic_pairing_handler_unittest.cc +++ b/gd/security/pairing/classic_pairing_handler_unittest.cc @@ -86,8 +86,8 @@ class SecurityManagerChannelCallback : public channel::ISecurityManagerChannelLi public: explicit SecurityManagerChannelCallback(pairing::ClassicPairingHandler* pairing_handler) : pairing_handler_(pairing_handler) {} - void OnHciEventReceived(hci::EventPacketView packet) override { - auto event = hci::EventPacketView::Create(packet); + void OnHciEventReceived(hci::EventView packet) override { + auto event = hci::EventView::Create(packet); ASSERT_LOG(event.IsValid(), "Received invalid packet"); const hci::EventCode code = event.GetEventCode(); switch (code) { diff --git a/gd/security/pairing_handler_le.h b/gd/security/pairing_handler_le.h index f6b00815f..051ce34c8 100644 --- a/gd/security/pairing_handler_le.h +++ b/gd/security/pairing_handler_le.h @@ -68,7 +68,7 @@ class PairingEvent { std::optional l2cap_packet; - std::optional hci_event; + std::optional hci_event; enum UI_ACTION_TYPE { PAIRING_ACCEPTED, CONFIRM_YESNO, PASSKEY }; UI_ACTION_TYPE ui_action; @@ -77,7 +77,7 @@ class PairingEvent { PairingEvent(TYPE type) : type(type) {} PairingEvent(CommandView l2cap_packet) : type(L2CAP), l2cap_packet(l2cap_packet) {} PairingEvent(UI_ACTION_TYPE ui_action, uint32_t ui_value) : type(UI), ui_action(ui_action), ui_value(ui_value) {} - PairingEvent(hci::EventPacketView hci_event) : type(HCI_EVENT), hci_event(hci_event) {} + PairingEvent(hci::EventView hci_event) : type(HCI_EVENT), hci_event(hci_event) {} }; constexpr int SMP_TIMEOUT = 30; @@ -273,7 +273,7 @@ class PairingHandlerLe { } /* SMP Command received from remote device */ - void OnHciEvent(hci::EventPacketView hci_event) { + void OnHciEvent(hci::EventView hci_event) { { std::unique_lock lock(queue_guard); queue.push(PairingEvent(std::move(hci_event))); diff --git a/gd/security/test/fake_hci_layer.h b/gd/security/test/fake_hci_layer.h index fd3bd87c6..6ffd1c2f5 100644 --- a/gd/security/test/fake_hci_layer.h +++ b/gd/security/test/fake_hci_layer.h @@ -25,9 +25,9 @@ namespace security { using common::ContextualOnceCallback; using hci::CommandCompleteView; using hci::CommandStatusView; +using hci::EventBuilder; using hci::EventCode; -using hci::EventPacketBuilder; -using hci::EventPacketView; +using hci::EventView; using hci::HciLayer; namespace { @@ -83,8 +83,7 @@ class FakeHciLayer : public HciLayer { return last; } - void RegisterEventHandler(EventCode event_code, - common::ContextualCallback event_handler) override { + void RegisterEventHandler(EventCode event_code, common::ContextualCallback event_handler) override { registered_events_[event_code] = event_handler; } @@ -92,9 +91,9 @@ class FakeHciLayer : public HciLayer { registered_events_.erase(event_code); } - void IncomingEvent(std::unique_ptr event_builder) { + void IncomingEvent(std::unique_ptr event_builder) { auto packet = GetPacketView(std::move(event_builder)); - EventPacketView event = EventPacketView::Create(packet); + EventView event = EventView::Create(packet); ASSERT_TRUE(event.IsValid()); EventCode event_code = event.GetEventCode(); ASSERT_TRUE(registered_events_.find(event_code) != registered_events_.end()); @@ -106,7 +105,7 @@ class FakeHciLayer : public HciLayer { void Stop() override {} private: - std::map> registered_events_; + std::map> registered_events_; std::queue> command_queue_; }; diff --git a/gd/security/test/fake_l2cap_test.cc b/gd/security/test/fake_l2cap_test.cc index 2d885e778..23b2555fc 100644 --- a/gd/security/test/fake_l2cap_test.cc +++ b/gd/security/test/fake_l2cap_test.cc @@ -42,8 +42,8 @@ using bluetooth::hci::CommandStatusView; using bluetooth::hci::EncryptionChangeBuilder; using bluetooth::hci::EncryptionEnabled; using bluetooth::hci::ErrorCode; -using bluetooth::hci::EventPacketBuilder; -using bluetooth::hci::EventPacketView; +using bluetooth::hci::EventBuilder; +using bluetooth::hci::EventView; using bluetooth::hci::LeSecurityCommandBuilder; namespace bluetooth { diff --git a/gd/security/test/pairing_handler_le_pair_test.cc b/gd/security/test/pairing_handler_le_pair_test.cc index 397ad4f6e..434e63809 100644 --- a/gd/security/test/pairing_handler_le_pair_test.cc +++ b/gd/security/test/pairing_handler_le_pair_test.cc @@ -41,8 +41,8 @@ using bluetooth::hci::CommandStatusView; using bluetooth::hci::EncryptionChangeBuilder; using bluetooth::hci::EncryptionEnabled; using bluetooth::hci::ErrorCode; -using bluetooth::hci::EventPacketBuilder; -using bluetooth::hci::EventPacketView; +using bluetooth::hci::EventBuilder; +using bluetooth::hci::EventView; using bluetooth::hci::LeSecurityCommandBuilder; // run: @@ -61,13 +61,13 @@ CommandView CommandBuilderToView(std::unique_ptr builder) { return CommandView::Create(temp_cmd_view); } -EventPacketView EventBuilderToView(std::unique_ptr builder) { +EventView EventBuilderToView(std::unique_ptr builder) { std::shared_ptr> packet_bytes = std::make_shared>(); BitInserter it(*packet_bytes); builder->Serialize(it); PacketView packet_bytes_view(packet_bytes); - auto temp_evt_view = EventPacketView::Create(packet_bytes_view); - return EventPacketView::Create(temp_evt_view); + auto temp_evt_view = EventView::Create(packet_bytes_view); + return EventView::Create(temp_evt_view); } } // namespace security } // namespace bluetooth diff --git a/main/shim/hci_layer.cc b/main/shim/hci_layer.cc index ef1fff75c..5b4711c9c 100644 --- a/main/shim/hci_layer.cc +++ b/main/shim/hci_layer.cc @@ -364,7 +364,7 @@ static BT_HDR* WrapPacketAndCopy( return packet; } -static void event_callback(bluetooth::hci::EventPacketView event_packet_view) { +static void event_callback(bluetooth::hci::EventView event_packet_view) { if (!send_data_upwards) { return; } diff --git a/vendor_libs/test_vendor_lib/model/controller/dual_mode_controller.cc b/vendor_libs/test_vendor_lib/model/controller/dual_mode_controller.cc index f68526006..7a8934225 100644 --- a/vendor_libs/test_vendor_lib/model/controller/dual_mode_controller.cc +++ b/vendor_libs/test_vendor_lib/model/controller/dual_mode_controller.cc @@ -72,7 +72,7 @@ void DualModeController::SendCommandCompleteUnknownOpCodeEvent(uint16_t command_ raw_builder_ptr->AddOctets1( static_cast(ErrorCode::UNKNOWN_HCI_COMMAND)); - auto packet = gd_hci::EventPacketBuilder::Create( + auto packet = gd_hci::EventBuilder::Create( gd_hci::EventCode::COMMAND_COMPLETE, std::move(raw_builder_ptr)); send_event_(std::move(packet)); } @@ -388,7 +388,7 @@ void DualModeController::HandleCommand(std::shared_ptr> pac void DualModeController::RegisterEventChannel( const std::function>)>& callback) { send_event_ = - [callback](std::shared_ptr event) { + [callback](std::shared_ptr event) { auto bytes = std::make_shared>(); bluetooth::packet::BitInserter bit_inserter(*bytes); bytes->reserve(event->size()); diff --git a/vendor_libs/test_vendor_lib/model/controller/dual_mode_controller.h b/vendor_libs/test_vendor_lib/model/controller/dual_mode_controller.h index d68139770..94dce6213 100644 --- a/vendor_libs/test_vendor_lib/model/controller/dual_mode_controller.h +++ b/vendor_libs/test_vendor_lib/model/controller/dual_mode_controller.h @@ -561,7 +561,7 @@ class DualModeController : public Device { // Callbacks to send packets back to the HCI. std::function)> send_acl_; - std::function)> + std::function)> send_event_; std::function>)> send_sco_; std::function>)> send_iso_; diff --git a/vendor_libs/test_vendor_lib/model/controller/link_layer_controller.cc b/vendor_libs/test_vendor_lib/model/controller/link_layer_controller.cc index c5fa57614..d961d5edc 100644 --- a/vendor_libs/test_vendor_lib/model/controller/link_layer_controller.cc +++ b/vendor_libs/test_vendor_lib/model/controller/link_layer_controller.cc @@ -697,7 +697,7 @@ void LinkLayerController::IncomingInquiryResponsePacket( raw_builder_ptr->AddOctets1(inquiry_response.GetRssi()); raw_builder_ptr->AddOctets(inquiry_response.GetExtendedData()); - auto packet = bluetooth::hci::EventPacketBuilder::Create( + auto packet = bluetooth::hci::EventBuilder::Create( bluetooth::hci::EventCode::EXTENDED_INQUIRY_RESULT, std::move(raw_builder_ptr)); send_event_(std::move(packet)); @@ -1016,7 +1016,7 @@ void LinkLayerController::IncomingLeAdvertisementPacket( raw_builder_ptr->AddOctets1(ad.size()); raw_builder_ptr->AddOctets(ad); raw_builder_ptr->AddOctets1(GetRssi()); - auto packet = bluetooth::hci::EventPacketBuilder::Create( + auto packet = bluetooth::hci::EventBuilder::Create( bluetooth::hci::EventCode::LE_META_EVENT, std::move(raw_builder_ptr)); send_event_(std::move(packet)); } @@ -1059,7 +1059,7 @@ void LinkLayerController::IncomingLeAdvertisementPacket( raw_builder_ptr->AddAddress(Address::kEmpty); // Direct_Address raw_builder_ptr->AddOctets1(ad.size()); raw_builder_ptr->AddOctets(ad); - send_event_(bluetooth::hci::EventPacketBuilder::Create( + send_event_(bluetooth::hci::EventBuilder::Create( bluetooth::hci::EventCode::LE_META_EVENT, std::move(raw_builder_ptr))); } @@ -1288,7 +1288,7 @@ void LinkLayerController::IncomingLeScanResponsePacket( raw_builder_ptr->AddOctets1(ad.size()); raw_builder_ptr->AddOctets(ad); raw_builder_ptr->AddOctets1(GetRssi()); - auto packet = bluetooth::hci::EventPacketBuilder::Create( + auto packet = bluetooth::hci::EventBuilder::Create( bluetooth::hci::EventCode::LE_META_EVENT, std::move(raw_builder_ptr)); send_event_(std::move(packet)); } @@ -1312,7 +1312,7 @@ void LinkLayerController::IncomingLeScanResponsePacket( raw_builder_ptr->AddAddress(Address::kEmpty); // Direct_Address raw_builder_ptr->AddOctets1(ad.size()); raw_builder_ptr->AddOctets(ad); - auto packet = bluetooth::hci::EventPacketBuilder::Create( + auto packet = bluetooth::hci::EventBuilder::Create( bluetooth::hci::EventCode::LE_META_EVENT, std::move(raw_builder_ptr)); send_event_(std::move(packet)); } @@ -1414,8 +1414,8 @@ void LinkLayerController::LeAdvertising() { } void LinkLayerController::RegisterEventChannel( - const std::function< - void(std::shared_ptr)>& callback) { + const std::function)>& + callback) { send_event_ = callback; } diff --git a/vendor_libs/test_vendor_lib/model/controller/link_layer_controller.h b/vendor_libs/test_vendor_lib/model/controller/link_layer_controller.h index 949390de6..5ca7a29a7 100644 --- a/vendor_libs/test_vendor_lib/model/controller/link_layer_controller.h +++ b/vendor_libs/test_vendor_lib/model/controller/link_layer_controller.h @@ -106,8 +106,8 @@ class LinkLayerController { // Set the callbacks for sending packets to the HCI. void RegisterEventChannel( - const std::function)>& send_event); + const std::function)>& + send_event); void RegisterAclChannel( const std::function< @@ -412,7 +412,7 @@ class LinkLayerController { // Callbacks to send packets back to the HCI. std::function)> send_acl_; - std::function)> + std::function)> send_event_; std::function>)> send_sco_; std::function>)> send_iso_; diff --git a/vendor_libs/test_vendor_lib/model/devices/car_kit.cc b/vendor_libs/test_vendor_lib/model/devices/car_kit.cc index 798a7603d..fe351ddfd 100644 --- a/vendor_libs/test_vendor_lib/model/devices/car_kit.cc +++ b/vendor_libs/test_vendor_lib/model/devices/car_kit.cc @@ -34,7 +34,7 @@ CarKit::CarKit() : Device(kCarKitPropertiesFile) { link_layer_controller_.RegisterAclChannel( [](std::shared_ptr) {}); link_layer_controller_.RegisterEventChannel( - [](std::shared_ptr) {}); + [](std::shared_ptr) {}); link_layer_controller_.RegisterScoChannel([](std::shared_ptr>) {}); link_layer_controller_.RegisterRemoteChannel( [this](std::shared_ptr packet, -- 2.11.0