hyper_util: expose a timeout on ReadVersion in `server::conn::auto`
Maintainer thường phản hồi trong vòng 2 ngày
Chưa có ai nhận issue này.
- #337 của @Aditya-9-6 — đã đóng, không merge
Đánh giá
- Độ khó
- 4/5
- Thời gian dự kiến
- 3-5 ngày
- Mức phù hợp với người mới
- 45/100
- Loại issue
- Tính năng
- Độ rõ ràng
- Khá rõ ràng
- Mức độ hoạt động
- Sôi nổi
- Công nghệ
- rust
- Lĩnh vực
- api, networking, security
Hướng nghiên cứu
Bắt đầu bằng cách đọc phần triển khai của server::conn::auto và timeout h1 cho initial-header hiện có được đề cập trong issue. Theo dõi nơi ReadVersion chờ và cách có thể expose cấu hình timeout, sau đó xem xét các test lân cận. Được xem là hoàn tất khi một timeout opt-in ngăn connection ở trạng thái idle phải chờ vô thời hạn, với coverage cho hành vi đã cấu hình.
Do mô hình lập chỉ mục viết ra từ nội dung của issue.
Mô tả
Is your feature request related to a problem? Please describe.
When serving h1 directly, hyper currently has a time on reading the initial headers (see https://github.com/hyperium/hyper/issues/3178 for context/the PR). However, with auto there is no timer on the ReadVersion, which makes this timer unreachable until the ReadVersion is complete.
The impact of this is that the user can open up a connection indefinitely without sending any data which is a DoS vector.
Describe the solution you'd like
An (opt in, perhaps?) timeout on server::conn::auto
Describe alternatives you've considered
A clear and concise description of any alternative solutions or features you've considered.
Additional context
Add any other context or screenshots about the feature request here.
- Ngôn ngữ chính
- Rust
- Star
- 16.4k
- Fork
- 1.8k
- Merge trung bình
- 5 ngày 17 phút
- Pull request đã merge (30 ngày)
- 19
Chuẩn bị môi trường
- Không có Dockerfile hay tệp Docker Compose
- Không có mẫu pull request
- Đọc hướng dẫn đóng góp
Bắt đầu từ đâu
- Đọc hết issue, rồi đọc hướng dẫn đóng góp của dự án.
- Bình luận trên issue rằng bạn sẽ nhận — tránh hai người làm cùng một việc.
- Fork repository và làm thay đổi trên một nhánh.
- Mở pull request có tham chiếu số hiệu của issue.
Issue khác của hyperium/hyper
-
Publicly reexport the http crateĐang mởC-feature
Độ khó 1/5 Dưới một giờ Mức phù hợp với người mới 65/100
hyperium/hyper#2652 · 4 reaction ·
Maintainer thường phản hồi trong vòng 2 ngày
-
Write a HIP for `Body::poll_progress()`Có thể đã có người làm @cratelyn đã nhận 5 ngày trước. Đang mởA-body B-rfc C-feature
hyperium/hyper#4228 · 1 người được giao ·
Maintainer thường phản hồi trong vòng 2 ngày
-
Độ khó 3/5 1-2 ngày Mức phù hợp với người mới 74/100
hyperium/hyper#4211 · 1 bình luận ·
Maintainer thường phản hồi trong vòng 2 ngày
-
Upgraded HTTP/2 CONNECT streams cannot be reset, so a failed tunnel looks like a clean closeCó thể đã có người làm @jeremyjpj0916 đã nhận 15 ngày trước. Đang mở
Độ khó 4/5 3-5 ngày Mức phù hợp với người mới 55/100
Maintainer thường phản hồi trong vòng 2 ngày
-
Allow connection pools to stop reusing an HTTP/2 connection before its keep-alive timeoutCó thể đã có người làm @jiahaoliang đã nhận 33 ngày trước. Đang mởC-feature
Độ khó 5/5 Hơn một tuần Mức phù hợp với người mới 35/100
hyperium/hyper#4186 · 3 bình luận ·
Maintainer thường phản hồi trong vòng 2 ngày
Tất cả issue của hyperium/hyper
Issue tương tự
-
Độ khó 1/5 Dưới một giờ Mức phù hợp với người mới 75/100
RustCrypto/SSH#596 ·
-
proxy: SQL-over-HTTP turns empty arrays into [""] or [false], or HTTP 500 for int and float arraysĐang mở
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 83/100
neondatabase/neon#12965 ·
-
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 78/100
goauthentik/authentik#26867 ·
Maintainer thường phản hồi trong vòng 1 ngày
-
Table and code-block right borders are clipped when the TOC panel is resized wider than the defaultĐang mở
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 83/100
Maintainer thường phản hồi trong vòng 1 ngày
-
api bug macos maintainer-needed p2 triaged
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 66/100
Maintainer thường phản hồi trong vòng 1 ngày