* Add API flags for creating & opening persistent sessions
* Properly handle session name conflicts
* Format
* Format
* Save state
* Working end to end pull
* Clean up console cursor logic
* Save state
* Save state
* Implement run
* Merge
* Correctly handle error messages
* Improve error handling
* Add test coverage
* Add API flags for creating & opening persistent sessions
* Properly handle session name conflicts
* Format
* Format
* Fix broken port mapping logic
* PR feedback
* Remove last message reference
* TEST: Add testcases to validated bridged networking connectivity
* minor bridged test updates
---------
Co-authored-by: Ben Hillis <benhill@ntdev.microsoft.com>
* Save state
* Save state
* Save state
* Save state
* Interactive shell POC
* Save state
* New process class
* Wire event tracker
* Save state
* Implement non interactive IO relay
* Implement cmd & entrypoint
* CreateContainer passing
* ContainerState passing
* Format
* PortBindings test passing
* ContainerNetwork passing
* Move test logic to Inspect()
* PullImage passing
* Format
* ImportImage passing
* Save state
* Properly implement Import
* LoadImage passing
* Add docker_schema
* Implement exec
* Format
* Exec passing
* Save state
* Prepare for review
* Add copyright headers
* Format
* Apply PR feedback
* Apply PR feedback
* Cleanup diff
* Apply PR feedback
* Skip pmem test
* Revert to cgroupv2
Update DistributionInfo.json to add "eLxr" section to "ModenDistributions".
This commit adds eLxr to the Microsoft WSL's official distribution manifest,
allowing users to pull and install it in an automated way (`wsl --install eLxr`).
* WSLA: Switch to using PMEM for readonly VHDs that are added at boot
* enum -> enum class
* add support for SCSI and PMEM at boot
* switch to std::variant
* add tests for pmem vhds
---------
Co-authored-by: Ben Hillis <benhill@ntdev.microsoft.com>
* WSlA: Adjust default CONTAINER_PORT_RANGE to avoid dmesg warning around port range parity
* Fix ephemeral port range parity to eliminate kernel warning (#13976)
* Initial plan
* Fix port range parity warning by adjusting ephemeral range
- Changed c_ephemeralPortRange from (10000, 20000) to (10000, 20001) to fix parity
- 10000 is even, 20001 is odd - different parity eliminates dmesg warning
- Changed CONTAINER_PORT_RANGE from (20000, 65535) to (20002, 65535)
- Ensures non-overlapping ranges and static_assert passes (20001 < 20002)
- Reverts incorrect change from previous commit that set it to 20000
Co-authored-by: benhillis <17727402+benhillis@users.noreply.github.com>
* Final progress update
Co-authored-by: benhillis <17727402+benhillis@users.noreply.github.com>
---------
Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com>
Co-authored-by: benhillis <17727402+benhillis@users.noreply.github.com>
* Delete _codeql_detected_source_root
* add static assert
---------
Co-authored-by: Ben Hillis <benhill@ntdev.microsoft.com>
Co-authored-by: Copilot <198982749+Copilot@users.noreply.github.com>
Co-authored-by: benhillis <17727402+benhillis@users.noreply.github.com>