diff options
Diffstat (limited to 'src/lib/libssl/ssl_lib.c')
-rw-r--r-- | src/lib/libssl/ssl_lib.c | 26 |
1 files changed, 17 insertions, 9 deletions
diff --git a/src/lib/libssl/ssl_lib.c b/src/lib/libssl/ssl_lib.c index f802875274..6a182f2e3b 100644 --- a/src/lib/libssl/ssl_lib.c +++ b/src/lib/libssl/ssl_lib.c | |||
@@ -1,4 +1,4 @@ | |||
1 | /* $OpenBSD: ssl_lib.c,v 1.246 2021/02/20 08:30:52 jsing Exp $ */ | 1 | /* $OpenBSD: ssl_lib.c,v 1.247 2021/02/20 09:43:29 jsing 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 | * |
@@ -256,6 +256,8 @@ SSL_new(SSL_CTX *ctx) | |||
256 | 256 | ||
257 | s->internal->min_version = ctx->internal->min_version; | 257 | s->internal->min_version = ctx->internal->min_version; |
258 | s->internal->max_version = ctx->internal->max_version; | 258 | s->internal->max_version = ctx->internal->max_version; |
259 | s->internal->min_proto_version = ctx->internal->min_proto_version; | ||
260 | s->internal->max_proto_version = ctx->internal->max_proto_version; | ||
259 | 261 | ||
260 | s->internal->options = ctx->internal->options; | 262 | s->internal->options = ctx->internal->options; |
261 | s->internal->mode = ctx->internal->mode; | 263 | s->internal->mode = ctx->internal->mode; |
@@ -1829,6 +1831,8 @@ SSL_CTX_new(const SSL_METHOD *meth) | |||
1829 | ret->method = meth; | 1831 | ret->method = meth; |
1830 | ret->internal->min_version = meth->internal->min_version; | 1832 | ret->internal->min_version = meth->internal->min_version; |
1831 | ret->internal->max_version = meth->internal->max_version; | 1833 | ret->internal->max_version = meth->internal->max_version; |
1834 | ret->internal->min_proto_version = 0; | ||
1835 | ret->internal->max_proto_version = 0; | ||
1832 | ret->internal->mode = SSL_MODE_AUTO_RETRY; | 1836 | ret->internal->mode = SSL_MODE_AUTO_RETRY; |
1833 | 1837 | ||
1834 | ret->cert_store = NULL; | 1838 | ret->cert_store = NULL; |
@@ -3016,52 +3020,56 @@ SSL_cache_hit(SSL *s) | |||
3016 | int | 3020 | int |
3017 | SSL_CTX_get_min_proto_version(SSL_CTX *ctx) | 3021 | SSL_CTX_get_min_proto_version(SSL_CTX *ctx) |
3018 | { | 3022 | { |
3019 | return ctx->internal->min_version; | 3023 | return ctx->internal->min_proto_version; |
3020 | } | 3024 | } |
3021 | 3025 | ||
3022 | int | 3026 | int |
3023 | SSL_CTX_set_min_proto_version(SSL_CTX *ctx, uint16_t version) | 3027 | SSL_CTX_set_min_proto_version(SSL_CTX *ctx, uint16_t version) |
3024 | { | 3028 | { |
3025 | return ssl_version_set_min(ctx->method, version, | 3029 | return ssl_version_set_min(ctx->method, version, |
3026 | ctx->internal->max_version, &ctx->internal->min_version); | 3030 | ctx->internal->max_version, &ctx->internal->min_version, |
3031 | &ctx->internal->min_proto_version); | ||
3027 | } | 3032 | } |
3028 | 3033 | ||
3029 | int | 3034 | int |
3030 | SSL_CTX_get_max_proto_version(SSL_CTX *ctx) | 3035 | SSL_CTX_get_max_proto_version(SSL_CTX *ctx) |
3031 | { | 3036 | { |
3032 | return ctx->internal->max_version; | 3037 | return ctx->internal->max_proto_version; |
3033 | } | 3038 | } |
3034 | 3039 | ||
3035 | int | 3040 | int |
3036 | SSL_CTX_set_max_proto_version(SSL_CTX *ctx, uint16_t version) | 3041 | SSL_CTX_set_max_proto_version(SSL_CTX *ctx, uint16_t version) |
3037 | { | 3042 | { |
3038 | return ssl_version_set_max(ctx->method, version, | 3043 | return ssl_version_set_max(ctx->method, version, |
3039 | ctx->internal->min_version, &ctx->internal->max_version); | 3044 | ctx->internal->min_version, &ctx->internal->max_version, |
3045 | &ctx->internal->max_proto_version); | ||
3040 | } | 3046 | } |
3041 | 3047 | ||
3042 | int | 3048 | int |
3043 | SSL_get_min_proto_version(SSL *ssl) | 3049 | SSL_get_min_proto_version(SSL *ssl) |
3044 | { | 3050 | { |
3045 | return ssl->internal->min_version; | 3051 | return ssl->internal->min_proto_version; |
3046 | } | 3052 | } |
3047 | 3053 | ||
3048 | int | 3054 | int |
3049 | SSL_set_min_proto_version(SSL *ssl, uint16_t version) | 3055 | SSL_set_min_proto_version(SSL *ssl, uint16_t version) |
3050 | { | 3056 | { |
3051 | return ssl_version_set_min(ssl->method, version, | 3057 | return ssl_version_set_min(ssl->method, version, |
3052 | ssl->internal->max_version, &ssl->internal->min_version); | 3058 | ssl->internal->max_version, &ssl->internal->min_version, |
3059 | &ssl->internal->min_proto_version); | ||
3053 | } | 3060 | } |
3054 | int | 3061 | int |
3055 | SSL_get_max_proto_version(SSL *ssl) | 3062 | SSL_get_max_proto_version(SSL *ssl) |
3056 | { | 3063 | { |
3057 | return ssl->internal->max_version; | 3064 | return ssl->internal->max_proto_version; |
3058 | } | 3065 | } |
3059 | 3066 | ||
3060 | int | 3067 | int |
3061 | SSL_set_max_proto_version(SSL *ssl, uint16_t version) | 3068 | SSL_set_max_proto_version(SSL *ssl, uint16_t version) |
3062 | { | 3069 | { |
3063 | return ssl_version_set_max(ssl->method, version, | 3070 | return ssl_version_set_max(ssl->method, version, |
3064 | ssl->internal->min_version, &ssl->internal->max_version); | 3071 | ssl->internal->min_version, &ssl->internal->max_version, |
3072 | &ssl->internal->max_proto_version); | ||
3065 | } | 3073 | } |
3066 | 3074 | ||
3067 | static int | 3075 | static int |