Merge pull request 'docs(host): the identity comments still named ring after the aws-lc-rs move' (#202) from worktree-identity-doc-aws-lc into main
ci / rust-arm64 (push) Failing after 43s
ci / web (push) Successful in 1m40s
docker / builders (--build-arg FEDORA_VERSION=44, ci/fedora-rpm.Dockerfile, punktfunk-fedora44-rpm, -f44) (push) Canceled after 0s
docker / builders (ci/android-ci.Dockerfile, punktfunk-android-ci) (push) Canceled after 0s
docker / builders (ci/arch-ci.Dockerfile, punktfunk-arch-ci) (push) Canceled after 0s
docker / builders (ci/fedora-rpm.Dockerfile, punktfunk-fedora-rpm) (push) Canceled after 0s
docker / builders (ci/gamescope-trixie.Dockerfile, punktfunk-gamescope-trixie) (push) Canceled after 0s
docker / builders (ci/rust-ci.Dockerfile, punktfunk-rust-ci) (push) Canceled after 0s
docker / builders (ci/rust-ci-noble.Dockerfile, punktfunk-rust-ci-noble) (push) Canceled after 0s
docker / builders-arm64cross (push) Canceled after 0s
docker / apps (., web/Dockerfile, punktfunk-web) (push) Canceled after 0s
docker / apps (docs-site, docs-site/Dockerfile, punktfunk-docs) (push) Canceled after 0s
docker / deploy-docs (push) Canceled after 0s
ci / bun-nix (push) Successful in 55s
deb / build-publish-gamescope (push) Successful in 37s
ci / docs-site (push) Successful in 2m56s
arch / build-publish (push) Failing after 54s
rpm / build-publish (44, fedora-44, punktfunk-fedora44-rpm) (push) Failing after 1m15s
android / android (push) Successful in 9m40s
deb / build-publish-client-arm64 (push) Successful in 5m53s
deb / build-publish (push) Successful in 5m46s
ci / rust (push) Canceled after 11m40s
deb / build-publish-host (push) Canceled after 9m39s
deb / smoke-install (push) Canceled after 0s
rpm / build-publish (43, bazzite, punktfunk-fedora-rpm) (push) Canceled after 14m31s
windows-host / package (push) Canceled after 12m45s
windows-host / canary-manifest (push) Canceled after 0s
windows-host / winget-source (push) Canceled after 0s
ci / rust-arm64 (push) Failing after 43s
ci / web (push) Successful in 1m40s
docker / builders (--build-arg FEDORA_VERSION=44, ci/fedora-rpm.Dockerfile, punktfunk-fedora44-rpm, -f44) (push) Canceled after 0s
docker / builders (ci/android-ci.Dockerfile, punktfunk-android-ci) (push) Canceled after 0s
docker / builders (ci/arch-ci.Dockerfile, punktfunk-arch-ci) (push) Canceled after 0s
docker / builders (ci/fedora-rpm.Dockerfile, punktfunk-fedora-rpm) (push) Canceled after 0s
docker / builders (ci/gamescope-trixie.Dockerfile, punktfunk-gamescope-trixie) (push) Canceled after 0s
docker / builders (ci/rust-ci.Dockerfile, punktfunk-rust-ci) (push) Canceled after 0s
docker / builders (ci/rust-ci-noble.Dockerfile, punktfunk-rust-ci-noble) (push) Canceled after 0s
docker / builders-arm64cross (push) Canceled after 0s
docker / apps (., web/Dockerfile, punktfunk-web) (push) Canceled after 0s
docker / apps (docs-site, docs-site/Dockerfile, punktfunk-docs) (push) Canceled after 0s
docker / deploy-docs (push) Canceled after 0s
ci / bun-nix (push) Successful in 55s
deb / build-publish-gamescope (push) Successful in 37s
ci / docs-site (push) Successful in 2m56s
arch / build-publish (push) Failing after 54s
rpm / build-publish (44, fedora-44, punktfunk-fedora44-rpm) (push) Failing after 1m15s
android / android (push) Successful in 9m40s
deb / build-publish-client-arm64 (push) Successful in 5m53s
deb / build-publish (push) Successful in 5m46s
ci / rust (push) Canceled after 11m40s
deb / build-publish-host (push) Canceled after 9m39s
deb / smoke-install (push) Canceled after 0s
rpm / build-publish (43, bazzite, punktfunk-fedora-rpm) (push) Canceled after 14m31s
windows-host / package (push) Canceled after 12m45s
windows-host / canary-manifest (push) Canceled after 0s
windows-host / winget-source (push) Canceled after 0s
This commit was merged in pull request #202.
This commit is contained in:
@@ -3,12 +3,12 @@
|
||||
//! History: ONE RSA-2048 identity (`gamestream::cert`) served every plane, because Moonlight
|
||||
//! mandates RSA and the planes grew out of the GameStream host. The native punktfunk/1 QUIC
|
||||
//! plane and the management API now share THIS identity instead: **ECDSA P-256** — generated by
|
||||
//! ring via rcgen (no `rsa` crate on the native path, so the accepted Marvin advisory
|
||||
//! RUSTSEC-2023-0071 stops applying to native-only hosts once WP19 gates the compat planes),
|
||||
//! browser-compatible (an operator opens `/api/docs` in one, and no mainstream browser accepts an
|
||||
//! Ed25519 server cert), and carrying real SANs (localhost, loopback, the machine hostname) —
|
||||
//! which the legacy cert never had. The GameStream plane keeps the RSA identity untouched:
|
||||
//! Moonlight pins it and its pairing hashes bind its X.509 signature bytes.
|
||||
//! rcgen on the workspace's aws-lc-rs backend (no `rsa` crate on the native path, so the accepted
|
||||
//! Marvin advisory RUSTSEC-2023-0071 stops applying to native-only hosts once WP19 gates the
|
||||
//! compat planes), browser-compatible (an operator opens `/api/docs` in one, and no mainstream
|
||||
//! browser accepts an Ed25519 server cert), and carrying real SANs (localhost, loopback, the
|
||||
//! machine hostname) — which the legacy cert never had. The GameStream plane keeps the RSA
|
||||
//! identity untouched: Moonlight pins it and its pairing hashes bind its X.509 signature bytes.
|
||||
//!
|
||||
//! ## Migration — the rule that keeps every pinned fingerprint valid
|
||||
//!
|
||||
@@ -73,9 +73,9 @@ pub fn load_or_adopt(np: &crate::native_pairing::NativePairing) -> Result<Native
|
||||
}
|
||||
// Live native pairings pinned the legacy RSA cert — switching identities now would strand
|
||||
// every one of them (the pin is the SHA-256 of the leaf DER). Keep serving what they pinned.
|
||||
// A pem-only read on purpose (WP19): rustls/ring can SERVE an existing RSA cert without the
|
||||
// `rsa` crate, so the native-only build never links it — the crate exists solely behind the
|
||||
// `gamestream` feature (generation + the pairing signer).
|
||||
// A pem-only read on purpose (WP19): rustls/aws-lc-rs can SERVE an existing RSA cert without
|
||||
// the `rsa` crate, so the native-only build never links it — the crate exists solely behind
|
||||
// the `gamestream` feature (generation + the pairing signer).
|
||||
if let (Ok(c), Ok(k)) = (
|
||||
fs::read_to_string(dir.join("cert.pem")),
|
||||
fs::read_to_string(dir.join("key.pem")),
|
||||
|
||||
Reference in New Issue
Block a user