Devolutions / Devolutions/IronRDP

Switch `ironrdp-client`/`ironrdp-web`/ffi to the new CredSSP API; migrate `ironrdp-web` error mapping

Open
#1,431 0 comments 0 reactions 0 assignees View on GitHub
scope/web
Dominant language
Rust
Stars
3.2k
Forks
275
Avg merge
1d 11h
Merged PRs (30d)
189

Description

Move the shipped consumers onto the trait-based path, injecting the vetted backend so NLA keeps "just working."

### Scope
- [ ] `ironrdp-client`, `ironrdp-web`, and ffi call `connect_*_with(...)` with the default `ironrdp-credssp-impl` provider (convenience constructor keeps the common path a one-liner); their connect error becomes `ConnectError`.
- [ ] `ironrdp-web/src/error.rs`: map from `ConnectError`/`CredsspError::kind()` (`WrongPassword`/`LogonFailure`/`AccessDenied`) instead of matching `sspi::Error`. Any residual old `ConnectorError`-based arm may remain until #1433.

### Acceptance criteria
- Interactive NLA login works unchanged in client and web via the new path.

Contributor guide

No contributing guide indexed for this repository

Research direction

Start with the connect_*_with(...) call sites in ironrdp-client, ironrdp-web, and ffi, then inspect the default ironrdp-credssp-impl provider and the new ConnectError path. Read ironrdp-web/src/error.rs for the required CredsspError::kind() mappings. Done means all shipped consumers use the new path and interactive NLA login remains unchanged.

Written by the indexing model from the issue text.

Assessment

Tech stack
rust
Domain
networking
Issue type
Refactor
Difficulty
4/5
Estimated time
3-5 days
Activity status
Quiet
Clarity
Mostly clear
Newbie friendliness
48/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.