120 Commits

Author SHA1 Message Date
Feng Wang
61e6b9aa86 Fix wsl stuck when misconfigured cifs mount presents (#14466)
* detach terminal before running mount -a

* Potential fix for pull request finding

Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com>

* use _exit on error before execv in child process to avoid unintentional resource release

* Add regression test

* Fix clang format issue

* fix all clang format issue

* Potential fix for pull request finding

Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com>

* resolve ai comments

* move test to unit test

* Fix string literal

* Overwrite fstab to resolve pipeline missing file issue

---------

Co-authored-by: Feng Wang <wangfen@microsoft.com>
Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com>
2026-03-20 12:45:46 -07:00
Ben Hillis
d7ff5b9631 Refactor: trim unnecessary DLL deps from COMMON_LINK_LIBRARIES (#14426)
* Refactor: trim unnecessary DLL deps from COMMON_LINK_LIBRARIES

- Split MSI/Wintrust install functions from wslutil.cpp into install.cpp
- Remove MI.lib, wsldeps.lib, msi.lib, Wintrust.lib, computecore.lib,
  computenetwork.lib, Iphlpapi.lib from COMMON_LINK_LIBRARIES
- Add per-target MSI_LINK_LIBRARIES, HCS_LINK_LIBRARIES, SERVICE_LINK_LIBRARIES
- Delay-load msi.dll and WINTRUST.dll for wsl.exe and wslg.exe
- Result: wslhost, wslrelay, wslcsdk, testplugin lose msi/wintrust startup imports;
  wsl.exe and wslg.exe defer msi/wintrust loading until actually needed;
  wslservice is the only target that imports computecore/computenetwork/Iphlpapi

* minor fixes to install.cpp that were caught during PR

* move to wsl::windows::common::install namespace

---------

Co-authored-by: Ben Hillis <benhill@ntdev.microsoft.com>
2026-03-19 12:45:58 -07:00
Ben Hillis
c5fb4aa639 Enable DNS tunneling for VirtioProxy networking mode (#14461)
- Allow VirtioProxy to keep EnableDnsTunneling=true in config, but clear
  socket-specific options (BestEffortDnsParsing, DnsTunnelingIpAddress)
- Suppress dedicated DNS tunneling hvsocket for VirtioProxy; tunneling
  is handled through the VirtioNetworking device host instead
- Set DnsTunneling flag on VirtioNetworkingFlags so the device host
  knows to tunnel DNS
- Expand SWIOTLB kernel cmdline to cover VirtioFs and VirtioProxy
- Bump DeviceHost package to 1.1.39-0
- Add VirtioProxy DNS test coverage for tunneling on/off
- Skip GuestPortIsReleasedV6 on Windows 10

Co-authored-by: Ben Hillis <benhill@ntdev.microsoft.com>
2026-03-18 15:31:04 -07:00
Daman Mulye
ef8e1c8dba Track bind syscall when port is 0 (#14333)
* Initial work

* .

* pr feedback and add unit test

* minor tweaks an fix use after free in logging statement

* implement PR feedback

* hopefully final pr feedback

* pr feedback in test function

* Address PR feedback: add try/catch to TrackPort and PortZeroBind queue push

---------

Co-authored-by: Ben Hillis <benhill@ntdev.microsoft.com>
2026-03-13 17:00:57 -07:00
Ben Hillis
7cd9ed9603 virtio networking: add support for ipv6 (#14350)
* VirtioProxy: Add IPv6 address, gateway, and route support

- Add PreferredIpv6Address field and GetBestGatewayV6* methods to NetworkSettings
- Extend GetHostEndpointSettings() to discover IPv6 unicast address and gateway
- Add UpdateIpv6Address() using ModifyGuestEndpointSettingRequest<IPAddress>
- Push IPv6 default route to guest via UpdateDefaultRoute(AF_INET6)
- Remove AF_INET6 early return in ModifyOpenPorts, use INETADDR_PORT()
- Add EndpointRoute::DefaultRoute() static factory
- Pass client_ip_ipv6 in devicehost options (not yet parsed by devicehost)
- Remove gateway_ip from devicehost options (only needed for DHCP)
- Include IPv6 DNS servers in non-tunneling DNS settings
- Add ConfigurationV6 and DnsResolutionAAAA tests

* cleanup and add more ipv6 tests

* added test coverage and minor updates

* clang format

* pr feedback

* format source

* pr feedback

* test fixes

---------

Co-authored-by: Ben Hillis <benhill@ntdev.microsoft.com>
2026-03-13 16:36:21 -07:00
Ben Hillis
81dc9a3004 virtiofs: update logic so querying virtiofs mount source does not require a call to the service (#14380)
* virtiofs: update logic so querying virtiofs mount source does not require a call to the service

* more pr feedback

* use std::filesystem::read_symlink

* pr feedback and use canonical path in virtiofs symlink

* make sure canonical path is always used

---------

Co-authored-by: Ben Hillis <benhill@ntdev.microsoft.com>
2026-03-13 10:18:34 -07:00
Ben Hillis
e5cb458e67 Ship initrd.img in MSI using build-time generation via powershell script (#14424)
* Ship initrd.img in MSI using build-time generation via tar.exe

Replace the install-time CreateInitrd/RemoveInitrd custom actions with a
build-time step that generates initrd.img using the Windows built-in
tar.exe (libarchive/bsdtar) and ships it directly in the MSI.

The install-time approach had a race condition: wsl.exe could launch
before the CreateInitrd custom action completed, causing
ERROR_FILE_NOT_FOUND for initrd.img.

Changes:
- Add CMake custom command to generate initrd.img via tar.exe --format=newc
- Add initrd.img as a regular file in the MSI tools component
- Remove CreateInitrd/RemoveInitrd custom actions from WiX, DllMain,
  and wslinstall.def
- Remove CreateCpioInitrd helper and its tests (no longer needed)
- Update pipeline build targets to build initramfs instead of init

* pr feedback

* more pr feedback

* switch to using a powershell script instead of tar.exe

* powershell script feedback

* hopefully final pr feedback

---------

Co-authored-by: Ben Hillis <benhill@ntdev.microsoft.com>
2026-03-12 20:42:24 -07:00
Ben Hillis
218b71be67 Resolve and pass gateway MAC address to virtio net device (#14386)
Use ResolveIpNetEntry2 to look up the host gateway's MAC address and
pass it as the gateway_mac device option to the virtio net adapter.
This allows the guest to see the real gateway MAC instead of the
default consomme address.

Co-authored-by: Ben Hillis <benhill@ntdev.microsoft.com>
2026-03-09 14:51:25 -07:00
Ben Hillis
f3024dc5c6 build: ensure dependency graph of Linux binaries includes shared headers (#14374)
* build: ensure dependency graph of Linux binaries includes shared headers

* pr feedback

* pr feedback

---------

Co-authored-by: Ben Hillis <benhill@ntdev.microsoft.com>
2026-03-09 11:16:54 -07:00
Ben Hillis
8c220dc083 Fix grammar, typos, and formatting in docs and source (#14286)
* Fix localization text, Intune capitalization, ADMX indentation, unused import

- distributions/validate.py: Remove unused 'import base64'
- en-US/en-GB Resources.resw: Fix word order 'the list distribution' -> 'the distribution list' in MessageCouldFetchDistributionList
- en-US/en-GB Resources.resw: Remove trailing space from MessageCorruptedDistroRegistration value
- intune/en-US/WSL.adml: Fix 'For Linux' -> 'for Linux' capitalization (5 occurrences) to match official product name
- intune/WSL.admx: Fix inconsistent 3-space indent to 4-space on AllowWSL1 and CustomKernelUserSettingConfigurable policies

* Fix grammar, typos, and formatting in docs and source code

- WmiService.h: Fix duplicated word 'of of' -> 'is of' in WQL comment
- drvfs.md: Fix 'which tell' -> 'which tells' (subject-verb agreement), double space, second 'tell' -> 'tells'
- systemd.md: Fix 'tries synchronizes' -> 'tries to synchronize'
- wslhost.exe.md: Fix 'processes terminates' -> 'process terminates'
- boot-process.md: Add missing 'in' preposition, fix C:/ -> C:\, fix lowercase 'linux' to 'Linux' (4 occurrences), fix misplaced parenthesis
- init.md: Fix double space before hvsocket backtick
- session-leader.md: Fix heading level ## -> ### to match sibling section
- CONTRIBUTING.md: Fix double period after bold security notice
- debugging.md: Fix missing word 'be' in 'can enabled', fix 'process' -> 'processes'
- index.md: Add missing period at end of sentence
- technical-documentation/index.md: Fix 'API's' -> 'APIs' (remove incorrect apostrophe)
- relay.md: Fix lowercase 'linux' to 'Linux' (3 occurrences)
- localhost.md: Fix lowercase 'linux' to 'Linux'
- plan9.md: Fix lowercase 'linux' to 'Linux'

* update errormessages testcase

---------

Co-authored-by: Ben Hillis <benhill@ntdev.microsoft.com>
2026-03-03 18:13:59 -08:00
Andy Sterland
32329bb35c Add vs info to settings (#14169)
* Initial commit to add a page to the OOBE experience for the Visual Studio integration with WSL.

* Updated link for C++ to the landing page for Linux dev.

* Reverting accidental commit of UserConfig.cmake.sample.

* Revert accidental change

* Revert "cleanup: fix UserConfig.cmake.sample in master branch (#14076)"

This reverts commit 4b23185dfe.

* Reapply "cleanup: fix UserConfig.cmake.sample in master branch (#14076)"

This reverts commit d97e2753bb.

* revert

* revert

* Tidying whitespace

* Tidying whitespace

* Tidying whitespace

* Tidying whitespace

* Tidying whitespace

* Update src/windows/wslsettings/Views/OOBE/ShellPage.xaml

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>

* Update src/windows/wslsettings/Activation/ProtocolActivationHandler.cs

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>

---------

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
2026-03-03 14:45:00 -05:00
Dimitris Chatzis
26bf49db1e Refactor: Use TryParse in view models for safer numeric input parsing (#14323)
* Refactor: Use TryParse in view models for safer numeric input parsing

Replaces parsing logic with TryParse across view models to prevent overflow/format crashes from invalid user input. Specifically fixes the VM Idle Timeout crash reported in #14312, while improving stability for other numeric settings.

* Fix crash when opening Optional Features settings page
2026-03-02 10:14:20 -08:00
Ben Hillis
e01a672880 Fix 4 code bugs: substr off-by-one, HANDLE* cast, TOCTOU GetLastError, sun_path overflow (#14297)
Bug 1 - LxssHttpProxy.cpp: IPv6 substr extraction used wrong length
  calculation. substr(openBracket+1, closeBracket-1) is incorrect when
  openBracket > 0; fixed to substr(openBracket+1, closeBracket-openBracket-1).
  Also fixed empty-address guard to check closeBracket (not closeBracket-1).

Bug 2 - LxssUserSession.cpp: Two instances of reinterpret_cast<HANDLE*> in
  ScopedMultiRelay construction should be reinterpret_cast<HANDLE> (without
  the pointer). Other identical callsites in the same file already use the
  correct cast.

Bug 3 - LxssUserSession.cpp: GetLastError() was called unconditionally after
  CreateFileW, even on success. A stale ERROR_SHARING_VIOLATION from a prior
  API call could cause a false throw. Fixed to only check GetLastError() when
  CreateFileW fails (!vhd).

Bug 4 - plan9.cpp: sun_path bounds check used > instead of >= leaving no room
  for null terminator. Also added a post-split check to ensure the child name
  fits after splitting parent/child for long paths.

Co-authored-by: Ben Hillis <benhill@ntdev.microsoft.com>
2026-02-26 17:03:32 -08:00
Blue
55e04d5ff1 Disable the process creation cursor animation by default (#14293) 2026-02-26 15:40:34 -08:00
ssparach
63fa9f3e13 Accessibility Bug Fix: After selecting from the navigation list, keyboard focus is not transferred to page content (#14289)
* bug fix

* Update src/windows/wslsettings/Views/Settings/OptionalFeaturesPage.xaml.cs

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>

* Update src/windows/wslsettings/Views/Settings/NetworkingPage.xaml.cs

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>

* Update src/windows/wslsettings/Views/Settings/MemAndProcPage.xaml.cs

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>

* Update src/windows/wslsettings/Views/Settings/FileSystemPage.xaml.cs

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>

* Update src/windows/wslsettings/Views/Settings/DeveloperPage.xaml.cs

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>

---------

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
2026-02-26 14:10:17 -08:00
Dimitris Chatzis
cb35b511cc Mask NetworkManager-wait-online.service during boot (#14272)
* Mask NetworkManager-wait-online.service during boot

Fixes #13772. Similar to PR #13611, this masks NetworkManager-wait-online.service to prevent 60-second timeouts during boot since WSL interfaces are unmanaged by NetworkManager. Also added the service to the discouraged units list in validate-modern.py and added a unit test.

* Addressed Copilot feedback

* Fix
2026-02-25 17:39:56 -08:00
Ben Hillis
d28ae62c0e cleanup: minor DuplicateHandle helper hygene (#14276)
* cleanup: minor DuplicateHandle helper hygene

* pr feedback

* Permissions -> DesiredAccess

---------

Co-authored-by: Ben Hillis <benhill@ntdev.microsoft.com>
2026-02-25 13:22:20 -08:00
Ben Hillis
a27d4725f7 virtionet: improve state tracking (#14215)
* virtionet: improve state tracking

* remove unused var

---------

Co-authored-by: Ben Hillis <benhill@ntdev.microsoft.com>
2026-02-13 12:10:12 -08:00
Copilot
107fe52413 Fix excessive screen updates in progress indicators (#14206)
* Initial plan

* Fix excessive screen updates during wsl --export

Only update progress display when file size actually changes, preventing
unnecessary screen redraws and reducing CPU/GPU overhead.

Co-authored-by: benhillis <17727402+benhillis@users.noreply.github.com>

* Address code review: initialize previousSize to 0 instead of -1

Co-authored-by: benhillis <17727402+benhillis@users.noreply.github.com>

* Complete fix for excessive screen updates during wsl --export

Co-authored-by: benhillis <17727402+benhillis@users.noreply.github.com>

* Clean up: remove codeql symlink and add to gitignore

Co-authored-by: benhillis <17727402+benhillis@users.noreply.github.com>

* Revert .gitignore to original state

Co-authored-by: benhillis <17727402+benhillis@users.noreply.github.com>

* Compare MB values instead of raw bytes to prevent unnecessary redraws

When file size grows in sub-MB increments, comparing raw bytes causes
redraws even though the displayed MB value hasn't changed. Now we
calculate and compare the MB value directly, ensuring the progress
indicator only updates when the displayed value actually changes.

Also initialize previousSizeMB to -1 to ensure initial progress is
always shown (even when starting at 0 MB).

Co-authored-by: benhillis <17727402+benhillis@users.noreply.github.com>

* Cache string in UpdateProgress instead of caching values in caller

Move the duplicate string check into ConsoleProgressIndicator::UpdateProgress()
itself. This provides a more general solution that prevents printing the same
string twice for any caller, not just the file size case. The comparison now
happens at the string level, which handles all formatting variations and makes
the fix more maintainable.

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>
2026-02-12 16:34:01 -08:00
Ben Hillis
31ecc4940c virtioproxy: update setting of m_networkSettings to under the lock (#14210)
Co-authored-by: Ben Hillis <benhill@ntdev.microsoft.com>
2026-02-12 15:39:58 -08:00
Ben Hillis
66822ce4ce Update Microsoft.WSL.DeviceHost with virtiofs and virtio networking (#14198)
improvements.

Co-authored-by: Ben Hillis <benhill@ntdev.microsoft.com>
2026-02-12 13:05:45 -08:00
Ben Hillis
ae39345d90 Minor follow-up initrd feedback items (#14186)
Co-authored-by: Ben Hillis <benhill@ntdev.microsoft.com>
2026-02-09 13:39:29 -08:00
Ben Hillis
0e263df6f3 Move from shipping the initrd to generating it during install. (#14119)
* Move from shipping the initrd to generating during package install.

* pr feedback

* working

* adjust custom action conditions

* update initrd test to cover more cases

* Update msipackage/package.wix.in

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>

* use stack buffer

* move initrd helper to filesystem.cpp and add unit test

---------

Co-authored-by: Ben Hillis <benhill@ntdev.microsoft.com>
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
2026-02-07 12:47:56 -08:00
Blue
1897d055dd Rethink the Accept() logic to differentiate between errors and cancellation (#14156)
* Bring relay changes

* Redesign Accept() logic to differenciate between cancellation and errors

* Prepare for PR

* Apply PR feedback
2026-02-04 11:02:25 -08:00
Ben Hillis
8ae97be650 virtiofs: exit QueryVirtiofsMountSource early if virtiofs disabled (#14149)
Co-authored-by: Ben Hillis <benhill@ntdev.microsoft.com>
2026-02-03 18:02:54 -08:00
Blue
404aec60ba Remove invalid asserts from WslMirroredNetworking.cpp (#14151) 2026-02-03 16:05:44 -08:00
Ben Hillis
8aadbb4da5 DNS: Simplify dns logic and switch to using 'search' instead of 'domain' which is obsolete. (#14133)
* DNS: Simplify dns logic and switch to using 'search' instead of 'domain'
which is obsolete.

* add optional header for natnetworking

* format

* extend configuration test for virtioproxy networking mode

---------

Co-authored-by: Ben Hillis <benhill@ntdev.microsoft.com>
2026-02-02 16:06:46 -08:00
Ben Hillis
4096e6d77d virtiofs: add support for mounting directories (not just full volumes) (#14073)
* virtiofs: add support for mounting directories (not just full volumes)

* disable virtiofs tests for now

* spelling

---------

Co-authored-by: Ben Hillis <benhill@ntdev.microsoft.com>
2026-01-29 09:16:54 -08:00
Ben Hillis
a057ee63ab cleanup: cleanup for virtio networking dns (#14111)
* cleanup: cleanup for virtio networking dns

* simplify

---------

Co-authored-by: Ben Hillis <benhill@ntdev.microsoft.com>
2026-01-27 11:14:30 -08:00
Ben Hillis
d8cd707384 cleanup: refactor wslrelay and other minor cleanup (#14099)
* cleanup: refactor wslrelay and other minor cleanup

* pr feedback

---------

Co-authored-by: Ben Hillis <benhill@ntdev.microsoft.com>
2026-01-23 13:33:31 -08:00
Ben Hillis
e663585eeb cleanup: refactor console helper class (#14091)
* cleanup: refactor console helper class

* make opening CONIN and CONOUT non-fatal

---------

Co-authored-by: Ben Hillis <benhill@ntdev.microsoft.com>
2026-01-22 11:18:46 -08:00
Ben Hillis
546233d531 cleanup: update GuestDeviceManager to not require passing in class IDs. (#14093)
Co-authored-by: Ben Hillis <benhill@ntdev.microsoft.com>
2026-01-22 11:18:39 -08:00
Ben Hillis
a03462f50b Fix issue with svccommio incorrectly resetting console state in the move operator (#14083)
The ConsoleInput and ConsoleOutput classes used = default move operations, which caused the moved-from temporary's destructor to restore the original console mode (re-enabling ENABLE_PROCESSED_INPUT) after the object was moved into the std::optional. The fix uses emplace() to construct objects directly in-place, avoiding moves entirely. Move operations are now deleted to prevent future misuse.

Co-authored-by: Ben Hillis <benhill@ntdev.microsoft.com>
2026-01-20 13:27:25 -08:00
Blue
76d040c3b4 Remove configfile dependency on common (#14071) 2026-01-16 10:52:54 -08:00
Ben Hillis
e2a7b1d168 cleanup: refactor svccommio class (#13843)
* cleanup: refactor svccommio class

* add logging if setting code page fails

* pr feedback

* remove unneeded if

* remove unneeded if

* pr feedbacK'

---------

Co-authored-by: Ben Hillis <benhill@ntdev.microsoft.com>
2026-01-14 12:24:04 -08:00
Ben Hillis
d27b648830 Update to Azure Linux 3 (#14049)
* Update StartDhcpClient to use dhcpcd which is the Azure Linux 3 equivalent
* Update Microsoft.WSLg to version 1.0.72 which moves to Azure Linux 3
2026-01-13 09:15:15 -08:00
Ben Hillis
6f47fa9b20 diagnostics: improve logging of hcs helper utilities on debug builds (#13971)
* diagnostics: improve logging of hcs helper utilities on debug builds

* implement pr feedback

---------

Co-authored-by: Ben Hillis <benhill@ntdev.microsoft.com>
2026-01-06 10:07:02 -08:00
Ben Hillis
f4b67e3cb4 cleanup: switch drvfs.cpp to use common MountUtil helper (#13890)
* cleanup: switch drvfs.cpp to use common MountUtil helper

* adjust mount.drvfs error logging

* adjust mount.drvfs error logging

---------

Co-authored-by: Ben Hillis <benhill@ntdev.microsoft.com>
2025-12-19 13:34:35 -08:00
Ben Hillis
cb8bc9af67 cleanup: hcs logging improvements (#13942)
Co-authored-by: Ben Hillis <benhill@ntdev.microsoft.com>
2025-12-19 13:23:59 -08:00
Ben Hillis
a4f1f7a147 cleanup: add scsi disks during VM creation (#13939)
* cleanup: add scsi disks during VM creation

* pr feedback

---------

Co-authored-by: Ben Hillis <benhill@ntdev.microsoft.com>
2025-12-18 19:05:08 -08:00
Ben Hillis
d0609393e4 [GH 13837] Remove trailing slash from $XDG_RUNTIME_DIR (#13929)
* [GH 13837] Remove trailing slash from $XDG_RUNTIME_DIR

* pr feedback

---------

Co-authored-by: Ben Hillis <benhill@ntdev.microsoft.com>
2025-12-16 18:52:15 -08:00
Blue
1e3ef15f6d Remove the explicit desktop field when creating a Windows process (#13930) 2025-12-16 18:49:22 -08:00
Ben Hillis
f02f8ef91c cleanup: remove duplicate AppId registration for wsldevicehost.dll (#13928)
Co-authored-by: Ben Hillis <benhill@ntdev.microsoft.com>
2025-12-16 16:30:46 -08:00
Ben Hillis
e24df7e0d1 Resolve issue with buttons on notifications not working correctly (#13921)
* Resolve issue with buttons on notifications not working correctly

* pr feedback

---------

Co-authored-by: Ben Hillis <benhill@ntdev.microsoft.com>
2025-12-15 20:50:49 -08:00
Ben Hillis
180d811099 Resolve issue with config file writing sections outside of their expected header. (#13898)
* Resolve issue with config file writing sections outside of their expected header.

* add more writewslconfig variations

* formatting

---------

Co-authored-by: Ben Hillis <benhill@ntdev.microsoft.com>
2025-12-15 13:03:02 -08:00
Ben Hillis
b4c0ced6b8 cleanup: minor tweaks to path translation failed messages (#13892)
Co-authored-by: Ben Hillis <benhill@ntdev.microsoft.com>
2025-12-13 10:59:55 -08:00
Ben Hillis
f1e20b21c9 Clean up localhost relay implementation to not rely on procfs parsing. (#13836)
* Clean up localhost relay implementation to not rely on procfs parsing.

* pr feedback

---------

Co-authored-by: Ben Hillis <benhill@ntdev.microsoft.com>
2025-12-12 14:18:07 -08:00
Ben Hillis
19f06f9f51 virtiofs: fix an issue where if the VM is launched by an elevated user, non-elevated shells will have elevated virtiofs access. (#13877)
* virtiofs: fix an issue where if the VM is launched by an elevated user, non-elevated shells will have elevated virtiofs access.

* rename keelAlive -> keepAlive

---------

Co-authored-by: Ben Hillis <benhill@ntdev.microsoft.com>
2025-12-11 15:21:27 -08:00
Ben Hillis
7741740f87 Add back WSL2_VM_ID environment varialbe to the system distro. (#13835)
Co-authored-by: Ben Hillis <benhill@ntdev.microsoft.com>
2025-12-05 15:06:38 -08:00
Ben Hillis
caf38dcad2 wslsettings: ensure text in the oobe window properly wraps (#13823)
Co-authored-by: Ben Hillis <benhill@ntdev.microsoft.com>
2025-12-04 20:29:11 -08:00