cloudflare / cloudflare/quiche

Move BoringSSL code to bssl-tls crate

Open
#2,463 0 comments 4 reactions 0 assignees View on GitHub
Dominant language
Rust
Stars
11.8k
Forks
1.1k
Avg merge
21h 9m
Merged PRs (30d)
6

Description

The current BoringSSL code [1] uses unsafe calls directly into `bssl-sys`. Recently, there is a safer alternative bindings called `bssl-tls` from the BoringSSL team [2]. Maybe it is a good idea to move to this new crate to reduce the number of unsafe calls.

The only feature gap is currently the support for RTT-0 which is already on the way.

[1] Current boringssl.rs code:
[quiche/src/tls/boringssl.rs](https://github.com/cloudflare/quiche/blob/master/quiche/src/tls/boringssl.rs)

[2] `bssl-tls` crate:
https://boringssl.googlesource.com/boringssl/+/refs/heads/main/rust/bssl-tls/Cargo.toml

CC @davidben @dingxiangfei2009

Contributor guide

Open the contributing guide

Research direction

Start with quiche/src/tls/boringssl.rs and compare its direct bssl-sys calls with the bssl-tls crate definition in BoringSSL's rust/bssl-tls/Cargo.toml. Check the current feature gap around RTT-0 before changing the integration. Done means the BoringSSL code uses the safer bindings while preserving existing behavior and accounting for that gap.

Written by the indexing model from the issue text.

Assessment

Tech stack
rust
Domain
security
Issue type
Refactor
Difficulty
4/5
Estimated time
3-5 days
Activity status
Quiet
Clarity
Mostly clear
Newbie friendliness
48/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.