Loading system/btif/src/btif_debug_btsnoop.cc +4 −0 Original line number Diff line number Diff line Loading @@ -120,6 +120,10 @@ static size_t btsnoop_calculate_packet_length(uint16_t type, return len_hci_acl < length ? len_hci_acl : length; } case BT_EVT_TO_LM_HCI_ISO: case BT_EVT_TO_BTU_HCI_ISO: return length; case BT_EVT_TO_LM_HCI_SCO: case BT_EVT_TO_BTU_HCI_SCO: // We're not logging SCO packets at this time since they are not currently Loading system/gd/Android.bp +22 −0 Original line number Diff line number Diff line Loading @@ -448,6 +448,28 @@ genrule { ], } genrule { name: "BluetoothGeneratedPackets_rust", tools: [ "bluetooth_packetgen", ], cmd: "$(location bluetooth_packetgen) --include=packages/modules/Bluetooth/system/gd --out=$(genDir) $(in) --rust", srcs: [ "hci/hci_packets.pdl", ], out: [ "hci/hci_packets.rs", ], } rust_library { name: "libbt_packets", crate_name: "bt_packets", srcs: ["rust/packets/lib.rs", ":BluetoothGeneratedPackets_rust"], edition: "2018", host_supported: true, } // Generates binary schema data to be bundled and source file generated genrule { name: "BluetoothGeneratedDumpsysBinarySchema_bfbs", Loading system/gd/hci/hci_packets.pdl +2 −2 Original line number Diff line number Diff line Loading @@ -4622,7 +4622,7 @@ packet VendorSpecificEvent : EventPacket (event_code = VENDOR_SPECIFIC) { _payload_, } enum qualityReportId : 8 { enum QualityReportId : 8 { MONITOR_MODE = 0x01, APPROACH_LSTO = 0x02, A2DP_AUDIO_CHOPPY = 0x03, Loading @@ -4634,7 +4634,7 @@ enum qualityReportId : 8 { } packet BqrEvent : VendorSpecificEvent (subevent_code = BQR_EVENT) { quality_report_id : qualityReportId, quality_report_id : QualityReportId, _payload_, } Loading system/gd/l2cap/classic/internal/signalling_manager.cc +1 −1 Original line number Diff line number Diff line Loading @@ -120,7 +120,7 @@ void ClassicSignallingManager::on_security_result_for_outgoing( dynamic_service_manager_->GetService(psm)->GetSecurityPolicy() != SecurityPolicy::_SDP_ONLY_NO_SECURITY_WHATSOEVER_PLAINTEXT_TRANSPORT_OK) { link_->Encrypt(); return; // TODO(b/171253721): If we can receive ENCRYPTION_CHANGE event, we can send command after callback is received. } PendingCommand pending_command = {next_signal_id_, CommandCode::CONNECTION_REQUEST, psm, local_cid, {}, {}, {}}; Loading system/gd/packet/parser/declarations.h +4 −4 Original line number Diff line number Diff line Loading @@ -47,7 +47,7 @@ class Declarations { return it->second; } void AddPacketDef(std::string name, PacketDef def) { void AddPacketDef(std::string name, PacketDef* def) { auto it = packet_defs_.find(name); if (it != packet_defs_.end()) { ERROR() << "Redefinition of Packet " << name; Loading @@ -62,7 +62,7 @@ class Declarations { return nullptr; } return &(it->second); return it->second; } void AddGroupDef(std::string name, FieldList* group_def) { Loading @@ -85,7 +85,7 @@ class Declarations { std::map<std::string, TypeDef*> type_defs_; std::deque<std::pair<std::string, TypeDef*>> type_defs_queue_; std::map<std::string, PacketDef> packet_defs_; std::deque<std::pair<std::string, PacketDef>> packet_defs_queue_; std::map<std::string, PacketDef*> packet_defs_; std::deque<std::pair<std::string, PacketDef*>> packet_defs_queue_; bool is_little_endian; }; Loading
system/btif/src/btif_debug_btsnoop.cc +4 −0 Original line number Diff line number Diff line Loading @@ -120,6 +120,10 @@ static size_t btsnoop_calculate_packet_length(uint16_t type, return len_hci_acl < length ? len_hci_acl : length; } case BT_EVT_TO_LM_HCI_ISO: case BT_EVT_TO_BTU_HCI_ISO: return length; case BT_EVT_TO_LM_HCI_SCO: case BT_EVT_TO_BTU_HCI_SCO: // We're not logging SCO packets at this time since they are not currently Loading
system/gd/Android.bp +22 −0 Original line number Diff line number Diff line Loading @@ -448,6 +448,28 @@ genrule { ], } genrule { name: "BluetoothGeneratedPackets_rust", tools: [ "bluetooth_packetgen", ], cmd: "$(location bluetooth_packetgen) --include=packages/modules/Bluetooth/system/gd --out=$(genDir) $(in) --rust", srcs: [ "hci/hci_packets.pdl", ], out: [ "hci/hci_packets.rs", ], } rust_library { name: "libbt_packets", crate_name: "bt_packets", srcs: ["rust/packets/lib.rs", ":BluetoothGeneratedPackets_rust"], edition: "2018", host_supported: true, } // Generates binary schema data to be bundled and source file generated genrule { name: "BluetoothGeneratedDumpsysBinarySchema_bfbs", Loading
system/gd/hci/hci_packets.pdl +2 −2 Original line number Diff line number Diff line Loading @@ -4622,7 +4622,7 @@ packet VendorSpecificEvent : EventPacket (event_code = VENDOR_SPECIFIC) { _payload_, } enum qualityReportId : 8 { enum QualityReportId : 8 { MONITOR_MODE = 0x01, APPROACH_LSTO = 0x02, A2DP_AUDIO_CHOPPY = 0x03, Loading @@ -4634,7 +4634,7 @@ enum qualityReportId : 8 { } packet BqrEvent : VendorSpecificEvent (subevent_code = BQR_EVENT) { quality_report_id : qualityReportId, quality_report_id : QualityReportId, _payload_, } Loading
system/gd/l2cap/classic/internal/signalling_manager.cc +1 −1 Original line number Diff line number Diff line Loading @@ -120,7 +120,7 @@ void ClassicSignallingManager::on_security_result_for_outgoing( dynamic_service_manager_->GetService(psm)->GetSecurityPolicy() != SecurityPolicy::_SDP_ONLY_NO_SECURITY_WHATSOEVER_PLAINTEXT_TRANSPORT_OK) { link_->Encrypt(); return; // TODO(b/171253721): If we can receive ENCRYPTION_CHANGE event, we can send command after callback is received. } PendingCommand pending_command = {next_signal_id_, CommandCode::CONNECTION_REQUEST, psm, local_cid, {}, {}, {}}; Loading
system/gd/packet/parser/declarations.h +4 −4 Original line number Diff line number Diff line Loading @@ -47,7 +47,7 @@ class Declarations { return it->second; } void AddPacketDef(std::string name, PacketDef def) { void AddPacketDef(std::string name, PacketDef* def) { auto it = packet_defs_.find(name); if (it != packet_defs_.end()) { ERROR() << "Redefinition of Packet " << name; Loading @@ -62,7 +62,7 @@ class Declarations { return nullptr; } return &(it->second); return it->second; } void AddGroupDef(std::string name, FieldList* group_def) { Loading @@ -85,7 +85,7 @@ class Declarations { std::map<std::string, TypeDef*> type_defs_; std::deque<std::pair<std::string, TypeDef*>> type_defs_queue_; std::map<std::string, PacketDef> packet_defs_; std::deque<std::pair<std::string, PacketDef>> packet_defs_queue_; std::map<std::string, PacketDef*> packet_defs_; std::deque<std::pair<std::string, PacketDef*>> packet_defs_queue_; bool is_little_endian; };