MINOR: SSL: Store the ASN1 representation of client sessions.
Instead of storing the SSL_SESSION pointer directly in the struct server,
store the ASN1 representation, otherwise, session resumption is broken with
TLS 1.3, when multiple outgoing connections want to use the same session.
diff --git a/include/types/server.h b/include/types/server.h
index adedca4..d22f05a 100644
--- a/include/types/server.h
+++ b/include/types/server.h
@@ -274,7 +274,11 @@
char *sni_expr; /* Temporary variable to store a sample expression for SNI */
struct {
SSL_CTX *ctx;
- SSL_SESSION **reused_sess;
+ struct {
+ unsigned char *ptr;
+ int size;
+ int allocated_size;
+ } * reused_sess;
char *ciphers; /* cipher suite to use if non-null */
int options; /* ssl options */
struct tls_version_filter methods; /* ssl methods */