reject zero length point format list or supported curves extensions
[openssl.git] / ssl / tls1.h
index dd1b4fb22d83ac43d44c5bbea77e0cec0fd7ba7c..c59a02fee39523a40f92e9202fd36ce10b8ed085 100644 (file)
@@ -267,6 +267,9 @@ extern "C" {
 #define TLSEXT_signature_dsa                           2
 #define TLSEXT_signature_ecdsa                         3
 
+/* Total number of different signature algorithms */
+#define TLSEXT_signature_num                           4
+
 #define TLSEXT_hash_none                               0
 #define TLSEXT_hash_md5                                        1
 #define TLSEXT_hash_sha1                               2
@@ -274,9 +277,19 @@ extern "C" {
 #define TLSEXT_hash_sha256                             4
 #define TLSEXT_hash_sha384                             5
 #define TLSEXT_hash_sha512                             6
+
+/* Total number of different digest algorithms */
+
+#define TLSEXT_hash_num                                        7
+
 /* Flag set for unrecognised algorithms */
 #define TLSEXT_nid_unknown                             0x1000000
 
+/* ECC curves */
+
+#define TLSEXT_curve_P_256                             23
+#define TLSEXT_curve_P_384                             24
+
 #ifndef OPENSSL_NO_TLSEXT
 
 #define TLSEXT_MAXLEN_host_name 255
@@ -306,6 +319,12 @@ int SSL_get_sigalgs(SSL *s, int idx,
                        int *psign, int *phash, int *psignandhash,
                        unsigned char *rsig, unsigned char *rhash);
 
+int SSL_get_shared_sigalgs(SSL *s, int idx,
+                       int *psign, int *phash, int *psignandhash,
+                       unsigned char *rsig, unsigned char *rhash);
+
+int SSL_check_chain(SSL *s, X509 *x, EVP_PKEY *pk, STACK_OF(X509) *chain);
+
 #define SSL_set_tlsext_host_name(s,name) \
 SSL_ctrl(s,SSL_CTRL_SET_TLSEXT_HOSTNAME,TLSEXT_NAMETYPE_host_name,(char *)name)