summaryrefslogtreecommitdiffstats
path: root/ssl/ssl3.h
diff options
context:
space:
mode:
authorScott Deboy <sdeboy@secondstryke.com>2013-09-12 12:03:40 -0700
committerBen Laurie <ben@links.org>2014-02-05 18:25:46 +0000
commitac20719d994729970eb3b775c7bffa81f0e9f960 (patch)
tree968d561cc089196fff817ca36bee1bdc9cbc2f78 /ssl/ssl3.h
parenta51f767645c117667d337f77fe1dd9c0a66d8410 (diff)
Update custom TLS extension and supplemental data 'generate' callbacks to support sending an alert.
If multiple TLS extensions are expected but not received, the TLS extension and supplemental data 'generate' callbacks are the only chance for the receive-side to trigger a specific TLS alert during the handshake. Removed logic which no-op'd TLS extension generate callbacks (as the generate callbacks need to always be called in order to trigger alerts), and updated the serverinfo-specific custom TLS extension callbacks to track which custom TLS extensions were received by the client, where no-ops for 'generate' callbacks are appropriate.
Diffstat (limited to 'ssl/ssl3.h')
-rw-r--r--ssl/ssl3.h10
1 files changed, 4 insertions, 6 deletions
diff --git a/ssl/ssl3.h b/ssl/ssl3.h
index 8fe6949f6d..8bd201e08b 100644
--- a/ssl/ssl3.h
+++ b/ssl/ssl3.h
@@ -583,14 +583,12 @@ typedef struct ssl3_state_st
#endif
#ifndef OPENSSL_NO_TLSEXT
- /* tlsext_custom_types contains an array of TLS Extension types which
- * were advertised by the client in its ClientHello, which were not
- * otherwise handled by OpenSSL, and which the server has registered
- * a custom_srv_ext_record to handle.
+ /* serverinfo_client_tlsext_custom_types contains an array of TLS Extension types which
+ * were advertised by the client in its ClientHello and leveraged by ServerInfo TLS extension callbacks.
* The array does not contain any duplicates, and is in the same order
* as the types were received in the client hello. */
- unsigned short *tlsext_custom_types;
- size_t tlsext_custom_types_count; /* how many tlsext_custom_types */
+ unsigned short *serverinfo_client_tlsext_custom_types;
+ size_t serverinfo_client_tlsext_custom_types_count; /* how many serverinfo_client_tlsext_custom_types */
/* ALPN information
* (we are in the process of transitioning from NPN to ALPN.) */