Skip to content

Commit

Permalink
deprecate SSL_OP_SINGLE_DH_USE
Browse files Browse the repository at this point in the history
ok jsing@
  • Loading branch information
beck committed Jan 27, 2016
1 parent 0a35a20 commit 5e12fe8
Show file tree
Hide file tree
Showing 2 changed files with 6 additions and 37 deletions.
18 changes: 1 addition & 17 deletions src/lib/libssl/src/ssl/s3_lib.c
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
/* $OpenBSD: s3_lib.c,v 1.105 2015/09/12 15:03:39 jsing Exp $ */
/* $OpenBSD: s3_lib.c,v 1.106 2015/09/12 16:10:07 doug Exp $ */
/* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com)
* All rights reserved.
*
Expand Down Expand Up @@ -2141,14 +2141,6 @@ ssl3_ctrl(SSL *s, int cmd, long larg, void *parg)
ERR_R_DH_LIB);
return (ret);
}
if (!(s->options & SSL_OP_SINGLE_DH_USE)) {
if (!DH_generate_key(dh)) {
DH_free(dh);
SSLerr(SSL_F_SSL3_CTRL,
ERR_R_DH_LIB);
return (ret);
}
}
DH_free(s->cert->dh_tmp);
s->cert->dh_tmp = dh;
ret = 1;
Expand Down Expand Up @@ -2332,14 +2324,6 @@ ssl3_ctx_ctrl(SSL_CTX *ctx, int cmd, long larg, void *parg)
ERR_R_DH_LIB);
return 0;
}
if (!(ctx->options & SSL_OP_SINGLE_DH_USE)) {
if (!DH_generate_key(new)) {
SSLerr(SSL_F_SSL3_CTX_CTRL,
ERR_R_DH_LIB);
DH_free(new);
return 0;
}
}
DH_free(cert->dh_tmp);
cert->dh_tmp = new;
return 1;
Expand Down
25 changes: 5 additions & 20 deletions src/lib/libssl/src/ssl/s3_srvr.c
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
/* $OpenBSD: s3_srvr.c,v 1.122 2015/09/13 09:20:19 jsing Exp $ */
/* $OpenBSD: s3_srvr.c,v 1.123 2015/09/13 12:39:16 jsing Exp $ */
/* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com)
* All rights reserved.
*
Expand Down Expand Up @@ -1236,25 +1236,10 @@ ssl3_send_server_key_exchange(SSL *s)
goto err;
}
s->s3->tmp.dh = dh;

if ((dhp->pub_key == NULL || dhp->priv_key == NULL ||
(s->options & SSL_OP_SINGLE_DH_USE))) {
if (!DH_generate_key(dh)) {
SSLerr(
SSL_F_SSL3_SEND_SERVER_KEY_EXCHANGE,
ERR_R_DH_LIB);
goto err;
}
} else {
dh->pub_key = BN_dup(dhp->pub_key);
dh->priv_key = BN_dup(dhp->priv_key);
if ((dh->pub_key == NULL) ||
(dh->priv_key == NULL)) {
SSLerr(
SSL_F_SSL3_SEND_SERVER_KEY_EXCHANGE,
ERR_R_DH_LIB);
goto err;
}
if (!DH_generate_key(dh)) {
SSLerr(SSL_F_SSL3_SEND_SERVER_KEY_EXCHANGE,
ERR_R_DH_LIB);
goto err;
}
r[0] = dh->p;
r[1] = dh->g;
Expand Down

0 comments on commit 5e12fe8

Please sign in to comment.