1/*!
2
3This documentation primarily aims to explain design decisions taken in rustls.
4
5It does this from a few aspects: how rustls attempts to avoid construction errors
6that occurred in other TLS libraries, how rustls attempts to avoid past TLS
7protocol 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"]
14pub mod _01_impl_vulnerabilities;
15
16/// This section discusses vulnerabilities and design errors in the TLS protocol.
17#[path = "tlsvulns.rs"]
18pub mod _02_tls_vulnerabilities;
19
20/// This section collects together goal-oriented documentation.
21#[path = "howto.rs"]
22pub mod _03_howto;
23
24/// This section documents rustls itself: what protocol features are and are not implemented.
25#[path = "features.rs"]
26pub mod _04_features;
27
28/// This section provides rationale for the defaults in rustls.
29#[path = "defaults.rs"]
30pub mod _05_defaults;
31