diff options
author | jsing <> | 2014-10-03 13:58:18 +0000 |
---|---|---|
committer | jsing <> | 2014-10-03 13:58:18 +0000 |
commit | f42035acfafef5f2efe92cd8eef619164f7144f2 (patch) | |
tree | cffe0badf760bb2604b226bec541734923e423b7 /src/lib/libssl/s3_lib.c | |
parent | 079e384e3438a23d2ddc504f4d34e5a46d9dd6e8 (diff) | |
download | openbsd-f42035acfafef5f2efe92cd8eef619164f7144f2.tar.gz openbsd-f42035acfafef5f2efe92cd8eef619164f7144f2.tar.bz2 openbsd-f42035acfafef5f2efe92cd8eef619164f7144f2.zip |
Add support for automatic ephemeral EC keys.
This allows an SSL server to enable ECDHE ciphers with a single setting,
which results in an EC key being generated using the first preference
shared curve.
Based on OpenSSL with inspiration from boringssl.
ok miod@
Diffstat (limited to 'src/lib/libssl/s3_lib.c')
-rw-r--r-- | src/lib/libssl/s3_lib.c | 10 |
1 files changed, 9 insertions, 1 deletions
diff --git a/src/lib/libssl/s3_lib.c b/src/lib/libssl/s3_lib.c index 246aa6f23d..42f8074f8c 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.81 2014/09/30 15:40:09 jsing Exp $ */ | 1 | /* $OpenBSD: s3_lib.c,v 1.82 2014/10/03 13:58:17 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 | * |
@@ -2128,6 +2128,11 @@ ssl3_ctrl(SSL *s, int cmd, long larg, void *parg) | |||
2128 | ret = 1; | 2128 | ret = 1; |
2129 | break; | 2129 | break; |
2130 | 2130 | ||
2131 | case SSL_CTRL_SET_ECDH_AUTO: | ||
2132 | s->cert->ecdh_tmp_auto = larg; | ||
2133 | ret = 1; | ||
2134 | break; | ||
2135 | |||
2131 | default: | 2136 | default: |
2132 | break; | 2137 | break; |
2133 | } | 2138 | } |
@@ -2322,6 +2327,9 @@ ssl3_ctx_ctrl(SSL_CTX *ctx, int cmd, long larg, void *parg) | |||
2322 | return 1; | 2327 | return 1; |
2323 | break; | 2328 | break; |
2324 | 2329 | ||
2330 | case SSL_CTRL_SET_ECDH_AUTO: | ||
2331 | ctx->cert->ecdh_tmp_auto = larg; | ||
2332 | return 1; | ||
2325 | 2333 | ||
2326 | /* A Thawte special :-) */ | 2334 | /* A Thawte special :-) */ |
2327 | case SSL_CTRL_EXTRA_CHAIN_CERT: | 2335 | case SSL_CTRL_EXTRA_CHAIN_CERT: |