VS-15: scaffold meshcentral-amt-redirect crate #54

Merged
nrupard merged 2 commits from feat/amt-redirect-scaffold-vs-15 into main 2026-06-12 18:30:47 +02:00
Owner

Summary

Scaffolds the meshcentral-amt-redirect crate named in VS-15. VS-15 is an explicit deferred tracking placeholder: the Intel AMT redirection-protocol client (IDE-R / SOL / KVM / APF) cannot be implemented or smoke-tested end-to-end without a real AMT host or simulator, neither of which exists in the customer base yet. This PR lands the typed surface so the four AMT specialty routes and the upper AMT layers have something to wire onto incrementally, without pretending the protocols work.

What this does

  • New workspace crate meshcentral-amt-redirect (added to members and workspace.dependencies).
  • session module: the shared START_REDIRECTION_SESSION / AUTHENTICATE_SESSION handshake opcodes, a RedirectTarget (host, TLS-vs-plain port 16994/16993, AMT credentials), and an open() stub.
  • One module per sub-protocol: ider (drives oneclickrecovery.ashx), sol (commander.ashx), kvm (ipkvm.ashx), apf (apf.ashx).
  • RedirectError with a NotYetImplemented(&'static str) variant; every entry point returns it. Per-feature wire framing is documented as TODO against the legacy amt-redir-* / apf.js modules.

What this does NOT do

  • No protocol state machines, no real bytes on the wire. The four .ashx routes are deliberately left at their existing 501 hints.
  • No smoke tests against an AMT host (AC blocked on hardware/simulator availability). VS-15 stays open as the tracking placeholder.

Verification

cargo build -p meshcentral-amt-redirect and cargo clippy -p meshcentral-amt-redirect -- -D warnings both clean in the dev container.

🤖 Generated with Claude Code

## Summary Scaffolds the `meshcentral-amt-redirect` crate named in VS-15. VS-15 is an explicit deferred tracking placeholder: the Intel AMT redirection-protocol client (IDE-R / SOL / KVM / APF) cannot be implemented or smoke-tested end-to-end without a real AMT host or simulator, neither of which exists in the customer base yet. This PR lands the typed surface so the four AMT specialty routes and the upper AMT layers have something to wire onto incrementally, without pretending the protocols work. ## What this does - New workspace crate `meshcentral-amt-redirect` (added to `members` and `workspace.dependencies`). - `session` module: the shared `START_REDIRECTION_SESSION` / `AUTHENTICATE_SESSION` handshake opcodes, a `RedirectTarget` (host, TLS-vs-plain port 16994/16993, AMT credentials), and an `open()` stub. - One module per sub-protocol: `ider` (drives `oneclickrecovery.ashx`), `sol` (`commander.ashx`), `kvm` (`ipkvm.ashx`), `apf` (`apf.ashx`). - `RedirectError` with a `NotYetImplemented(&'static str)` variant; every entry point returns it. Per-feature wire framing is documented as TODO against the legacy `amt-redir-*` / `apf.js` modules. ## What this does NOT do - No protocol state machines, no real bytes on the wire. The four `.ashx` routes are deliberately left at their existing 501 hints. - No smoke tests against an AMT host (AC blocked on hardware/simulator availability). VS-15 stays open as the tracking placeholder. ## Verification `cargo build -p meshcentral-amt-redirect` and `cargo clippy -p meshcentral-amt-redirect -- -D warnings` both clean in the dev container. 🤖 Generated with [Claude Code](https://claude.com/claude-code)
feat(amt): scaffold meshcentral-amt-redirect crate
Some checks failed
Check / fmt + clippy + build + tests (pull_request) Failing after 3s
824ad2b53d
VS-15 is a deferred tracking placeholder for the Intel AMT redirection-protocol client that the four AMT specialty routes (ipkvm.ashx, commander.ashx, apf.ashx, oneclickrecovery.ashx) need. The full IDE-R / SOL / KVM / APF state machines cannot be built or smoke-tested without a real AMT host, so this lands the typed surface only and leaves the four routes at their existing 501 hints.

New crate meshcentral-amt-redirect names the wire layer: a shared redirection session module (the START_REDIRECTION_SESSION / AUTHENTICATE_SESSION handshake plus a RedirectTarget for host/port/credentials) and one module per sub-protocol (ider, sol, kvm, apf). Every entry point returns RedirectError::NotYetImplemented; per-feature framing is documented as TODO against the legacy amt-redir-* / apf.js modules. This gives the upper layers and the web routes a stable type surface to wire onto incrementally when an AMT deployment surfaces, without pretending the protocols are implemented.

#VS-15
style(amt): rustfmt wrap in amt-redirect session stub
All checks were successful
Check / fmt + clippy + build + tests (pull_request) Successful in 1m56s
Create release / Create release from merged PR (pull_request) Has been skipped
3b5c9cc534
#VS-15
nrupard deleted branch feat/amt-redirect-scaffold-vs-15 2026-06-12 18:30:47 +02:00
Sign in to join this conversation.
No reviewers
No labels
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set

Reference
psa-systems/vervain-server!54
No description provided.