summaryrefslogtreecommitdiff
path: root/src/lib/libssl/s3_lib.c
diff options
context:
space:
mode:
authorbeck <>2017-01-26 10:40:21 +0000
committerbeck <>2017-01-26 10:40:21 +0000
commit59161dbdf4da5b82b27402f93d7007a11b2d1cc1 (patch)
treee105a2b33d3aefb54727a955e9c746cc8edb0e50 /src/lib/libssl/s3_lib.c
parenta2e1efdba084d65702b419bc510c30a144eb5d7f (diff)
downloadopenbsd-59161dbdf4da5b82b27402f93d7007a11b2d1cc1.tar.gz
openbsd-59161dbdf4da5b82b27402f93d7007a11b2d1cc1.tar.bz2
openbsd-59161dbdf4da5b82b27402f93d7007a11b2d1cc1.zip
Send the error function codes to rot in the depths of hell where they belong
We leave a single funciton code (0xFFF) to say "SSL_internal" so the public API will not break, and we replace all internal use of the two argument SSL_err() with the internal only SSL_error() that only takes a reason code. ok jsing@
Diffstat (limited to 'src/lib/libssl/s3_lib.c')
-rw-r--r--src/lib/libssl/s3_lib.c48
1 files changed, 24 insertions, 24 deletions
diff --git a/src/lib/libssl/s3_lib.c b/src/lib/libssl/s3_lib.c
index 977c170403..6287f6cbc6 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.131 2017/01/24 14:57:31 jsing Exp $ */ 1/* $OpenBSD: s3_lib.c,v 1.132 2017/01/26 10:40:21 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 SSLerr(SSL_F_SSL3_CTRL, 1983 SSLerror(
1984 ERR_R_MALLOC_FAILURE); 1984 ERR_R_MALLOC_FAILURE);
1985 return (0); 1985 return (0);
1986 } 1986 }
@@ -2010,18 +2010,18 @@ ssl3_ctrl(SSL *s, int cmd, long larg, void *parg)
2010 break; 2010 break;
2011 case SSL_CTRL_SET_TMP_RSA: 2011 case SSL_CTRL_SET_TMP_RSA:
2012 case SSL_CTRL_SET_TMP_RSA_CB: 2012 case SSL_CTRL_SET_TMP_RSA_CB:
2013 SSLerr(SSL_F_SSL3_CTRL, ERR_R_SHOULD_NOT_HAVE_BEEN_CALLED); 2013 SSLerror(ERR_R_SHOULD_NOT_HAVE_BEEN_CALLED);
2014 break; 2014 break;
2015 case SSL_CTRL_SET_TMP_DH: 2015 case SSL_CTRL_SET_TMP_DH:
2016 { 2016 {
2017 DH *dh = (DH *)parg; 2017 DH *dh = (DH *)parg;
2018 if (dh == NULL) { 2018 if (dh == NULL) {
2019 SSLerr(SSL_F_SSL3_CTRL, 2019 SSLerror(
2020 ERR_R_PASSED_NULL_PARAMETER); 2020 ERR_R_PASSED_NULL_PARAMETER);
2021 return (ret); 2021 return (ret);
2022 } 2022 }
2023 if ((dh = DHparams_dup(dh)) == NULL) { 2023 if ((dh = DHparams_dup(dh)) == NULL) {
2024 SSLerr(SSL_F_SSL3_CTRL, 2024 SSLerror(
2025 ERR_R_DH_LIB); 2025 ERR_R_DH_LIB);
2026 return (ret); 2026 return (ret);
2027 } 2027 }
@@ -2032,7 +2032,7 @@ ssl3_ctrl(SSL *s, int cmd, long larg, void *parg)
2032 break; 2032 break;
2033 2033
2034 case SSL_CTRL_SET_TMP_DH_CB: 2034 case SSL_CTRL_SET_TMP_DH_CB:
2035 SSLerr(SSL_F_SSL3_CTRL, ERR_R_SHOULD_NOT_HAVE_BEEN_CALLED); 2035 SSLerror(ERR_R_SHOULD_NOT_HAVE_BEEN_CALLED);
2036 return (ret); 2036 return (ret);
2037 2037
2038 case SSL_CTRL_SET_DH_AUTO: 2038 case SSL_CTRL_SET_DH_AUTO:
@@ -2044,12 +2044,12 @@ ssl3_ctrl(SSL *s, int cmd, long larg, void *parg)
2044 EC_KEY *ecdh = NULL; 2044 EC_KEY *ecdh = NULL;
2045 2045
2046 if (parg == NULL) { 2046 if (parg == NULL) {
2047 SSLerr(SSL_F_SSL3_CTRL, 2047 SSLerror(
2048 ERR_R_PASSED_NULL_PARAMETER); 2048 ERR_R_PASSED_NULL_PARAMETER);
2049 return (ret); 2049 return (ret);
2050 } 2050 }
2051 if (!EC_KEY_up_ref((EC_KEY *)parg)) { 2051 if (!EC_KEY_up_ref((EC_KEY *)parg)) {
2052 SSLerr(SSL_F_SSL3_CTRL, 2052 SSLerror(
2053 ERR_R_ECDH_LIB); 2053 ERR_R_ECDH_LIB);
2054 return (ret); 2054 return (ret);
2055 } 2055 }
@@ -2057,7 +2057,7 @@ ssl3_ctrl(SSL *s, int cmd, long larg, void *parg)
2057 if (!(s->internal->options & SSL_OP_SINGLE_ECDH_USE)) { 2057 if (!(s->internal->options & SSL_OP_SINGLE_ECDH_USE)) {
2058 if (!EC_KEY_generate_key(ecdh)) { 2058 if (!EC_KEY_generate_key(ecdh)) {
2059 EC_KEY_free(ecdh); 2059 EC_KEY_free(ecdh);
2060 SSLerr(SSL_F_SSL3_CTRL, 2060 SSLerror(
2061 ERR_R_ECDH_LIB); 2061 ERR_R_ECDH_LIB);
2062 return (ret); 2062 return (ret);
2063 } 2063 }
@@ -2069,7 +2069,7 @@ ssl3_ctrl(SSL *s, int cmd, long larg, void *parg)
2069 break; 2069 break;
2070 case SSL_CTRL_SET_TMP_ECDH_CB: 2070 case SSL_CTRL_SET_TMP_ECDH_CB:
2071 { 2071 {
2072 SSLerr(SSL_F_SSL3_CTRL, 2072 SSLerror(
2073 ERR_R_SHOULD_NOT_HAVE_BEEN_CALLED); 2073 ERR_R_SHOULD_NOT_HAVE_BEEN_CALLED);
2074 return (ret); 2074 return (ret);
2075 } 2075 }
@@ -2083,18 +2083,18 @@ ssl3_ctrl(SSL *s, int cmd, long larg, void *parg)
2083 if (parg == NULL) 2083 if (parg == NULL)
2084 break; 2084 break;
2085 if (strlen((char *)parg) > TLSEXT_MAXLEN_host_name) { 2085 if (strlen((char *)parg) > TLSEXT_MAXLEN_host_name) {
2086 SSLerr(SSL_F_SSL3_CTRL, 2086 SSLerror(
2087 SSL_R_SSL3_EXT_INVALID_SERVERNAME); 2087 SSL_R_SSL3_EXT_INVALID_SERVERNAME);
2088 return 0; 2088 return 0;
2089 } 2089 }
2090 if ((s->tlsext_hostname = strdup((char *)parg)) 2090 if ((s->tlsext_hostname = strdup((char *)parg))
2091 == NULL) { 2091 == NULL) {
2092 SSLerr(SSL_F_SSL3_CTRL, 2092 SSLerror(
2093 ERR_R_INTERNAL_ERROR); 2093 ERR_R_INTERNAL_ERROR);
2094 return 0; 2094 return 0;
2095 } 2095 }
2096 } else { 2096 } else {
2097 SSLerr(SSL_F_SSL3_CTRL, 2097 SSLerror(
2098 SSL_R_SSL3_EXT_INVALID_SERVERNAME_TYPE); 2098 SSL_R_SSL3_EXT_INVALID_SERVERNAME_TYPE);
2099 return 0; 2099 return 0;
2100 } 2100 }
@@ -2177,7 +2177,7 @@ ssl3_callback_ctrl(SSL *s, int cmd, void (*fp)(void))
2177 2177
2178 if (cmd == SSL_CTRL_SET_TMP_DH_CB) { 2178 if (cmd == SSL_CTRL_SET_TMP_DH_CB) {
2179 if (!ssl_cert_inst(&s->cert)) { 2179 if (!ssl_cert_inst(&s->cert)) {
2180 SSLerr(SSL_F_SSL3_CALLBACK_CTRL, 2180 SSLerror(
2181 ERR_R_MALLOC_FAILURE); 2181 ERR_R_MALLOC_FAILURE);
2182 return (0); 2182 return (0);
2183 } 2183 }
@@ -2185,7 +2185,7 @@ ssl3_callback_ctrl(SSL *s, int cmd, void (*fp)(void))
2185 2185
2186 switch (cmd) { 2186 switch (cmd) {
2187 case SSL_CTRL_SET_TMP_RSA_CB: 2187 case SSL_CTRL_SET_TMP_RSA_CB:
2188 SSLerr(SSL_F_SSL3_CTRL, ERR_R_SHOULD_NOT_HAVE_BEEN_CALLED); 2188 SSLerror(ERR_R_SHOULD_NOT_HAVE_BEEN_CALLED);
2189 break; 2189 break;
2190 case SSL_CTRL_SET_TMP_DH_CB: 2190 case SSL_CTRL_SET_TMP_DH_CB:
2191 s->cert->dh_tmp_cb = (DH *(*)(SSL *, int, int))fp; 2191 s->cert->dh_tmp_cb = (DH *(*)(SSL *, int, int))fp;
@@ -2215,7 +2215,7 @@ ssl3_ctx_ctrl(SSL_CTX *ctx, int cmd, long larg, void *parg)
2215 return (0); 2215 return (0);
2216 case SSL_CTRL_SET_TMP_RSA: 2216 case SSL_CTRL_SET_TMP_RSA:
2217 case SSL_CTRL_SET_TMP_RSA_CB: 2217 case SSL_CTRL_SET_TMP_RSA_CB:
2218 SSLerr(SSL_F_SSL3_CTX_CTRL, ERR_R_SHOULD_NOT_HAVE_BEEN_CALLED); 2218 SSLerror(ERR_R_SHOULD_NOT_HAVE_BEEN_CALLED);
2219 return (0); 2219 return (0);
2220 case SSL_CTRL_SET_TMP_DH: 2220 case SSL_CTRL_SET_TMP_DH:
2221 { 2221 {
@@ -2223,7 +2223,7 @@ ssl3_ctx_ctrl(SSL_CTX *ctx, int cmd, long larg, void *parg)
2223 2223
2224 dh = (DH *)parg; 2224 dh = (DH *)parg;
2225 if ((new = DHparams_dup(dh)) == NULL) { 2225 if ((new = DHparams_dup(dh)) == NULL) {
2226 SSLerr(SSL_F_SSL3_CTX_CTRL, 2226 SSLerror(
2227 ERR_R_DH_LIB); 2227 ERR_R_DH_LIB);
2228 return 0; 2228 return 0;
2229 } 2229 }
@@ -2234,7 +2234,7 @@ ssl3_ctx_ctrl(SSL_CTX *ctx, int cmd, long larg, void *parg)
2234 /*break; */ 2234 /*break; */
2235 2235
2236 case SSL_CTRL_SET_TMP_DH_CB: 2236 case SSL_CTRL_SET_TMP_DH_CB:
2237 SSLerr(SSL_F_SSL3_CTX_CTRL, ERR_R_SHOULD_NOT_HAVE_BEEN_CALLED); 2237 SSLerror(ERR_R_SHOULD_NOT_HAVE_BEEN_CALLED);
2238 return (0); 2238 return (0);
2239 2239
2240 case SSL_CTRL_SET_DH_AUTO: 2240 case SSL_CTRL_SET_DH_AUTO:
@@ -2246,20 +2246,20 @@ ssl3_ctx_ctrl(SSL_CTX *ctx, int cmd, long larg, void *parg)
2246 EC_KEY *ecdh = NULL; 2246 EC_KEY *ecdh = NULL;
2247 2247
2248 if (parg == NULL) { 2248 if (parg == NULL) {
2249 SSLerr(SSL_F_SSL3_CTX_CTRL, 2249 SSLerror(
2250 ERR_R_ECDH_LIB); 2250 ERR_R_ECDH_LIB);
2251 return 0; 2251 return 0;
2252 } 2252 }
2253 ecdh = EC_KEY_dup((EC_KEY *)parg); 2253 ecdh = EC_KEY_dup((EC_KEY *)parg);
2254 if (ecdh == NULL) { 2254 if (ecdh == NULL) {
2255 SSLerr(SSL_F_SSL3_CTX_CTRL, 2255 SSLerror(
2256 ERR_R_EC_LIB); 2256 ERR_R_EC_LIB);
2257 return 0; 2257 return 0;
2258 } 2258 }
2259 if (!(ctx->internal->options & SSL_OP_SINGLE_ECDH_USE)) { 2259 if (!(ctx->internal->options & SSL_OP_SINGLE_ECDH_USE)) {
2260 if (!EC_KEY_generate_key(ecdh)) { 2260 if (!EC_KEY_generate_key(ecdh)) {
2261 EC_KEY_free(ecdh); 2261 EC_KEY_free(ecdh);
2262 SSLerr(SSL_F_SSL3_CTX_CTRL, 2262 SSLerror(
2263 ERR_R_ECDH_LIB); 2263 ERR_R_ECDH_LIB);
2264 return 0; 2264 return 0;
2265 } 2265 }
@@ -2272,7 +2272,7 @@ ssl3_ctx_ctrl(SSL_CTX *ctx, int cmd, long larg, void *parg)
2272 /* break; */ 2272 /* break; */
2273 case SSL_CTRL_SET_TMP_ECDH_CB: 2273 case SSL_CTRL_SET_TMP_ECDH_CB:
2274 { 2274 {
2275 SSLerr(SSL_F_SSL3_CTX_CTRL, 2275 SSLerror(
2276 ERR_R_SHOULD_NOT_HAVE_BEEN_CALLED); 2276 ERR_R_SHOULD_NOT_HAVE_BEEN_CALLED);
2277 return (0); 2277 return (0);
2278 } 2278 }
@@ -2287,7 +2287,7 @@ ssl3_ctx_ctrl(SSL_CTX *ctx, int cmd, long larg, void *parg)
2287 if (!keys) 2287 if (!keys)
2288 return 48; 2288 return 48;
2289 if (larg != 48) { 2289 if (larg != 48) {
2290 SSLerr(SSL_F_SSL3_CTX_CTRL, 2290 SSLerror(
2291 SSL_R_INVALID_TICKET_KEYS_LENGTH); 2291 SSL_R_INVALID_TICKET_KEYS_LENGTH);
2292 return 0; 2292 return 0;
2293 } 2293 }
@@ -2361,7 +2361,7 @@ ssl3_ctx_callback_ctrl(SSL_CTX *ctx, int cmd, void (*fp)(void))
2361 2361
2362 switch (cmd) { 2362 switch (cmd) {
2363 case SSL_CTRL_SET_TMP_RSA_CB: 2363 case SSL_CTRL_SET_TMP_RSA_CB:
2364 SSLerr(SSL_F_SSL3_CTX_CTRL, ERR_R_SHOULD_NOT_HAVE_BEEN_CALLED); 2364 SSLerror(ERR_R_SHOULD_NOT_HAVE_BEEN_CALLED);
2365 return (0); 2365 return (0);
2366 case SSL_CTRL_SET_TMP_DH_CB: 2366 case SSL_CTRL_SET_TMP_DH_CB:
2367 cert->dh_tmp_cb = (DH *(*)(SSL *, int, int))fp; 2367 cert->dh_tmp_cb = (DH *(*)(SSL *, int, int))fp;