rustls / rustls/tokio-rustls

Documented solution to return HTTP errors to plaintext clients broke

Open
#146 3 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Dominant language
Rust
Stars
234
Forks
108
Avg merge
5h 12m
Merged PRs (30d)
4

Description

https://github.com/rustls/tokio-rustls/blob/7ac70c11031df8278f3e493f7991317c7a8a7d2b/src/server.rs#L106-L128 shows an example of using take_io to write to the socket after a handshake fails. However, this stopped working in 0587801001d4095c992e8c7d6c466e924266bbd5 which started sending alerts on the socket before returning.

There is seemingly some discussion on whether this should or shouldn't be possible in the library (https://github.com/rustls/tokio-rustls/issues/54) but probably we should remove the example if its intended to send alerts here (which does seem like reasonable behavior)

Contributor guide

No contributing guide indexed for this repository

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Read the example in src/server.rs around lines 106-128 and compare its take_io behavior with commit 0587801001d4095c992e8c7d6c466e924266bbd5. Review the linked discussion in issue 54 before deciding whether the example is invalid; done means the documentation no longer presents a broken solution, with any relevant documentation checks passing.

Written by the indexing model from the issue text.

Assessment

Tech stack
rust
Domain
documentation, networking
Issue type
Documentation
Difficulty
2/5
Estimated time
1-3 hours
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.