Skip to content

Updated ADMX for WSLC#40422

Merged
craigloewen-msft merged 7 commits intomasterfrom
user/crloewen/admx-update
May 7, 2026
Merged

Updated ADMX for WSLC#40422
craigloewen-msft merged 7 commits intomasterfrom
user/crloewen/admx-update

Conversation

@craigloewen-msft
Copy link
Copy Markdown
Member

Summary of the Pull Request

Updated ADMX values for WSLC controls.

PR Checklist

Completed PR checklist, since it's just an ADMX no big changes or effort needed from the checklist.

  • Closes: Link to issue #xxx
  • Communication: I've discussed this with core contributors already. If work hasn't been agreed, this work might be rejected
  • Tests: Added/updated if needed and all pass
  • Localization: All end user facing strings can be localized
  • Dev docs: Added/updated if needed
  • Documentation updated: If checked, please file a pull request on our docs repo and link it here: #xxx

Detailed Description of the Pull Request / Additional comments

Simple ADMX change.

Validation Steps Performed

Validated ADMX compiles (It's known that the logic isn't implemented yet)

Copilot AI review requested due to automatic review settings May 5, 2026 14:53
Comment thread intune/WSL.admx
Copy link
Copy Markdown
Member

@benhillis benhillis left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Some suggestions / questions.

Comment thread intune/en-US/WSL.adml Outdated
Comment thread intune/en-US/WSL.adml Outdated
Comment thread intune/en-US/WSL.adml Outdated
Comment thread intune/en-US/WSL.adml Outdated
Comment thread intune/en-US/WSL.adml Outdated
Copy link
Copy Markdown
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Copilot encountered an error and was unable to review this pull request. You can try again by re-requesting a review.

Copy link
Copy Markdown
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Copilot reviewed 2 out of 2 changed files in this pull request and generated 4 comments.

Comment thread intune/WSL.admx Outdated
Comment thread intune/WSL.admx
Comment thread intune/WSL.admx Outdated
Comment thread intune/WSL.admx Outdated
Comment thread intune/WSL.admx
Comment thread intune/WSL.admx Outdated
Comment thread intune/en-US/WSL.adml Outdated
Comment thread intune/en-US/WSL.adml Outdated
Comment thread intune/en-US/WSL.adml Outdated
Comment thread intune/en-US/WSL.adml Outdated
Comment thread intune/en-US/WSL.adml
Copilot AI review requested due to automatic review settings May 6, 2026 21:23
Comment thread build/.cmake/api/v1/query/client-vscode/query.json Outdated
Comment thread build/.cmake/api/v1/query/client-vscode/query.json Outdated
Copy link
Copy Markdown
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Copilot reviewed 2 out of 2 changed files in this pull request and generated 2 comments.

Comment thread intune/en-US/WSL.adml Outdated
Comment thread intune/WSL.admx Outdated
@craigloewen-msft craigloewen-msft marked this pull request as ready for review May 7, 2026 17:34
@craigloewen-msft craigloewen-msft requested a review from a team as a code owner May 7, 2026 17:34
@craigloewen-msft craigloewen-msft enabled auto-merge (squash) May 7, 2026 17:35
Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com>
Copilot AI review requested due to automatic review settings May 7, 2026 18:29
Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com>
Copy link
Copy Markdown
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Copilot reviewed 2 out of 2 changed files in this pull request and generated 2 comments.

Comment thread intune/en-US/WSL.adml
Comment thread intune/en-US/WSL.adml
@craigloewen-msft craigloewen-msft merged commit 193f0ae into master May 7, 2026
11 checks passed
@craigloewen-msft craigloewen-msft deleted the user/crloewen/admx-update branch May 7, 2026 22:49
benhillis pushed a commit that referenced this pull request May 8, 2026
Adds enforcement for two group policies whose ADMX templates landed in
PR #40422:

- AllowWSLContainer (DWORD): master switch for wslc.exe and the
  WSLCSessionManager COM API. Enforced at the COM wrapper so all
  callers (wslc.exe, WslcSDK, plugins) are gated through one code path.
  WslcGetVersion remains unblocked so SDK consumers can probe
  availability.

- WSLContainerCLIRegistryAllowlist: ADMX `<list valuePrefix="AllowedRegistry">`
  policy stored as a sub-key whose REG_SZ value data is each allowed
  registry hostname. Enforced in PullImage and PushImage via a shared
  helper. BuildImage is rejected outright when an allowlist is configured,
  since the in-VM docker daemon fetches FROM base images through its own
  pull mechanism and cannot be reliably gated per-registry. The policy
  is fail-open: an absent or empty sub-key is treated as no restriction,
  and registry I/O errors fall through to allow rather than break all
  container operations on a transient hiccup.

Adds two new HRESULTs:
- WSL_E_CONTAINER_DISABLED (0x33)
- WSL_E_REGISTRY_BLOCKED_BY_POLICY (0x34)

Adds PolicyTests covering disabled-state, allowed-state, CLI surfacing,
allowlist denial, build rejection, and pure-function unit tests for the
allowlist evaluator.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
benhillis pushed a commit that referenced this pull request May 8, 2026
Adds enforcement for two group policies whose ADMX templates landed in
PR #40422:

- AllowWSLContainer (DWORD): master switch for wslc.exe and the
  WSLCSessionManager COM API. Enforced at the COM wrapper so all
  callers (wslc.exe, WslcSDK, plugins) are gated through one code path.
  WslcGetVersion remains unblocked so SDK consumers can probe
  availability.

- WSLContainerCLIRegistryAllowlist: ADMX `<list valuePrefix="AllowedRegistry">`
  policy stored as a sub-key whose REG_SZ value data is each allowed
  registry hostname. Enforced in PullImage and PushImage via a shared
  helper. BuildImage is rejected outright when an allowlist is configured,
  since the in-VM docker daemon fetches FROM base images through its own
  pull mechanism and cannot be reliably gated per-registry. The policy
  is fail-open: an absent or empty sub-key is treated as no restriction,
  and registry I/O errors fall through to allow rather than break all
  container operations on a transient hiccup.

Adds two new HRESULTs:
- WSL_E_CONTAINER_DISABLED (0x33)
- WSL_E_REGISTRY_BLOCKED_BY_POLICY (0x34)

Adds PolicyTests covering disabled-state, allowed-state, CLI surfacing,
allowlist denial, build rejection, and pure-function unit tests for the
allowlist evaluator.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
benhillis pushed a commit that referenced this pull request May 8, 2026
Adds enforcement for two group policies whose ADMX templates landed in
PR #40422:

- AllowWSLContainer (DWORD): master switch for wslc.exe and the
  WSLCSessionManager COM API. Enforced at the COM wrapper so all
  callers (wslc.exe, WslcSDK, plugins) are gated through one code path.
  WslcGetVersion remains unblocked so SDK consumers can probe
  availability.

- WSLContainerCLIRegistryAllowlist: ADMX `<list valuePrefix="AllowedRegistry">`
  policy stored as a sub-key whose REG_SZ value data is each allowed
  registry hostname. Enforced in PullImage and PushImage via a shared
  helper. BuildImage is rejected outright when an allowlist is configured,
  since the in-VM docker daemon fetches FROM base images through its own
  pull mechanism and cannot be reliably gated per-registry. The policy
  is fail-open: an absent or empty sub-key is treated as no restriction,
  and registry I/O errors fall through to allow rather than break all
  container operations on a transient hiccup.

Adds two new HRESULTs:
- WSL_E_CONTAINER_DISABLED (0x33)
- WSL_E_REGISTRY_BLOCKED_BY_POLICY (0x34)

Adds PolicyTests covering disabled-state, allowed-state, CLI surfacing,
allowlist denial, build rejection, and pure-function unit tests for the
allowlist evaluator.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
benhillis pushed a commit that referenced this pull request May 8, 2026
Adds enforcement for two group policies whose ADMX templates landed in
PR #40422:

- AllowWSLContainer (DWORD): master switch for wslc.exe and the
  WSLCSessionManager COM API. Enforced at the COM wrapper so all
  callers (wslc.exe, WslcSDK, plugins) are gated through one code path.
  WslcGetVersion remains unblocked so SDK consumers can probe
  availability.

- WSLContainerCLIRegistryAllowlist: ADMX `<list valuePrefix="AllowedRegistry">`
  policy stored as a sub-key whose REG_SZ value data is each allowed
  registry hostname. Enforced in PullImage and PushImage via a shared
  helper. BuildImage is rejected outright when an allowlist is configured,
  since the in-VM docker daemon fetches FROM base images through its own
  pull mechanism and cannot be reliably gated per-registry. The policy
  is fail-open: an absent or empty sub-key is treated as no restriction,
  and registry I/O errors fall through to allow rather than break all
  container operations on a transient hiccup.

Adds two new HRESULTs:
- WSL_E_CONTAINER_DISABLED (0x33)
- WSL_E_REGISTRY_BLOCKED_BY_POLICY (0x34)

Adds PolicyTests covering disabled-state, allowed-state, CLI surfacing,
allowlist denial, build rejection, and pure-function unit tests for the
allowlist evaluator.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
benhillis pushed a commit that referenced this pull request May 8, 2026
Adds enforcement for two group policies whose ADMX templates landed in
PR #40422:

- AllowWSLContainer (DWORD): master switch for wslc.exe and the
  WSLCSessionManager COM API. Enforced inside WSLCSessionManagerFactory
  so CoCreateInstance returns WSL_E_CONTAINER_DISABLED directly when the
  policy is off; every caller (wslc.exe, WslcSDK, plugins) fails fast
  through one code path rather than getting a manager whose every method
  errors out individually.

- WSLContainerCLIRegistryAllowlist: ADMX `<list valuePrefix=\"AllowedRegistry\">`
  policy stored as a sub-key whose REG_SZ value data is each allowed
  registry hostname. Enforced in PullImage and PushImage via a shared
  helper. BuildImage is rejected outright when an allowlist is
  configured, since the in-VM docker daemon fetches FROM base images
  through its own pull mechanism and cannot be reliably gated
  per-registry. The policy is fail-open: an absent or empty sub-key is
  treated as no restriction, and registry I/O errors fall through to
  allow rather than break all container operations on a transient
  hiccup.

Adds two new HRESULTs:
- WSL_E_CONTAINER_DISABLED (0x33)
- WSL_E_REGISTRY_BLOCKED_BY_POLICY (0x34)

Adds PolicyTests covering disabled-state, CLI surfacing, allowlist
denial, build rejection, and pure-function unit tests for the allowlist
evaluator.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
benhillis pushed a commit that referenced this pull request May 8, 2026
Adds enforcement for two group policies whose ADMX templates landed in
PR #40422:

- AllowWSLContainer (DWORD): master switch for wslc.exe and the
  WSLCSessionManager COM API. Enforced inside WSLCSessionManagerFactory
  so CoCreateInstance returns WSL_E_CONTAINER_DISABLED directly when the
  policy is off; every caller (wslc.exe, WslcSDK, plugins) fails fast
  through one code path rather than getting a manager whose every method
  errors out individually.

- WSLContainerCLIRegistryAllowlist: ADMX `<list valuePrefix=\"AllowedRegistry\">`
  policy stored as a sub-key whose REG_SZ value data is each allowed
  registry hostname. Enforced in PullImage and PushImage via a shared
  helper. BuildImage is rejected outright when an allowlist is
  configured, since the in-VM docker daemon fetches FROM base images
  through its own pull mechanism and cannot be reliably gated
  per-registry. The policy is fail-open: an absent or empty sub-key is
  treated as no restriction, and registry I/O errors fall through to
  allow rather than break all container operations on a transient
  hiccup.

Adds two new HRESULTs:
- WSL_E_CONTAINER_DISABLED (0x33)
- WSL_E_REGISTRY_BLOCKED_BY_POLICY (0x34)

Adds PolicyTests covering disabled-state, CLI surfacing, allowlist
denial, build rejection, and pure-function unit tests for the allowlist
evaluator.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
benhillis pushed a commit that referenced this pull request May 8, 2026
Adds enforcement for two group policies whose ADMX templates landed in
PR #40422:

- AllowWSLContainer (DWORD): master switch for wslc.exe and the
  WSLCSessionManager COM API. Enforced inside WSLCSessionManagerFactory
  so CoCreateInstance returns WSL_E_CONTAINER_DISABLED directly when the
  policy is off; every caller (wslc.exe, WslcSDK, plugins) fails fast
  through one code path rather than getting a manager whose every method
  errors out individually.

- WSLContainerCLIRegistryAllowlist: ADMX `<list valuePrefix=\"AllowedRegistry\">`
  policy stored as a sub-key whose REG_SZ value data is each allowed
  registry hostname. Enforced in PullImage and PushImage via a shared
  helper. BuildImage is rejected outright when an allowlist is
  configured, since the in-VM docker daemon fetches FROM base images
  through its own pull mechanism and cannot be reliably gated
  per-registry. The policy is fail-open: an absent or empty sub-key is
  treated as no restriction, and registry I/O errors fall through to
  allow rather than break all container operations on a transient
  hiccup.

Adds two new HRESULTs:
- WSL_E_CONTAINER_DISABLED (0x33)
- WSL_E_REGISTRY_BLOCKED_BY_POLICY (0x34)

Adds PolicyTests covering disabled-state, CLI surfacing, allowlist
denial, build rejection, and pure-function unit tests for the allowlist
evaluator.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
benhillis pushed a commit that referenced this pull request May 8, 2026
Adds enforcement for two group policies whose ADMX templates landed in
PR #40422:

- AllowWSLContainer (DWORD): master switch for wslc.exe and the
  WSLCSessionManager COM API. Enforced inside WSLCSessionManagerFactory
  so CoCreateInstance returns WSL_E_CONTAINER_DISABLED directly when the
  policy is off; every caller (wslc.exe, WslcSDK, plugins) fails fast
  through one code path rather than getting a manager whose every method
  errors out individually.

- WSLContainerRegistryAllowlist: ADMX `<list valuePrefix=\"AllowedRegistry\">`
  policy stored as a sub-key whose REG_SZ value data is each allowed
  registry hostname. Enforced in PullImage and PushImage via a shared
  helper. BuildImage is rejected outright when an allowlist is
  configured, since the in-VM docker daemon fetches FROM base images
  through its own pull mechanism and cannot be reliably gated
  per-registry. The policy is fail-open: an absent or empty sub-key is
  treated as no restriction, and registry I/O errors fall through to
  allow rather than break all container operations on a transient
  hiccup.

Adds two new HRESULTs:
- WSL_E_CONTAINER_DISABLED (0x33)
- WSL_E_REGISTRY_BLOCKED_BY_POLICY (0x34)

Adds PolicyTests covering disabled-state, CLI surfacing, allowlist
denial, build rejection, and pure-function unit tests for the allowlist
evaluator.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
benhillis pushed a commit that referenced this pull request May 8, 2026
Adds enforcement for two group policies whose ADMX templates landed in
PR #40422:

- AllowWSLContainer (DWORD): master switch for wslc.exe and the
  WSLCSessionManager COM API. Enforced inside WSLCSessionManagerFactory
  so CoCreateInstance returns WSL_E_CONTAINER_DISABLED directly when the
  policy is off; every caller (wslc.exe, WslcSDK, plugins) fails fast
  through one code path rather than getting a manager whose every method
  errors out individually.

- WSLContainerRegistryAllowlist: ADMX `<list valuePrefix=\"AllowedRegistry\">`
  policy stored as a sub-key whose REG_SZ value data is each allowed
  registry hostname. Enforced in PullImage and PushImage via a shared
  helper. BuildImage is rejected outright when an allowlist is
  configured, since the in-VM docker daemon fetches FROM base images
  through its own pull mechanism and cannot be reliably gated
  per-registry. The policy is fail-open: an absent or empty sub-key is
  treated as no restriction, and registry I/O errors fall through to
  allow rather than break all container operations on a transient
  hiccup.

Adds two new HRESULTs:
- WSL_E_CONTAINER_DISABLED (0x33)
- WSL_E_REGISTRY_BLOCKED_BY_POLICY (0x34)

Adds PolicyTests covering disabled-state, CLI surfacing, allowlist
denial, build rejection, and pure-function unit tests for the allowlist
evaluator.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

6 participants