Hacktoberfest 2026: le issue che i maintainer hanno segnato per ottobre, aperte e adatte ai principianti. Sfoglia le issue Hacktoberfest

Research platform-native TLS trust configuration

Aperta
#454 0 commenti 0 reazioni 0 assegnatari Vedi su GitHub

I maintainer di solito rispondono entro 1 giorno

Nessuno ha ancora preso questa issue.

Valutazione

Difficoltà
5/5
Tempo stimato
Più di una settimana
Idoneità per principianti
32/100
Tipo di issue
Documentazione
Chiarezza
Abbastanza chiara
Stato di attività
Tranquilla
Stack tecnologico
rust

Direzione di ricerca

Esamina src/http.rs e Cargo.toml per confermare la configurazione attuale delle root incluse, quindi leggi le issue correlate #448, #438 e #445. Confronta le strategie di trust elencate tra i target supportati e i casi di certificato specificati. Il lavoro è considerato completato quando sono disponibili una raccomandazione documentata, la relativa motivazione, un comportamento azionabile in caso di errore e i passaggi successivi per implementazione e test, con la documentazione del runtime aggiornata.

Scritto dal modello di indicizzazione a partire dal testo della issue.

Descrizione

Context

The HTTP host currently builds its TLS connector with with_webpki_roots() in src/http.rs, while Cargo.toml enables the webpki-tokio feature. This embeds the Mozilla root set in every basic-cli application and does not use trust configured by the operating system.

Bundled roots make static applications self-contained and allow public HTTPS to work in minimal environments without a system CA bundle. However, a general-purpose CLI may need to honor:

  • enterprise TLS interception and private certificate authorities;
  • locally trusted development certificates;
  • administrator trust and distrust policy;
  • operating-system certificate updates;
  • standard CA bundle overrides such as SSL_CERT_FILE and SSL_CERT_DIR.

Research questions

Investigate and document the tradeoffs between:

  • a platform verifier;
  • loading native roots into rustls;
  • retaining only bundled WebPKI roots;
  • combining or falling back between native and bundled roots;
  • exposing an application-level custom CA configuration.

The investigation should cover:

  • x64 and arm64 macOS, x64 Windows, and x64 and arm64 Linux musl;
  • static linking, cross-compilation, binary size, and startup/runtime cost;
  • minimal containers or hosts with no usable native certificate store;
  • whether fallback to bundled roots could bypass an intentional OS distrust decision;
  • actionable errors when roots cannot be loaded or a certificate is rejected;
  • private CA, public CA, missing-store, and invalid-store test cases.

Desired outcome

Record a recommended trust policy for basic-cli and the rationale behind it. If a change is recommended, define implementation and test follow-ups that provide predictable behavior on every supported target without requiring users to disable certificate verification.

Keep the public runtime documentation updated with the chosen behavior.

Related work

  • #448 documents the current bundled-root behavior.
  • #438 tracks stable HTTP transport error classification, including TLS failures.
  • #445 tracks dependency advisories and rebuild expectations for statically linked applications.
Lingua principale
Rust
Stelle
121
Fork
45
Merge medio
19h 1m
PR unite (30g)
16

Preparare l'ambiente

Come iniziare

  1. Leggi tutta la issue e poi la guida ai contributi del progetto.
  2. Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
  3. Fai un fork del repository e lavora su un branch.
  4. Apri una pull request che faccia riferimento al numero della issue.

Altre issue di roc-lang/basic-cli

Tutte le issue di roc-lang/basic-cli

Issue simili

Altre issue su Rust

Ricevi le nuove issue nella tua casella

Un breve riepilogo di issue GitHub adatte ai principianti.