/* =============================================================================
 * server_ca.h - 서버(Cafe24) 루트 CA 인증서 (flash 임베드)
 *
 * tls_mbedtls.c 가 mbedtls_x509_crt_parse() 로 이 PEM 을 파싱하여
 * 서버 인증서 체인을 검증한다(폐쇄망 → 런타임 CA 다운로드 불가, 펌웨어에 고정).
 *
 * 중요(mbedTLS PEM 요구사항):
 *   mbedtls_x509_crt_parse() 는 인자가 PEM 일 때, buflen 에 마지막 NUL 종결자가
 *   "포함"되어야 한다고 요구한다. 따라서 SERVER_CA_PEM_LEN 은 strlen() 이 아니라
 *   sizeof(SERVER_CA_PEM) (즉, 종결 NUL 1바이트 포함) 로 정의한다.
 *
 * 만료/교체(위험 R3, docs/stm32f407_migration_plan.md):
 *   루트 CA 가 만료되거나 발급기관이 교체되면 TLS 연결이 불가해진다.
 *   폐쇄망이라 OTA 로 갱신할 수 없으므로, 만료 시 펌웨어 재빌드/재배포가 필요하다.
 *   교체 절차는 certs/README.md 참고.
 * ===========================================================================*/
#ifndef SERVER_CA_H
#define SERVER_CA_H

#ifdef __cplusplus
extern "C" {
#endif

/* PEM 형식 서버 루트 CA (NUL 종결 C 문자열). */
extern const char SERVER_CA_PEM[];

/* PEM 바이트 길이. **종결 NUL 을 포함**한다(mbedTLS PEM 파싱 요구사항).
 * 즉 SERVER_CA_PEM_LEN == sizeof(SERVER_CA_PEM). */
extern const unsigned int SERVER_CA_PEM_LEN;

#ifdef __cplusplus
}
#endif

#endif /* SERVER_CA_H */
