34#ifndef KEEL_TLS_MBEDTLS_H
35#define KEEL_TLS_MBEDTLS_H
Bring-your-own allocator vtable.
Definition allocator.h:12
struct KlTlsCtx KlTlsCtx
Opaque per-server TLS context (certificates, keys, ciphers). User-owned — KEEL never inspects or modi...
Definition tls.h:94
void kl_tls_mbedtls_ctx_destroy(KlTlsCtx *ctx)
Destroy a TLS context.
KlMtlsMode
Client authentication mode for mTLS.
Definition tls_mbedtls.h:43
@ KL_MTLS_OPTIONAL
Definition tls_mbedtls.h:45
@ KL_MTLS_NONE
Definition tls_mbedtls.h:44
@ KL_MTLS_REQUIRED
Definition tls_mbedtls.h:46
int kl_tls_mbedtls_set_hostname(KlTls *tls, const char *hostname)
Set the expected server hostname for SNI (client mode).
KlTlsCtx * kl_tls_mbedtls_ctx_create(const char *cert_path, const char *key_path, const char *ca_path, int client_auth, KlAllocator *alloc)
Create a server-side TLS context (certificates + keys).
KlTlsCtx * kl_tls_mbedtls_client_ctx_create(const char *ca_path, KlAllocator *alloc)
Create a client-side TLS context (for outbound connections).
KlTls * kl_tls_mbedtls_create(KlTlsCtx *ctx, KlAllocator *alloc)
Factory: create a per-connection KlTls session.