- Feb 07, 2023
-
-
Henri Chataing authored
The Supported Commands mask is no longer set by DualModeController as the list of implemented commands. This allows for setting unimplemented commands as supported for feature discovery when testing new profiles. The Supported Command mask value is unmodified in this CL, only adding some commands that were implemented but missing from the HCI command mapping: - HCI Set Event Mask Page 2 - HCI Add SCO Connection - HCI LE Remote Connection Parameter Request Reply - HCI LE Remote Connection Parameter Request Negative Reply The ability to configure supported commands from the JSON config file is temporarily disabled as unimplemented commands now raise FATAL errors and configured values are likely to be incorrect... Test: m root-canal && atest pts-bot Bug: 266087760 Change-Id: I9c8960ba65d885f3606a89d2dcc0781aa599c71f
-
Henri Chataing authored
There existed an implicit assumption that width, value and enum_id, tag_id were mutually exclusive in the Field::Fixed case. This change makes the assumption explicit by modiyfing the AST to add specialized cases. Test: cargo build && cargo test Change-Id: Ib51f61ad2cd39f8686ad9d94a6699cf2b3b318e7
-
Henri Chataing authored
Test: cargo build && cargo test Change-Id: Ibede334254e6faa7920139a68747792e87ed05a3
-
Henri Chataing authored
Use the CommandComplete builder to simplify the code. Test: m root-canal Change-Id: I59e07c72761744bd77a142af21fc67e8c47066f1
-
- Feb 06, 2023
-
-
Henri Chataing authored
The address is directly derived from the device identifier. This change modifies TestModel to reuse identifiers from disconnected devices. The option is enabled by default and disabled by passing the parameter --disable_address_reuse Test: m root-canal && manual check Bug: 253682053 Change-Id: Ie97763c1eae46df75d548a54b273cf8d363c7bb9
-
Henri Chataing authored
IncomingAclPacket took an illegal reference to the end index of a vector. Bug: 268037653 Test: m root-canal + manual validation Change-Id: I8b431453256877f9cd173671e4eb7c46a29d57a8
-
- Feb 04, 2023
-
-
Henri Chataing authored
DualModeController now distinguishes between - supported commands: commands enabled in the supported commands mask - implemented commands: commands for which an implementation is provided Command are handled following this logic: - implemented and supported command: registered handler invoked - supported but not implemented command: raise an assert - unsupported commands: send command complete which ERR_UNKNOWN_COMMAND Test: m root-canal Bug: 266087760 Change-Id: Ie930d368bd5c20d67fbc3a5f49f68763e12bfb50
-
- Feb 03, 2023
-
-
Bill Schilit authored
Prevents "FATAL | assertion 'HasHandle(handle)' failed - Unknown handle 47" Tag: #compatibility Test: ninja and nimble Bug: 265583200 Change-Id: Ic4622ff5a17d21e86f4e3aea92e9a6007633fb49
-
- Feb 02, 2023
-
-
Henri Chataing authored
Validate the set of supported commands according to the constraints described in the section Vol 4, Part E § 3 Overview of commands and events of the specification. The check is non-fatal but displays instead the commands that should be or should not be implemented following these rules. Test: m root-canal Change-Id: I12751149f77ba4d22b30280edbd6da1ade5ef7e9
-
Henri Chataing authored
model/controller/vendor_commands The name vendor is reserved for external dependencies Test: m root-canal Change-Id: I005f57dbb8fdbc26cca9fc9129d8263a33607b19
-
Henri Chataing authored
- Replace ASSERT => LOG_ALWAYS_FATAL - Replace include of os/log.h => log.h - Iterate loop by reference Test: m root-canal Change-Id: I0b9978fcff2b4b9e6a50373d9f3f661fbc53ce06
-
- Feb 01, 2023
-
-
Henri Chataing authored
Bug: 264630489 Test: atest --host rootcanal_ll_test Change-Id: Ie674d0d7616fa82b2ecb60f574a729f2f68afd04
-
- Jan 31, 2023
-
-
Rahul Arya authored
This is a zero-copy Rust backend that supports most of PDL (excluding groups, checksums, custom types), BUT only little-endian packets. This is needed for Rust-GATT (scoped for U). It is not a permanent solution, I expect to unify / replace this with the official Rust PDL once it is ready, but until that point arrives I don't want to remain blocked. Ignore-AOSP-First: Security bug Bug: 255880936 Test: unit Change-Id: I7d2305c20288d576aa1a5731b0d7e54727366947
-
- Jan 21, 2023
-
-
Myles Watson authored
Test: make a change to RootCanal and verify that the test is run. Bug: 205758693 Change-Id: I27c4df211ef80f689819561a6b1ba7e2c34adb6d
-
- Jan 20, 2023
-
-
Myles Watson authored
Bug: 205758693 Test: atest VtsHalBluetoothTargetTest Change-Id: I88830395a5fb31b2e6cf3be28375422ceddc75fa
-
- Jan 19, 2023
-
-
Martin Geisler authored
Test: atest pdl_tests pdl_rust_generator_tests_{le,be} Change-Id: Ie09c2fa09694f940e8584d56df3beb5019f91cf3
-
Martin Geisler authored
Test: atest pdl_tests pdl_rust_generator_tests_{le,be} Change-Id: I6366b88f2b4683baf21e31519ccd981b6e81a380
-
Martin Geisler authored
The auto-generated “Packet” suffix now seems wrong, so I removed it. This means that both “packet Foo” and “struct Foo” will generate the following Rust types: pub struct Foo pub struct FooBuilder struct FooData One potential problem with this: if someone has a “packet Packet”, this now collides with “trait Packet” from our preamble. We might need to correct for this when we integrate the generated code with clients. Test: atest pdl_tests pdl_rust_generator_tests_{le,be} Change-Id: I19354010e46ef1b5738fee9f7fb13ff7778d1b03
-
Martin Geisler authored
We will need access to both of them from the parser next. Test: atest pdl_tests pdl_rust_generator_tests_{le,be} Change-Id: I7cfd79f2ef811765cd7b3653b8ed1b0ddb14fc70
-
- Jan 17, 2023
-
-
Martin Geisler authored
Being able to serialize data with Serde allows us to test enums using the canonical test vectors: we can take the output of PDL and serialize it to JSON, which we then compare with the canonical test vectors. While this was motivated by the need for testing, Serde support can be useful in general so I think this is an overall nice change. The support is behind an off-by-default feature flag, just in case people don’t want the generated code. Test: atest pdl_tests pdl_rust_generator_tests_{le,be} Change-Id: I6a19a939df7b449d350dbcda8a7daa2cb96733a2
-
Martin Geisler authored
This adds support for parsing and serializing enum fields. The canonical test vectors work. Tests have been added to the canonical PDL files: they demonstrate that we can generate valid Rust code. A test was added to show that we need “#[repr(u64)]” for an enum with a maximum discriminant. Test: atest pdl_tests pdl_rust_generator_tests_{le,be} Change-Id: Id65bf831ddde8ade9780f89096842ef9516cf4c3
-
- Jan 13, 2023
-
-
Martin Geisler authored
This CL reverts the code reading scalar fields to match the logic in the Python backend. This approach will make it simpler to update the two backends going forward. Test: atest pdl_tests pdl_rust_generator_tests_{le,be} Change-Id: I49ddb3dae8eab1bb00cf730eda50a051d326ce2c
-
Henri Chataing authored
The packet idc is not removed from the packet before being sent to the command handler. Bug: 261261502 Test: atest rootcanal_test_host Change-Id: I9aa66e0f765c185405e002ae21d35ad784c9f9d8
-
- Jan 12, 2023
-
-
Henri Chataing authored
The recovery state is entered when an invalid Idc is received. In recovery state, all bytes are dropped until a valid HCI Reset command is received. The reasoning is that this issue occurs when the emulator is rebooted, leaving bytes in the VirtIO console. The next valid command should be HCI Reset command then. Test: atest rootcanal_test_host Bug: 261261502 Change-Id: I6e5482d9b2642fa789e6ed415ce3833663097bff
-
- Jan 11, 2023
-
-
Henri Chataing authored
Bug: 264630489 Test: m root-canal Change-Id: I1fff099890032e51aaaa087176df09ffb8ce3e68
-
Henri Chataing authored
The tasks registered within LinkLayerController capture the pointer to the Controller instance for member access. These tasks can outlive the Controller instance if the controller is deleted (e.g. through the test channel, or because the TCP connection is lost). In this case attempting to execute the task callback would cause a use-after-free invalid pointer access. This change bypasses the issue by capturing a weak pointer to the instance to check if it is live before running the task callback. Test: m root-canal && launch_cvd Change-Id: I5384fc056fc4fbc0095b99ef7113fd4f706803ba
-
- Jan 10, 2023
-
-
Henri Chataing authored
Test: m root-canal Change-Id: I939c193680d8dd27e65b3cbc7e6d7ca878c8d5c5
-
Henri Chataing authored
Test: NA Bug: 256013170 Change-Id: I02b2d11b0dd3ca0631e7a6514d43771b8a25306a
-
Henri Chataing authored
- LL/DDI/ADV/BV-15-C - LL/DDI/ADV/BV-16-C - LL/DDI/ADV/BV-17-C - LL/DDI/ADV/BV-18-C - LL/DDI/ADV/BV-19-C - LL/DDI/ADV/BV-20-C - LL/DDI/ADV/BV-21-C Bug: 253523072 Test: atest rootcanal_ll_test Change-Id: Id447dd5acf84cc2895ae2825cfa63e6db1f59e62
-
- Jan 07, 2023
-
-
Bill Schilit authored
Test: manual Bug: 264469240 Change-Id: I14115e04c959c3d3e4c15a075c997c2a7fb2f667
-
- Jan 06, 2023
-
-
Adrian Roos authored
This reverts commit 9d76f0b7. Reason for revert: breaks aosp_arm64-userdebug_tidy Bug: 264648327 Change-Id: I7de1704c412ddb236456e9e6c44f074c704c0896
-
- Jan 03, 2023
-
-
Andrew Walbran authored
Bug: 260823636 Tag: #gd-refactor Test: atest bluetooth_with_facades.test bt_topshim_facade.test pdl_tests Change-Id: Id583d26459c05e3aaa8295c6f752923ec7d8fe93
-
Andrew Walbran authored
Bug: 260823636 Tag: #gd-refactor Test: atest pdl_tests Change-Id: Ie9e9592718735f365b0780583b0a4915fe2a50bb
-
Henri Chataing authored
Test: ALLOW_LOCAL_TIDY_TRUE=1 m root-canal Change-Id: Id840d82bc421e8ca6ad30e39fa9e8f501f6f73f1
-
- Jan 02, 2023
-
-
Henri Chataing authored
Apply some modifications to improve the flakiness of tests CanUnsubscribeTaskFromWithinTask and UnsubScribeWaitsUntilCompletion Test: atest --host --rerun-until-failure 1000 -t AsyncManagerSocketTest rootcanal_test_host Bug: 263327055 Change-Id: I43e41749cfd34a1e9ce2e5fe6e6eaf70f8951d84
-
- Dec 28, 2022
-
-
Henri Chataing authored
Test: atest --host rootcanal_ll_test Bug: 253523072 Change-Id: I56d5f58325af1e553c3416e8ac7f6ad6b7154ca1
-
- Dec 23, 2022
-
-
Henri Chataing authored
This reverts commit 6e4f16af. Reason for revert: Source of build breakage fixed in another CL Test: NA Change-Id: I0fba54ad0bbbbff2c7258f44719d88ed1c5f5e74
-
William Escande authored
Test: build: m lib_rootcanal_python3 Change-Id: I9facfe33987d64397d25ee7c93cfaf45df860e95
-
- Dec 22, 2022
-
-
Greg Kaiser authored
size_t is unsigned, so we use %zu Change-Id: Ic309393787b435c288df3bc29217db169e12b448 Test: Manual Bug: 261188171
-