summaryrefslogtreecommitdiff
path: root/src/lib
diff options
context:
space:
mode:
authormiod <>2014-07-09 09:04:14 +0000
committermiod <>2014-07-09 09:04:14 +0000
commit2f2cdb52385907510d4c640b06c23b75ed0deaf6 (patch)
treeca13bf87e8d78bfe07b5dbada7f352541c14e770 /src/lib
parenta0d8435d26cdfa75eed61b864f9a1dfc0d6c956d (diff)
downloadopenbsd-2f2cdb52385907510d4c640b06c23b75ed0deaf6.tar.gz
openbsd-2f2cdb52385907510d4c640b06c23b75ed0deaf6.tar.bz2
openbsd-2f2cdb52385907510d4c640b06c23b75ed0deaf6.zip
In the old days (not in this century), SSLeay 0.4.5 would create X.509 RSA
signatures using the wrong oid for the signature type. The signature verification code has thus been modified to allow these signatures to be accepted, with a printf to stderr to notify the user something was fishy. Remove this chunk; these signatures will no longer get accepted. ok deraadt@ guenther@ jsing@ tedu@
Diffstat (limited to 'src/lib')
-rw-r--r--src/lib/libcrypto/rsa/rsa_sign.c17
-rw-r--r--src/lib/libssl/src/crypto/rsa/rsa_sign.c17
2 files changed, 6 insertions, 28 deletions
diff --git a/src/lib/libcrypto/rsa/rsa_sign.c b/src/lib/libcrypto/rsa/rsa_sign.c
index 239435fe91..9718589be7 100644
--- a/src/lib/libcrypto/rsa/rsa_sign.c
+++ b/src/lib/libcrypto/rsa/rsa_sign.c
@@ -1,4 +1,4 @@
1/* $OpenBSD: rsa_sign.c,v 1.18 2014/07/09 08:20:08 miod Exp $ */ 1/* $OpenBSD: rsa_sign.c,v 1.19 2014/07/09 09:04:14 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 *
@@ -223,19 +223,8 @@ int_rsa_verify(int dtype, const unsigned char *m, unsigned int m_len,
223 sigtype = OBJ_obj2nid(sig->algor->algorithm); 223 sigtype = OBJ_obj2nid(sig->algor->algorithm);
224 224
225 if (sigtype != dtype) { 225 if (sigtype != dtype) {
226 if ((dtype == NID_md5 && 226 RSAerr(RSA_F_INT_RSA_VERIFY, RSA_R_ALGORITHM_MISMATCH);
227 sigtype == NID_md5WithRSAEncryption) || 227 goto err;
228 (dtype == NID_md2 &&
229 sigtype == NID_md2WithRSAEncryption)) {
230 /* ok, we will let it through */
231 fprintf(stderr,
232 "signature has problems, "
233 "re-make with post SSLeay045\n");
234 } else {
235 RSAerr(RSA_F_INT_RSA_VERIFY,
236 RSA_R_ALGORITHM_MISMATCH);
237 goto err;
238 }
239 } 228 }
240 if (rm) { 229 if (rm) {
241 const EVP_MD *md; 230 const EVP_MD *md;
diff --git a/src/lib/libssl/src/crypto/rsa/rsa_sign.c b/src/lib/libssl/src/crypto/rsa/rsa_sign.c
index 239435fe91..9718589be7 100644
--- a/src/lib/libssl/src/crypto/rsa/rsa_sign.c
+++ b/src/lib/libssl/src/crypto/rsa/rsa_sign.c
@@ -1,4 +1,4 @@
1/* $OpenBSD: rsa_sign.c,v 1.18 2014/07/09 08:20:08 miod Exp $ */ 1/* $OpenBSD: rsa_sign.c,v 1.19 2014/07/09 09:04:14 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 *
@@ -223,19 +223,8 @@ int_rsa_verify(int dtype, const unsigned char *m, unsigned int m_len,
223 sigtype = OBJ_obj2nid(sig->algor->algorithm); 223 sigtype = OBJ_obj2nid(sig->algor->algorithm);
224 224
225 if (sigtype != dtype) { 225 if (sigtype != dtype) {
226 if ((dtype == NID_md5 && 226 RSAerr(RSA_F_INT_RSA_VERIFY, RSA_R_ALGORITHM_MISMATCH);
227 sigtype == NID_md5WithRSAEncryption) || 227 goto err;
228 (dtype == NID_md2 &&
229 sigtype == NID_md2WithRSAEncryption)) {
230 /* ok, we will let it through */
231 fprintf(stderr,
232 "signature has problems, "
233 "re-make with post SSLeay045\n");
234 } else {
235 RSAerr(RSA_F_INT_RSA_VERIFY,
236 RSA_R_ALGORITHM_MISMATCH);
237 goto err;
238 }
239 } 228 }
240 if (rm) { 229 if (rm) {
241 const EVP_MD *md; 230 const EVP_MD *md;