diff options
-rw-r--r-- | src/lib/libssl/s3_clnt.c | 7 | ||||
-rw-r--r-- | src/lib/libssl/src/ssl/s3_clnt.c | 7 |
2 files changed, 12 insertions, 2 deletions
diff --git a/src/lib/libssl/s3_clnt.c b/src/lib/libssl/s3_clnt.c index b55b2e62c6..8dbeb5ce80 100644 --- a/src/lib/libssl/s3_clnt.c +++ b/src/lib/libssl/s3_clnt.c | |||
@@ -1,4 +1,4 @@ | |||
1 | /* $OpenBSD: s3_clnt.c,v 1.83 2014/07/12 22:33:39 jsing Exp $ */ | 1 | /* $OpenBSD: s3_clnt.c,v 1.84 2014/07/17 11:32:21 miod 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 | * |
@@ -1678,6 +1678,11 @@ ssl3_get_certificate_request(SSL *s) | |||
1678 | } | 1678 | } |
1679 | 1679 | ||
1680 | for (nc = 0; nc < llen; ) { | 1680 | for (nc = 0; nc < llen; ) { |
1681 | if (p + 2 - d > n) { | ||
1682 | SSLerr(SSL_F_SSL3_GET_CERTIFICATE_REQUEST, | ||
1683 | SSL_R_DATA_LENGTH_TOO_LONG); | ||
1684 | goto err; | ||
1685 | } | ||
1681 | n2s(p, l); | 1686 | n2s(p, l); |
1682 | if ((l + nc + 2) > llen) { | 1687 | if ((l + nc + 2) > llen) { |
1683 | if ((s->options & SSL_OP_NETSCAPE_CA_DN_BUG)) | 1688 | if ((s->options & SSL_OP_NETSCAPE_CA_DN_BUG)) |
diff --git a/src/lib/libssl/src/ssl/s3_clnt.c b/src/lib/libssl/src/ssl/s3_clnt.c index b55b2e62c6..8dbeb5ce80 100644 --- a/src/lib/libssl/src/ssl/s3_clnt.c +++ b/src/lib/libssl/src/ssl/s3_clnt.c | |||
@@ -1,4 +1,4 @@ | |||
1 | /* $OpenBSD: s3_clnt.c,v 1.83 2014/07/12 22:33:39 jsing Exp $ */ | 1 | /* $OpenBSD: s3_clnt.c,v 1.84 2014/07/17 11:32:21 miod 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 | * |
@@ -1678,6 +1678,11 @@ ssl3_get_certificate_request(SSL *s) | |||
1678 | } | 1678 | } |
1679 | 1679 | ||
1680 | for (nc = 0; nc < llen; ) { | 1680 | for (nc = 0; nc < llen; ) { |
1681 | if (p + 2 - d > n) { | ||
1682 | SSLerr(SSL_F_SSL3_GET_CERTIFICATE_REQUEST, | ||
1683 | SSL_R_DATA_LENGTH_TOO_LONG); | ||
1684 | goto err; | ||
1685 | } | ||
1681 | n2s(p, l); | 1686 | n2s(p, l); |
1682 | if ((l + nc + 2) > llen) { | 1687 | if ((l + nc + 2) > llen) { |
1683 | if ((s->options & SSL_OP_NETSCAPE_CA_DN_BUG)) | 1688 | if ((s->options & SSL_OP_NETSCAPE_CA_DN_BUG)) |