Always ensure that session->cipher is set
[openssl.git] / ssl / ssl_locl.h
index 7e5246c9f3e6873cb7e8711b9a661d7cb6a565d0..a59683bdff9272ca267b7624f9b9a1e7e9874f99 100644 (file)
@@ -574,6 +574,7 @@ struct ssl_session_st {
         size_t ticklen;      /* Session ticket length */
         /* Session lifetime hint in seconds */
         unsigned long tick_lifetime_hint;
+        uint32_t tick_age_add;
         int tick_identity;
     } ext;
 # ifndef OPENSSL_NO_SRP
@@ -1113,7 +1114,7 @@ struct ssl_st {
         unsigned char *npn;
         size_t npn_len;
 
-        /* The selected PSK key exchange mode */
+        /* The available PSK key exchange modes */
         int psk_kex_mode;
     } ext;
 
@@ -2192,6 +2193,17 @@ void ssl_set_default_md(SSL *s);
 __owur int tls1_set_server_sigalgs(SSL *s);
 __owur int tls_get_ticket_from_client(SSL *s, CLIENTHELLO_MSG *hello,
                                       SSL_SESSION **ret);
+
+/* Return codes for tls_decrypt_ticket */
+#define TICKET_FATAL_ERR_MALLOC     -2
+#define TICKET_FATAL_ERR_OTHER      -1
+#define TICKET_NO_DECRYPT            2
+#define TICKET_SUCCESS               3
+#define TICKET_SUCCESS_RENEW         4
+__owur int tls_decrypt_ticket(SSL *s, const unsigned char *etick,
+                              size_t eticklen, const unsigned char *sess_id,
+                              size_t sesslen, SSL_SESSION **psess);
+
 __owur int tls_use_ticket(SSL *s);
 
 __owur int tls12_get_sigandhash(SSL *s, WPACKET *pkt, const EVP_PKEY *pk,