diff options
Diffstat (limited to 'src/lib/libssl/s3_lib.c')
-rw-r--r-- | src/lib/libssl/s3_lib.c | 48 |
1 files changed, 24 insertions, 24 deletions
diff --git a/src/lib/libssl/s3_lib.c b/src/lib/libssl/s3_lib.c index fbc2d511d3..d18a2388c3 100644 --- a/src/lib/libssl/s3_lib.c +++ b/src/lib/libssl/s3_lib.c | |||
@@ -1,4 +1,4 @@ | |||
1 | /* $OpenBSD: s3_lib.c,v 1.134 2017/02/05 15:06:05 jsing Exp $ */ | 1 | /* $OpenBSD: s3_lib.c,v 1.135 2017/02/07 02:08:38 beck Exp $ */ |
2 | /* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com) | 2 | /* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com) |
3 | * All rights reserved. | 3 | * All rights reserved. |
4 | * | 4 | * |
@@ -1980,7 +1980,7 @@ ssl3_ctrl(SSL *s, int cmd, long larg, void *parg) | |||
1980 | 1980 | ||
1981 | if (cmd == SSL_CTRL_SET_TMP_DH || cmd == SSL_CTRL_SET_TMP_DH_CB) { | 1981 | if (cmd == SSL_CTRL_SET_TMP_DH || cmd == SSL_CTRL_SET_TMP_DH_CB) { |
1982 | if (!ssl_cert_inst(&s->cert)) { | 1982 | if (!ssl_cert_inst(&s->cert)) { |
1983 | SSLerror(ERR_R_MALLOC_FAILURE); | 1983 | SSLerror(s, ERR_R_MALLOC_FAILURE); |
1984 | return (0); | 1984 | return (0); |
1985 | } | 1985 | } |
1986 | } | 1986 | } |
@@ -2009,17 +2009,17 @@ ssl3_ctrl(SSL *s, int cmd, long larg, void *parg) | |||
2009 | break; | 2009 | break; |
2010 | case SSL_CTRL_SET_TMP_RSA: | 2010 | case SSL_CTRL_SET_TMP_RSA: |
2011 | case SSL_CTRL_SET_TMP_RSA_CB: | 2011 | case SSL_CTRL_SET_TMP_RSA_CB: |
2012 | SSLerror(ERR_R_SHOULD_NOT_HAVE_BEEN_CALLED); | 2012 | SSLerror(s, ERR_R_SHOULD_NOT_HAVE_BEEN_CALLED); |
2013 | break; | 2013 | break; |
2014 | case SSL_CTRL_SET_TMP_DH: | 2014 | case SSL_CTRL_SET_TMP_DH: |
2015 | { | 2015 | { |
2016 | DH *dh = (DH *)parg; | 2016 | DH *dh = (DH *)parg; |
2017 | if (dh == NULL) { | 2017 | if (dh == NULL) { |
2018 | SSLerror(ERR_R_PASSED_NULL_PARAMETER); | 2018 | SSLerror(s, ERR_R_PASSED_NULL_PARAMETER); |
2019 | return (ret); | 2019 | return (ret); |
2020 | } | 2020 | } |
2021 | if ((dh = DHparams_dup(dh)) == NULL) { | 2021 | if ((dh = DHparams_dup(dh)) == NULL) { |
2022 | SSLerror(ERR_R_DH_LIB); | 2022 | SSLerror(s, ERR_R_DH_LIB); |
2023 | return (ret); | 2023 | return (ret); |
2024 | } | 2024 | } |
2025 | DH_free(s->cert->dh_tmp); | 2025 | DH_free(s->cert->dh_tmp); |
@@ -2029,7 +2029,7 @@ ssl3_ctrl(SSL *s, int cmd, long larg, void *parg) | |||
2029 | break; | 2029 | break; |
2030 | 2030 | ||
2031 | case SSL_CTRL_SET_TMP_DH_CB: | 2031 | case SSL_CTRL_SET_TMP_DH_CB: |
2032 | SSLerror(ERR_R_SHOULD_NOT_HAVE_BEEN_CALLED); | 2032 | SSLerror(s, ERR_R_SHOULD_NOT_HAVE_BEEN_CALLED); |
2033 | return (ret); | 2033 | return (ret); |
2034 | 2034 | ||
2035 | case SSL_CTRL_SET_DH_AUTO: | 2035 | case SSL_CTRL_SET_DH_AUTO: |
@@ -2041,18 +2041,18 @@ ssl3_ctrl(SSL *s, int cmd, long larg, void *parg) | |||
2041 | EC_KEY *ecdh = NULL; | 2041 | EC_KEY *ecdh = NULL; |
2042 | 2042 | ||
2043 | if (parg == NULL) { | 2043 | if (parg == NULL) { |
2044 | SSLerror(ERR_R_PASSED_NULL_PARAMETER); | 2044 | SSLerror(s, ERR_R_PASSED_NULL_PARAMETER); |
2045 | return (ret); | 2045 | return (ret); |
2046 | } | 2046 | } |
2047 | if (!EC_KEY_up_ref((EC_KEY *)parg)) { | 2047 | if (!EC_KEY_up_ref((EC_KEY *)parg)) { |
2048 | SSLerror(ERR_R_ECDH_LIB); | 2048 | SSLerror(s, ERR_R_ECDH_LIB); |
2049 | return (ret); | 2049 | return (ret); |
2050 | } | 2050 | } |
2051 | ecdh = (EC_KEY *)parg; | 2051 | ecdh = (EC_KEY *)parg; |
2052 | if (!(s->internal->options & SSL_OP_SINGLE_ECDH_USE)) { | 2052 | if (!(s->internal->options & SSL_OP_SINGLE_ECDH_USE)) { |
2053 | if (!EC_KEY_generate_key(ecdh)) { | 2053 | if (!EC_KEY_generate_key(ecdh)) { |
2054 | EC_KEY_free(ecdh); | 2054 | EC_KEY_free(ecdh); |
2055 | SSLerror(ERR_R_ECDH_LIB); | 2055 | SSLerror(s, ERR_R_ECDH_LIB); |
2056 | return (ret); | 2056 | return (ret); |
2057 | } | 2057 | } |
2058 | } | 2058 | } |
@@ -2063,7 +2063,7 @@ ssl3_ctrl(SSL *s, int cmd, long larg, void *parg) | |||
2063 | break; | 2063 | break; |
2064 | case SSL_CTRL_SET_TMP_ECDH_CB: | 2064 | case SSL_CTRL_SET_TMP_ECDH_CB: |
2065 | { | 2065 | { |
2066 | SSLerror(ERR_R_SHOULD_NOT_HAVE_BEEN_CALLED); | 2066 | SSLerror(s, ERR_R_SHOULD_NOT_HAVE_BEEN_CALLED); |
2067 | return (ret); | 2067 | return (ret); |
2068 | } | 2068 | } |
2069 | break; | 2069 | break; |
@@ -2076,16 +2076,16 @@ ssl3_ctrl(SSL *s, int cmd, long larg, void *parg) | |||
2076 | if (parg == NULL) | 2076 | if (parg == NULL) |
2077 | break; | 2077 | break; |
2078 | if (strlen((char *)parg) > TLSEXT_MAXLEN_host_name) { | 2078 | if (strlen((char *)parg) > TLSEXT_MAXLEN_host_name) { |
2079 | SSLerror(SSL_R_SSL3_EXT_INVALID_SERVERNAME); | 2079 | SSLerror(s, SSL_R_SSL3_EXT_INVALID_SERVERNAME); |
2080 | return 0; | 2080 | return 0; |
2081 | } | 2081 | } |
2082 | if ((s->tlsext_hostname = strdup((char *)parg)) | 2082 | if ((s->tlsext_hostname = strdup((char *)parg)) |
2083 | == NULL) { | 2083 | == NULL) { |
2084 | SSLerror(ERR_R_INTERNAL_ERROR); | 2084 | SSLerror(s, ERR_R_INTERNAL_ERROR); |
2085 | return 0; | 2085 | return 0; |
2086 | } | 2086 | } |
2087 | } else { | 2087 | } else { |
2088 | SSLerror(SSL_R_SSL3_EXT_INVALID_SERVERNAME_TYPE); | 2088 | SSLerror(s, SSL_R_SSL3_EXT_INVALID_SERVERNAME_TYPE); |
2089 | return 0; | 2089 | return 0; |
2090 | } | 2090 | } |
2091 | break; | 2091 | break; |
@@ -2173,14 +2173,14 @@ ssl3_callback_ctrl(SSL *s, int cmd, void (*fp)(void)) | |||
2173 | 2173 | ||
2174 | if (cmd == SSL_CTRL_SET_TMP_DH_CB) { | 2174 | if (cmd == SSL_CTRL_SET_TMP_DH_CB) { |
2175 | if (!ssl_cert_inst(&s->cert)) { | 2175 | if (!ssl_cert_inst(&s->cert)) { |
2176 | SSLerror(ERR_R_MALLOC_FAILURE); | 2176 | SSLerror(s, ERR_R_MALLOC_FAILURE); |
2177 | return (0); | 2177 | return (0); |
2178 | } | 2178 | } |
2179 | } | 2179 | } |
2180 | 2180 | ||
2181 | switch (cmd) { | 2181 | switch (cmd) { |
2182 | case SSL_CTRL_SET_TMP_RSA_CB: | 2182 | case SSL_CTRL_SET_TMP_RSA_CB: |
2183 | SSLerror(ERR_R_SHOULD_NOT_HAVE_BEEN_CALLED); | 2183 | SSLerror(s, ERR_R_SHOULD_NOT_HAVE_BEEN_CALLED); |
2184 | break; | 2184 | break; |
2185 | case SSL_CTRL_SET_TMP_DH_CB: | 2185 | case SSL_CTRL_SET_TMP_DH_CB: |
2186 | s->cert->dh_tmp_cb = (DH *(*)(SSL *, int, int))fp; | 2186 | s->cert->dh_tmp_cb = (DH *(*)(SSL *, int, int))fp; |
@@ -2210,7 +2210,7 @@ ssl3_ctx_ctrl(SSL_CTX *ctx, int cmd, long larg, void *parg) | |||
2210 | return (0); | 2210 | return (0); |
2211 | case SSL_CTRL_SET_TMP_RSA: | 2211 | case SSL_CTRL_SET_TMP_RSA: |
2212 | case SSL_CTRL_SET_TMP_RSA_CB: | 2212 | case SSL_CTRL_SET_TMP_RSA_CB: |
2213 | SSLerror(ERR_R_SHOULD_NOT_HAVE_BEEN_CALLED); | 2213 | SSLerrorx(ERR_R_SHOULD_NOT_HAVE_BEEN_CALLED); |
2214 | return (0); | 2214 | return (0); |
2215 | case SSL_CTRL_SET_TMP_DH: | 2215 | case SSL_CTRL_SET_TMP_DH: |
2216 | { | 2216 | { |
@@ -2218,7 +2218,7 @@ ssl3_ctx_ctrl(SSL_CTX *ctx, int cmd, long larg, void *parg) | |||
2218 | 2218 | ||
2219 | dh = (DH *)parg; | 2219 | dh = (DH *)parg; |
2220 | if ((new = DHparams_dup(dh)) == NULL) { | 2220 | if ((new = DHparams_dup(dh)) == NULL) { |
2221 | SSLerror(ERR_R_DH_LIB); | 2221 | SSLerrorx(ERR_R_DH_LIB); |
2222 | return 0; | 2222 | return 0; |
2223 | } | 2223 | } |
2224 | DH_free(cert->dh_tmp); | 2224 | DH_free(cert->dh_tmp); |
@@ -2228,7 +2228,7 @@ ssl3_ctx_ctrl(SSL_CTX *ctx, int cmd, long larg, void *parg) | |||
2228 | /*break; */ | 2228 | /*break; */ |
2229 | 2229 | ||
2230 | case SSL_CTRL_SET_TMP_DH_CB: | 2230 | case SSL_CTRL_SET_TMP_DH_CB: |
2231 | SSLerror(ERR_R_SHOULD_NOT_HAVE_BEEN_CALLED); | 2231 | SSLerrorx(ERR_R_SHOULD_NOT_HAVE_BEEN_CALLED); |
2232 | return (0); | 2232 | return (0); |
2233 | 2233 | ||
2234 | case SSL_CTRL_SET_DH_AUTO: | 2234 | case SSL_CTRL_SET_DH_AUTO: |
@@ -2240,18 +2240,18 @@ ssl3_ctx_ctrl(SSL_CTX *ctx, int cmd, long larg, void *parg) | |||
2240 | EC_KEY *ecdh = NULL; | 2240 | EC_KEY *ecdh = NULL; |
2241 | 2241 | ||
2242 | if (parg == NULL) { | 2242 | if (parg == NULL) { |
2243 | SSLerror(ERR_R_ECDH_LIB); | 2243 | SSLerrorx(ERR_R_ECDH_LIB); |
2244 | return 0; | 2244 | return 0; |
2245 | } | 2245 | } |
2246 | ecdh = EC_KEY_dup((EC_KEY *)parg); | 2246 | ecdh = EC_KEY_dup((EC_KEY *)parg); |
2247 | if (ecdh == NULL) { | 2247 | if (ecdh == NULL) { |
2248 | SSLerror(ERR_R_EC_LIB); | 2248 | SSLerrorx(ERR_R_EC_LIB); |
2249 | return 0; | 2249 | return 0; |
2250 | } | 2250 | } |
2251 | if (!(ctx->internal->options & SSL_OP_SINGLE_ECDH_USE)) { | 2251 | if (!(ctx->internal->options & SSL_OP_SINGLE_ECDH_USE)) { |
2252 | if (!EC_KEY_generate_key(ecdh)) { | 2252 | if (!EC_KEY_generate_key(ecdh)) { |
2253 | EC_KEY_free(ecdh); | 2253 | EC_KEY_free(ecdh); |
2254 | SSLerror(ERR_R_ECDH_LIB); | 2254 | SSLerrorx(ERR_R_ECDH_LIB); |
2255 | return 0; | 2255 | return 0; |
2256 | } | 2256 | } |
2257 | } | 2257 | } |
@@ -2263,7 +2263,7 @@ ssl3_ctx_ctrl(SSL_CTX *ctx, int cmd, long larg, void *parg) | |||
2263 | /* break; */ | 2263 | /* break; */ |
2264 | case SSL_CTRL_SET_TMP_ECDH_CB: | 2264 | case SSL_CTRL_SET_TMP_ECDH_CB: |
2265 | { | 2265 | { |
2266 | SSLerror(ERR_R_SHOULD_NOT_HAVE_BEEN_CALLED); | 2266 | SSLerrorx(ERR_R_SHOULD_NOT_HAVE_BEEN_CALLED); |
2267 | return (0); | 2267 | return (0); |
2268 | } | 2268 | } |
2269 | break; | 2269 | break; |
@@ -2277,7 +2277,7 @@ ssl3_ctx_ctrl(SSL_CTX *ctx, int cmd, long larg, void *parg) | |||
2277 | if (!keys) | 2277 | if (!keys) |
2278 | return 48; | 2278 | return 48; |
2279 | if (larg != 48) { | 2279 | if (larg != 48) { |
2280 | SSLerror(SSL_R_INVALID_TICKET_KEYS_LENGTH); | 2280 | SSLerrorx(SSL_R_INVALID_TICKET_KEYS_LENGTH); |
2281 | return 0; | 2281 | return 0; |
2282 | } | 2282 | } |
2283 | if (cmd == SSL_CTRL_SET_TLSEXT_TICKET_KEYS) { | 2283 | if (cmd == SSL_CTRL_SET_TLSEXT_TICKET_KEYS) { |
@@ -2356,7 +2356,7 @@ ssl3_ctx_callback_ctrl(SSL_CTX *ctx, int cmd, void (*fp)(void)) | |||
2356 | 2356 | ||
2357 | switch (cmd) { | 2357 | switch (cmd) { |
2358 | case SSL_CTRL_SET_TMP_RSA_CB: | 2358 | case SSL_CTRL_SET_TMP_RSA_CB: |
2359 | SSLerror(ERR_R_SHOULD_NOT_HAVE_BEEN_CALLED); | 2359 | SSLerrorx(ERR_R_SHOULD_NOT_HAVE_BEEN_CALLED); |
2360 | return (0); | 2360 | return (0); |
2361 | case SSL_CTRL_SET_TMP_DH_CB: | 2361 | case SSL_CTRL_SET_TMP_DH_CB: |
2362 | cert->dh_tmp_cb = (DH *(*)(SSL *, int, int))fp; | 2362 | cert->dh_tmp_cb = (DH *(*)(SSL *, int, int))fp; |