hssl.c 487 B

123456789101112131415161718192021222324
  1. #include "hssl.h"
  2. hssl_ctx_t g_ssl_ctx = NULL;
  3. hssl_ctx_t hssl_ctx_init(hssl_ctx_init_param_t* param) {
  4. if (g_ssl_ctx == NULL) {
  5. hssl_ctx_t ssl_ctx = hssl_ctx_new(param);
  6. }
  7. return g_ssl_ctx;
  8. }
  9. void hssl_ctx_cleanup(hssl_ctx_t ssl_ctx) {
  10. hssl_ctx_free(ssl_ctx);
  11. if (g_ssl_ctx == ssl_ctx) {
  12. g_ssl_ctx = NULL;
  13. }
  14. }
  15. hssl_ctx_t hssl_ctx_instance() {
  16. if (g_ssl_ctx == NULL) {
  17. g_ssl_ctx = hssl_ctx_new(NULL);
  18. }
  19. return g_ssl_ctx;
  20. }