#ifndef __USTREAM_POLARSSL_H
#define __USTREAM_POLARSSL_H
-#include <mbedtls/net.h>
+#include <mbedtls/net_sockets.h>
#include <mbedtls/ssl.h>
-#include <mbedtls/certs.h>
#include <mbedtls/x509.h>
#include <mbedtls/rsa.h>
#include <mbedtls/error.h>
#include <mbedtls/version.h>
#include <mbedtls/entropy.h>
+#if defined(MBEDTLS_SSL_CACHE_C)
+#include <mbedtls/ssl_cache.h>
+#endif
+
struct ustream_ssl_ctx {
mbedtls_ssl_config conf;
mbedtls_pk_context key;
mbedtls_x509_crt ca_cert;
mbedtls_x509_crt cert;
+#if defined(MBEDTLS_SSL_CACHE_C)
+ mbedtls_ssl_cache_context cache;
+#endif
+ ustream_ssl_debug_cb debug_cb;
+ void *debug_cb_priv;
bool server;
+ int *ciphersuites;
+
+ void *session_data;
+ size_t session_data_len;
};
static inline char *__ustream_ssl_strerror(int error, char *buffer, int len)
mbedtls_ssl_set_hostname(us->ssl, us->peer_cn);
}
-void __ustream_ssl_session_free(void *ssl);
void *__ustream_ssl_session_new(struct ustream_ssl_ctx *ctx);
#endif