Fix compilation with no-ec
authorMatt Caswell <matt@openssl.org>
Wed, 28 Dec 2016 15:32:39 +0000 (15:32 +0000)
committerMatt Caswell <matt@openssl.org>
Thu, 29 Dec 2016 13:32:54 +0000 (13:32 +0000)
Reviewed-by: Richard Levitte <levitte@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/2153)

Configure
ssl/statem/extensions_clnt.c
ssl/statem/extensions_srvr.c

index 896d4d4..b2e2e47 100755 (executable)
--- a/Configure
+++ b/Configure
@@ -507,7 +507,8 @@ my @disable_cascades = (
 
     "stdio"             => [ "apps", "capieng" ],
     "apps"              => [ "tests" ],
-    "comp"             => [ "zlib" ],
+    "comp"              => [ "zlib" ],
+    "ec"                => [ "tls1_3" ],
     sub { !$disabled{"unit-test"} } => [ "heartbeats" ],
 
     sub { !$disabled{"msan"} } => [ "asm" ],
index 6d2ed23..f291e5f 100644 (file)
@@ -480,6 +480,7 @@ int tls_construct_ctos_supported_versions(SSL *s, WPACKET *pkt, int *al)
 
 int tls_construct_ctos_key_share(SSL *s, WPACKET *pkt, int *al)
 {
+#ifndef OPENSSL_NO_TLS1_3
     size_t i, sharessent = 0, num_curves = 0;
     const unsigned char *pcurves = NULL;
 
@@ -559,6 +560,7 @@ int tls_construct_ctos_key_share(SSL *s, WPACKET *pkt, int *al)
         SSLerr(SSL_F_TLS_CONSTRUCT_CTOS_KEY_SHARE, ERR_R_INTERNAL_ERROR);
         return 0;
     }
+#endif
 
     return 1;
 }
@@ -983,6 +985,7 @@ int tls_parse_stoc_ems(SSL *s, PACKET *pkt, int *al)
 
 int tls_parse_stoc_key_share(SSL *s, PACKET *pkt, int *al)
 {
+#ifndef OPENSSL_NO_TLS1_3
     unsigned int group_id;
     PACKET encoded_pt;
     EVP_PKEY *ckey = s->s3->tmp.pkey, *skey = NULL;
@@ -1038,6 +1041,7 @@ int tls_parse_stoc_key_share(SSL *s, PACKET *pkt, int *al)
         return 0;
     }
     EVP_PKEY_free(skey);
+#endif
 
     return 1;
 }
index 9876212..74db91d 100644 (file)
@@ -457,6 +457,7 @@ int tls_parse_ctos_etm(SSL *s, PACKET *pkt, int *al)
  * used. Returns 1 if the group is in the list (and allowed if |checkallow| is
  * 1) or 0 otherwise.
  */
+#ifndef OPENSSL_NO_TLS1_3
 static int check_in_list(SSL *s, unsigned int group_id,
                          const unsigned char *groups, size_t num_groups,
                          int checkallow)
@@ -479,6 +480,7 @@ static int check_in_list(SSL *s, unsigned int group_id,
     /* If i == num_groups then not in the list */
     return i < num_groups;
 }
+#endif
 
 /*
  * Process a key_share extension received in the ClientHello. |pkt| contains
@@ -487,6 +489,7 @@ static int check_in_list(SSL *s, unsigned int group_id,
  */
 int tls_parse_ctos_key_share(SSL *s, PACKET *pkt, int *al)
 {
+#ifndef OPENSSL_NO_TLS1_3
     unsigned int group_id;
     PACKET key_share_list, encoded_pt;
     const unsigned char *clntcurves, *srvrcurves;
@@ -607,6 +610,7 @@ int tls_parse_ctos_key_share(SSL *s, PACKET *pkt, int *al)
 
         found = 1;
     }
+#endif
 
     return 1;
 }
@@ -857,6 +861,7 @@ int tls_construct_stoc_ems(SSL *s, WPACKET *pkt, int *al)
 
 int tls_construct_stoc_key_share(SSL *s, WPACKET *pkt, int *al)
 {
+#ifndef OPENSSL_NO_TLS1_3
     unsigned char *encodedPoint;
     size_t encoded_pt_len = 0;
     EVP_PKEY *ckey = s->s3->peer_tmp, *skey = NULL;
@@ -905,6 +910,7 @@ int tls_construct_stoc_key_share(SSL *s, WPACKET *pkt, int *al)
         SSLerr(SSL_F_TLS_CONSTRUCT_STOC_KEY_SHARE, ERR_R_INTERNAL_ERROR);
         return 0;
     }
+#endif
 
     return 1;
 }