Skip to content

fix(tls): select native TLS for Windows gateways - #1849

Draft
Marc-André Moreau (mamoreau-devolutions) wants to merge 1 commit into
masterfrom
copilot/windows-gateway-tls-wiring
Draft

fix(tls): select native TLS for Windows gateways#1849
Marc-André Moreau (mamoreau-devolutions) wants to merge 1 commit into
masterfrom
copilot/windows-gateway-tls-wiring

Conversation

@mamoreau-devolutions

Copy link
Copy Markdown
Contributor

Use native TLS for Windows RDP sessions and gateway forwards.
Keep Rustls on non-Windows targets and validate exclusive resolution.

Use native TLS for Windows RDP sessions and gateway forwards.
Keep Rustls on non-Windows targets and validate exclusive resolution.
Copilot AI balanced review requested due to automatic review settings August 30, 2026 11:48
@github-actions github-actions Bot added maintainer-required Maintainer review or intervention is required risk/unknown Risk could not be determined automatically; needs maintainer-level scrutiny scope/ffi Affects native or .NET bindings scope/tooling Build, CI, release, or developer tooling size/M Size: up to 449 counted lines and 10 files; exceeds S in either measure labels Aug 30, 2026

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Pull request overview

Selects native TLS on Windows and Rustls elsewhere for RDP and gateway paths.

Changes:

  • Adds target-specific TLS backend dependencies.
  • Adjusts TLS tests for platform capabilities.
  • Validates backend exclusivity and documents behavior.

Reviewed changes

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

Show a summary per file
File Description
xtask/src/check.rs Validates target TLS feature graphs.
crates/ironrdp-viewer/Cargo.toml Selects viewer TLS by target.
crates/ironrdp-tls/tests/native_tls.rs Adjusts lint handling.
crates/ironrdp-testsuite-extra/tests/e2e.rs Adapts callback tests for native TLS.
crates/ironrdp-testsuite-extra/Cargo.toml Selects test backend by target.
crates/ironrdp-daemon/Cargo.toml Selects client TLS by target.
crates/ironrdp-agent/README.md Documents platform backend behavior.
crates/ironrdp-agent/Cargo.toml Selects gateway TLS by target.
crates/ironrdp-activex/Cargo.toml Switches ActiveX to native TLS.

[features]
default = ["rustls"]
# The target-specific dependencies below choose the default TLS backend.
default = []
[target.'cfg(windows)'.dependencies]
anyhow = "1"
ironrdp-client = { path = "../ironrdp-client", version = "0.1", features = ["clipboard", "dvc-com-plugin", "gateway", "location", "rdpdr", "rustls", "smartcard", "sound", "webauthn"] }
ironrdp-client = { path = "../ironrdp-client", version = "0.1", features = ["clipboard", "dvc-com-plugin", "gateway", "location", "native-tls", "rdpdr", "smartcard", "sound", "webauthn"] }
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

maintainer-required Maintainer review or intervention is required risk/unknown Risk could not be determined automatically; needs maintainer-level scrutiny scope/ffi Affects native or .NET bindings scope/tooling Build, CI, release, or developer tooling size/M Size: up to 449 counted lines and 10 files; exceeds S in either measure

Development

Successfully merging this pull request may close these issues.

2 participants