1#![cfg_attr(not(feature = "std"), no_std)]
5#![cfg(feature = "std")]
6extern crate alloc;
7
8mod client;
9mod crypto;
10mod errors;
11pub mod key_schedule;
12mod message;
13mod record;
14
15#[cfg(feature = "std")]
16mod certificates;
17
18#[cfg(feature = "std")]
19pub use certificates::*;
20
21#[cfg(feature = "crypto-default-provider")]
22pub mod crypto_default_provider;
23
24#[cfg(feature = "tokio")]
25pub mod tokio;
26
27pub use client::*;
30pub use crypto::*;
31pub use errors::*;
32
33pub const MAX_HASH_SIZE: usize = 48;
35pub const PSK_MAX_SIZE: usize = MAX_HASH_SIZE;
36pub const AEAD_MAX_KEY_SIZE: usize = 32;
37pub const AEAD_TAG_SIZE: usize = 16;
39pub const KEY_EXCHANGE_SECRET_KEY_MAX_SIZE: usize = 32 + 64;
41pub const KEY_EXCHANGE_PUBLIC_KEY_MAX_SIZE: usize = 1216;
43pub const KEY_EXCHANGE_SHARED_SECRET_MAX_SIZE: usize = 64;
44pub const KEY_EXCHANGE_MAX_GROUPS: usize = 3;
46pub const SIGNING_PUBLIC_KEY_MAX_SIZE: usize = 294;
48pub const SIGNATURE_MAX_SIZE: usize = 256;
49pub const ALPN_PROTOCOL_MAX_SIZE: usize = 32;
50
51pub const MAX_RECORD_SIZE: usize = 16662;
54
55pub const MAX_CERTS: usize = 10;