Ignore the status_request extension in a resumption handshake
authorMatt Caswell <matt@openssl.org>
Fri, 6 Apr 2018 13:53:05 +0000 (14:53 +0100)
committerMatt Caswell <matt@openssl.org>
Tue, 17 Apr 2018 15:41:01 +0000 (16:41 +0100)
We cannot provide a certificate status on a resumption so we should
ignore this extension in that case.

Fixes #1662

Reviewed-by: Rich Salz <rsalz@openssl.org>
Reviewed-by: Ben Kaduk <kaduk@mit.edu>
(Merged from https://github.com/openssl/openssl/pull/5896)

ssl/statem/extensions_srvr.c

index 90142eb5051977cbc328b36f2d10b31d658551d6..adf63d80bf66c41c7e7b4f895e7c6b24c9b6ca06 100644 (file)
@@ -324,6 +324,10 @@ int tls_parse_ctos_status_request(SSL *s, PACKET *pkt, unsigned int context,
 {
     PACKET responder_id_list, exts;
 
+    /* We ignore this in a resumption handshake */
+    if (s->hit)
+        return 1;
+
     /* Not defined if we get one of these in a client Certificate */
     if (x != NULL)
         return 1;