1 | /*! |
2 | |
3 | This documentation primarily aims to explain design decisions taken in rustls. |
4 | |
5 | It does this from a few aspects: how rustls attempts to avoid construction errors |
6 | that occurred in other TLS libraries, how rustls attempts to avoid past TLS |
7 | protocol vulnerabilities, and assorted advice for achieving common tasks with rustls. |
8 | */ |
9 | #![allow (non_snake_case)] |
10 | |
11 | /// This section discusses vulnerabilities in other TLS implementations, theorising their |
12 | /// root cause and how we aim to avoid them in rustls. |
13 | #[path = "implvulns.rs" ] |
14 | pub mod _01_impl_vulnerabilities; |
15 | |
16 | /// This section discusses vulnerabilities and design errors in the TLS protocol. |
17 | #[path = "tlsvulns.rs" ] |
18 | pub mod _02_tls_vulnerabilities; |
19 | |
20 | /// This section collects together goal-oriented documentation. |
21 | #[path = "howto.rs" ] |
22 | pub mod _03_howto; |
23 | |
24 | /// This section documents rustls itself: what protocol features are and are not implemented. |
25 | #[path = "features.rs" ] |
26 | pub mod _04_features; |
27 | |
28 | /// This section provides rationale for the defaults in rustls. |
29 | #[path = "defaults.rs" ] |
30 | pub mod _05_defaults; |
31 | |