|  | @@ -1785,17 +1785,20 @@ typedef struct x509 X509;
 | 
	
		
			
				|  |  |  #define SSL_VERIFY_PEER (1)
 | 
	
		
			
				|  |  |  #define SSL_VERIFY_FAIL_IF_NO_PEER_CERT (2)
 | 
	
		
			
				|  |  |  #define SSL_VERIFY_CLIENT_ONCE (4)
 | 
	
		
			
				|  |  | -#define SSL_OP_ALL ((long)(0x80000BFFUL))
 | 
	
		
			
				|  |  | -#define SSL_OP_NO_SSLv2 (0x01000000L)
 | 
	
		
			
				|  |  | -#define SSL_OP_NO_SSLv3 (0x02000000L)
 | 
	
		
			
				|  |  | -#define SSL_OP_NO_TLSv1 (0x04000000L)
 | 
	
		
			
				|  |  | -#define SSL_OP_NO_TLSv1_2 (0x08000000L)
 | 
	
		
			
				|  |  | -#define SSL_OP_NO_TLSv1_1 (0x10000000L)
 | 
	
		
			
				|  |  | -#define SSL_OP_NO_TLSv1_3 (0x20000000UL)
 | 
	
		
			
				|  |  | -#define SSL_OP_SINGLE_DH_USE (0x00100000L)
 | 
	
		
			
				|  |  | -#define SSL_OP_CIPHER_SERVER_PREFERENCE (0x00400000L)
 | 
	
		
			
				|  |  | -#define SSL_OP_NO_SESSION_RESUMPTION_ON_RENEGOTIATION (0x00010000L)
 | 
	
		
			
				|  |  | -#define SSL_OP_NO_COMPRESSION (0x00020000L)
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +#define SSL_OP_ALL (0x80000BFFul)
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +#define SSL_OP_NO_SSLv2 (0x01000000ul)
 | 
	
		
			
				|  |  | +#define SSL_OP_NO_SSLv3 (0x02000000ul)
 | 
	
		
			
				|  |  | +#define SSL_OP_NO_TLSv1 (0x04000000ul)
 | 
	
		
			
				|  |  | +#define SSL_OP_NO_TLSv1_2 (0x08000000ul)
 | 
	
		
			
				|  |  | +#define SSL_OP_NO_TLSv1_1 (0x10000000ul)
 | 
	
		
			
				|  |  | +#define SSL_OP_NO_TLSv1_3 (0x20000000ul)
 | 
	
		
			
				|  |  | +#define SSL_OP_SINGLE_DH_USE (0x00100000ul)
 | 
	
		
			
				|  |  | +#define SSL_OP_CIPHER_SERVER_PREFERENCE (0x00400000ul)
 | 
	
		
			
				|  |  | +#define SSL_OP_NO_SESSION_RESUMPTION_ON_RENEGOTIATION (0x00010000ul)
 | 
	
		
			
				|  |  | +#define SSL_OP_NO_COMPRESSION (0x00020000ul)
 | 
	
		
			
				|  |  | +#define SSL_OP_NO_RENEGOTIATION (0x40000000ul)
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |  #define SSL_CB_HANDSHAKE_START (0x10)
 | 
	
		
			
				|  |  |  #define SSL_CB_HANDSHAKE_DONE (0x20)
 | 
	
	
		
			
				|  | @@ -15680,8 +15683,10 @@ ssl_get_protocol(int version_id)
 | 
	
		
			
				|  |  |  		ret |= SSL_OP_NO_TLSv1_1;
 | 
	
		
			
				|  |  |  	if (version_id > 4)
 | 
	
		
			
				|  |  |  		ret |= SSL_OP_NO_TLSv1_2;
 | 
	
		
			
				|  |  | +#if defined(SSL_OP_NO_TLSv1_3)
 | 
	
		
			
				|  |  |  	if (version_id > 5)
 | 
	
		
			
				|  |  |  		ret |= SSL_OP_NO_TLSv1_3;
 | 
	
		
			
				|  |  | +#endif
 | 
	
		
			
				|  |  |  	return ret;
 | 
	
		
			
				|  |  |  }
 | 
	
		
			
				|  |  |  #else
 | 
	
	
		
			
				|  | @@ -15697,6 +15702,12 @@ ssl_get_protocol(int version_id)
 | 
	
		
			
				|  |  |  		ret |= SSL_OP_NO_TLSv1;
 | 
	
		
			
				|  |  |  	if (version_id > 3)
 | 
	
		
			
				|  |  |  		ret |= SSL_OP_NO_TLSv1_1;
 | 
	
		
			
				|  |  | +	if (version_id > 4)
 | 
	
		
			
				|  |  | +		ret |= SSL_OP_NO_TLSv1_2;
 | 
	
		
			
				|  |  | +#if defined(SSL_OP_NO_TLSv1_3)
 | 
	
		
			
				|  |  | +	if (version_id > 5)
 | 
	
		
			
				|  |  | +		ret |= SSL_OP_NO_TLSv1_3;
 | 
	
		
			
				|  |  | +#endif
 | 
	
		
			
				|  |  |  	return ret;
 | 
	
		
			
				|  |  |  }
 | 
	
		
			
				|  |  |  #endif /* OPENSSL_API_1_1 */
 | 
	
	
		
			
				|  | @@ -15838,6 +15849,11 @@ init_ssl_ctx_impl(struct mg_context *phys_ctx,
 | 
	
		
			
				|  |  |  	SSL_CTX_set_options(dom_ctx->ssl_ctx,
 | 
	
		
			
				|  |  |  	                    SSL_OP_NO_SESSION_RESUMPTION_ON_RENEGOTIATION);
 | 
	
		
			
				|  |  |  	SSL_CTX_set_options(dom_ctx->ssl_ctx, SSL_OP_NO_COMPRESSION);
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +#if defined(SSL_OP_NO_RENEGOTIATION)
 | 
	
		
			
				|  |  | +	SSL_CTX_set_options(dom_ctx->ssl_ctx, SSL_OP_NO_RENEGOTIATION);
 | 
	
		
			
				|  |  | +#endif
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  |  #if !defined(NO_SSL_DL)
 | 
	
		
			
				|  |  |  	SSL_CTX_set_ecdh_auto(dom_ctx->ssl_ctx, 1);
 | 
	
		
			
				|  |  |  #endif /* NO_SSL_DL */
 |