/* =============================================================================
 * tls.h - mbedTLS over LwIP 소켓 전송 (transport_t 제공)
 *
 * 구현(tls_mbedtls.c): TLS1.2 클라이언트(ECDHE-RSA + AES-GCM), 하드웨어 RNG
 * 엔트로피, 임베드된 서버 루트 CA(certs/server_ca.h)로 서버 인증서 검증, SNI.
 * 메모리 절약을 위해 mbedtls_config.h 에서 content length 를 축소한다.
 * ===========================================================================*/
#ifndef TLS_H
#define TLS_H

#include "transport.h"

/* TLS 전역 초기화 (부팅 시 1회): 엔트로피/DRBG 시드, CA 인증서 파싱.
 * 반환: 0 성공, 음수 실패. */
int tls_init(void);

/* transport_t 를 mbedTLS 컨텍스트에 바인딩한다. connect 시 핸드셰이크 수행.
 * t 는 호출자가 보유하는 저장소(스택/정적). 반환: 0 성공, 음수 실패. */
int tls_transport_init(transport_t *t);

#endif /* TLS_H */
