tursodatabase / tursodatabase/libsql
netquirk/monitoring-backend NET-883: please bump hyper-rustls to >=0.26 in libsql 0.6 (rustls 0.22 → 0.23) to clear rustls-webpki 0.102.8 advisories
Nobody has claimed this yet.
- Dominant language
- C
- Stars
- 17.2k
- Forks
- 531
- Avg merge
- 1h 12m
- Merged PRs (30d)
- 1
Description
Summary
The Netquirk monitoring backend (rust + libsql 0.6) currently pulls hyper-rustls 0.25.0 → rustls 0.22.4 → rustls-webpki 0.102.8, which is flagged by four high-severity advisories:
- RUSTSEC-2026-0049 (CRL Distribution Point matching)
- RUSTSEC-2026-0098 (URI name constraints)
- RUSTSEC-2026-0099 (wildcard name constraints)
- RUSTSEC-2026-0104 (CRL parsing panic)
hyper-rustls 0.26+ already moved to rustls 0.23 (which uses rustls-webpki 0.103.x and clears all four). libsql 0.6 hard-pins hyper-rustls = "^0.25", so the fix has to land in libsql itself (or a libsql 0.7+).
What we've done locally
- Confirmed
libsql 0.6(current stable on crates.io),libsql 0.9.30(also stable), andlibsql 0.10.0-pre.4all still pull the vulnerable chain —hyper-rustls 0.25.0is the constraint, notlibsql. - Backported the
rustls 0.22 → 0.23portion of upstream commitrustls/hyper-rustls@731d19eonto thehyper 0.14line (the version linelibsql 0.6still needs). Diff is a 4-lineCargo.tomledit + a version bump to0.25.1. - Verified it locally:
cargo checkpasses onhyper 0.14 + rustls 0.23 + tokio-rustls 0.26.- In the Netquirk monitoring backend,
[patch.crates-io] hyper-rustls = { git = "netquirk/hyper-rustls", branch = "netquirk/rustls-0.23" }makescargo auditdrop all four rustls-webpki 0.102.8 advisories. - All
libsqlintegration tests pass (in-memory + remote). connect_remoteagainst the live Bunny libSQL endpoint succeeds.
Request
Please bump the optional hyper-rustls dep in libsql (currently ^0.25) to ^0.26 (or whatever is current) so downstream consumers — including the Netquirk monitoring backend — get rustls 0.23 and the patched rustls-webpki without needing a [patch.crates-io] override.
If a hyper 0.14 compatible line of hyper-rustls is no longer maintained for the ^0.25 range, even just bumping the existing ^0.25 pin to ^0.25, <0.26 would force Cargo to look at 0.25.1 once you publish it; we'd much rather see ^0.26 so we can drop our patch.
Tracking issue on our side: NET-883 (parent NET-868).
Thanks!
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start with libsql's Cargo.toml and inspect the optional hyper-rustls dependency and its compatibility with the existing hyper 0.14 line. Run cargo check, cargo audit, and the libsql integration tests, including in-memory and remote cases. Done means the dependency resolves to the requested rustls line, all four advisories are cleared, and the tests pass.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- rust
- Domain
- databases, security
- Issue type
- Bug
- Difficulty
- 3/5
- Estimated time
- 1-2 days
- Activity status
- Quiet
- Clarity
- Mostly clear
- Newbie friendliness
- 64/100