Expand description
§ktls-core
Abstraction for implementing Linux kernel TLS (kTLS) offload.
§Overview
This crate provides low-level APIs for setting up kernel TLS (kTLS) regardless of your preferred TLS library.
Please check the crate ktls-stream
for a higher-level Stream
abstraction.
§Kernel Compatibility
We perform daily CI tests against the following kernel versions:
Ver. | Min. Ver. |
---|---|
mainline | - |
stable | - |
6.12.x (LTS) | 6.12.0 |
6.6.x (LTS) | 6.6.0 |
6.1.x (LTS) | 6.1.28 |
5.15.x (LTS) | 5.15.25 |
5.10.x (LTS) | 5.10.102 |
5.4.x (LTS) | 5.4.181 |
-
For LTS versions, we test against the latest patch.
-
Have simply tested the minimum applicable kernel version, and listed above, though lacking CI testing guarantees.
We recommend using the latest Linux kernel, at least 6.6 LTS, for better support of kTLS.
§License
Licensed under either of:
- Apache License, Version 2.0 (LICENSE-APACHE or http://www.apache.org/licenses/LICENSE-2.0)
- MIT License (LICENSE-MIT or http://opensource.org/licenses/MIT)
at your option.
Re-exports§
pub use self::context::Context;
pub use self::error::Error;
pub use self::setup::setup_tls_params;
pub use self::setup::setup_ulp;
pub use self::setup::TlsCryptoInfoRx;
pub use self::setup::TlsCryptoInfoTx;
pub use self::tls::ConnectionTrafficSecrets;
pub use self::tls::ProtocolVersion;
pub use self::tls::TlsSession;
Modules§
- context
- Kernel TLS connection context.
- error
- Error related types and implementations.
- ffi
- Safe syscall wrappers.
- probe
- See
Compatibilities::probe
. - setup
- Transport Layer Security (TLS) is a Upper Layer Protocol (ULP) that runs over TCP. TLS provides end-to-end data integrity and confidentiality.
- shim
- Shim layer for different TLS libraries.
- tls
- Shim layer for TLS protocol implementations.
- utils
- Utilities