# ktls-core
[](https://crates.io/crates/ktls-core)
[](https://docs.rs/ktls-core)
[](https://github.com/hanyu-dev/ktls/actions/workflows/ci.yml?query=branch%3Amain)
[](https://github.com/hanyu-dev/ktls/actions/workflows/kernel-compatibility-test.yml?query=branch%3Amain)
[](https://codecov.io/github/hanyu-dev/ktls)
[](LICENSE-MIT)
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`](https://crates.io/crates/ktls-stream) for a higher-level `Stream` abstraction.
## Kernel Compatibility
We perform daily CI tests against the following kernel versions:
| 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.
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](LICENSE-APACHE) or <http://www.apache.org/licenses/LICENSE-2.0>)
- MIT License ([LICENSE-MIT](LICENSE-MIT) or <http://opensource.org/licenses/MIT>)
at your option.