ruview @ v1585
integrity
- size
- 61.1 MiB
- downloaded
- last checked
release notes
Automated release from CI pipeline
Changes: fix(auth): match the Bearer scheme case-insensitively (RFC 6750) (#929)
require_bearer parsed the Authorization header with
strip_prefix("Bearer "), which is case-sensitive. Per RFC 6750 §2.1 /
RFC 7235 §2.1 the auth-scheme is case-insensitive, so a correct token sent
as Authorization: bearer <token> (or BEARER, or with extra whitespace)
was rejected with a confusing "invalid bearer token" 401 — needless friction
when setting up RUVIEW_API_TOKEN (the active #864/#924 theme).
Now the scheme is matched with eq_ignore_ascii_case and leading token
whitespace trimmed. The token comparison itself is unchanged — still exact
and constant-time (ct_eq) — so this does not weaken auth: a wrong token or
a non-Bearer scheme (Basic …) still returns 401.
New test accepts_case_insensitive_bearer_scheme covers bearer/BEARER/
extra-space (accept) and wrong-token/Basic (still reject). bearer_auth
suite: 9 passed.
Docker Image:
ghcr.io/ruvnet/RuView:be48143f774770ad1b89f2491473306f55004847
download
curl -fL -o v1585.zip https://ratatoskr.space/pkg/ruview/v1585.zip
printf '%s %s\n' '1c1e07b7ba8fc4541ef85825073adb4f450098ee42c152b2946b85ab496d4d10' 'v1585.zip' | sha256sum -c -
$url = "https://ratatoskr.space/pkg/ruview/v1585.zip"
$out = "v1585.zip"
Invoke-WebRequest -Uri $url -OutFile $out
if ((Get-FileHash $out -Algorithm SHA256).Hash.ToLowerInvariant() -ne "1c1e07b7ba8fc4541ef85825073adb4f450098ee42c152b2946b85ab496d4d10") { throw "sha256 mismatch" }
curl -fL -o v1585.tar.gz https://ratatoskr.space/pkg/ruview/v1585.tar.gz
printf '%s %s\n' 'b70273340b65474b82883cf7d936d847c33fc360394b8d730c6393e5e3c561b6' 'v1585.tar.gz' | sha256sum -c -
$url = "https://ratatoskr.space/pkg/ruview/v1585.tar.gz"
$out = "v1585.tar.gz"
Invoke-WebRequest -Uri $url -OutFile $out
if ((Get-FileHash $out -Algorithm SHA256).Hash.ToLowerInvariant() -ne "b70273340b65474b82883cf7d936d847c33fc360394b8d730c6393e5e3c561b6") { throw "sha256 mismatch" }
download via yggdrasil mesh
curl -fL -o v1585.zip http://14cc7d57b5e70f679b851fe5b272ce17c70632ff4beb5b35ab64bc706b2485af.pk.ygg/pkg/ruview/v1585.zip
printf '%s %s\n' '1c1e07b7ba8fc4541ef85825073adb4f450098ee42c152b2946b85ab496d4d10' 'v1585.zip' | sha256sum -c -
$url = "http://14cc7d57b5e70f679b851fe5b272ce17c70632ff4beb5b35ab64bc706b2485af.pk.ygg/pkg/ruview/v1585.zip"
$out = "v1585.zip"
Invoke-WebRequest -Uri $url -OutFile $out
if ((Get-FileHash $out -Algorithm SHA256).Hash.ToLowerInvariant() -ne "1c1e07b7ba8fc4541ef85825073adb4f450098ee42c152b2946b85ab496d4d10") { throw "sha256 mismatch" }
curl -fL -o v1585.tar.gz http://14cc7d57b5e70f679b851fe5b272ce17c70632ff4beb5b35ab64bc706b2485af.pk.ygg/pkg/ruview/v1585.tar.gz
printf '%s %s\n' 'b70273340b65474b82883cf7d936d847c33fc360394b8d730c6393e5e3c561b6' 'v1585.tar.gz' | sha256sum -c -
$url = "http://14cc7d57b5e70f679b851fe5b272ce17c70632ff4beb5b35ab64bc706b2485af.pk.ygg/pkg/ruview/v1585.tar.gz"
$out = "v1585.tar.gz"
Invoke-WebRequest -Uri $url -OutFile $out
if ((Get-FileHash $out -Algorithm SHA256).Hash.ToLowerInvariant() -ne "b70273340b65474b82883cf7d936d847c33fc360394b8d730c6393e5e3c561b6") { throw "sha256 mismatch" }
| artifact | format | size | hashes |
|---|---|---|---|
| v1585.zip | zip | 61.1 MiB |
blake3-24 4b09e4fd12a4ef0b017595a49ab422b15b03989c2b5686da
sha256 1c1e07b7ba8fc4541ef85825073adb4f450098ee42c152b2946b85ab496d4d10
sha1 2972f0fafd7628dfc303b918f35de87365a558bc
|
| v1585.tar.gz | tar.gz | 59.3 MiB |
blake3-24 ea224790814ca8e583eabe9277b0263eb8dd56fdb163481f
sha256 b70273340b65474b82883cf7d936d847c33fc360394b8d730c6393e5e3c561b6
sha1 24f80b43087dfbee472bf3ee8ba0e2c3ebbeaa6c
|
install
http_archive(
name = "ruview",
urls = ["https://ratatoskr.space/pkg/ruview/v1585.tar.gz"],
integrity = "sha256-twJzNAtlR0uCiDz32TbYR8M/w2A5S41zDGOT5ePFYbY=",
strip_prefix = "ruview-v1585",
)
.url = "https://ratatoskr.space/pkg/ruview/v1585.tar.gz",
install via yggdrasil mesh
http_archive(
name = "ruview",
urls = ["http://14cc7d57b5e70f679b851fe5b272ce17c70632ff4beb5b35ab64bc706b2485af.pk.ygg/pkg/ruview/v1585.tar.gz"],
integrity = "sha256-twJzNAtlR0uCiDz32TbYR8M/w2A5S41zDGOT5ePFYbY=",
strip_prefix = "ruview-v1585",
)
.url = "http://14cc7d57b5e70f679b851fe5b272ce17c70632ff4beb5b35ab64bc706b2485af.pk.ygg/pkg/ruview/v1585.tar.gz",