Allow code which calls RSA temp key callback to cope
with a failure. Fix typos in some error codes.
This commit is contained in:
parent
766d78c8f5
commit
fbb41ae0ad
4
CHANGES
4
CHANGES
@ -4,6 +4,10 @@
|
|||||||
|
|
||||||
Changes between 0.9.4 and 0.9.5 [xx XXX 2000]
|
Changes between 0.9.4 and 0.9.5 [xx XXX 2000]
|
||||||
|
|
||||||
|
*) Allow for the possibility of temp RSA key generation failure:
|
||||||
|
the code used to assume it always worked and crashed on failure.
|
||||||
|
[Steve Henson]
|
||||||
|
|
||||||
*) Fix potential buffer overrun problem in BIO_printf().
|
*) Fix potential buffer overrun problem in BIO_printf().
|
||||||
[Ulf Möller, using public domain code by Patrick Powell; problem
|
[Ulf Möller, using public domain code by Patrick Powell; problem
|
||||||
pointed out by David Sacerdote <das33@cornell.edu>]
|
pointed out by David Sacerdote <das33@cornell.edu>]
|
||||||
|
3
FAQ
3
FAQ
@ -44,6 +44,9 @@ might want to read Ariel Glenn's documentation on SSLeay 0.9, OpenSSL's
|
|||||||
predecessor, at <URL: http://www.columbia.edu/~ariel/ssleay/>. Much
|
predecessor, at <URL: http://www.columbia.edu/~ariel/ssleay/>. Much
|
||||||
of this still applies to OpenSSL.
|
of this still applies to OpenSSL.
|
||||||
|
|
||||||
|
There is some documentation about certificate extensions and PKCS#12
|
||||||
|
in doc/openssl.txt
|
||||||
|
|
||||||
The original SSLeay documentation is included in OpenSSL as
|
The original SSLeay documentation is included in OpenSSL as
|
||||||
doc/ssleay.txt. It may be useful when none of the other ressources
|
doc/ssleay.txt. It may be useful when none of the other ressources
|
||||||
help, but please note that it reflects the obsolete version SSLeay
|
help, but please note that it reflects the obsolete version SSLeay
|
||||||
|
@ -48,11 +48,11 @@ R SSL_R_TLSV1_ALERT_UNKNOWN_CA 1048
|
|||||||
R SSL_R_TLSV1_ALERT_ACCESS_DENIED 1049
|
R SSL_R_TLSV1_ALERT_ACCESS_DENIED 1049
|
||||||
R SSL_R_TLSV1_ALERT_DECODE_ERROR 1050
|
R SSL_R_TLSV1_ALERT_DECODE_ERROR 1050
|
||||||
R SSL_R_TLSV1_ALERT_DECRYPT_ERROR 1051
|
R SSL_R_TLSV1_ALERT_DECRYPT_ERROR 1051
|
||||||
R SSL_R_TLSV1_ALERT_EXPORT_RESTRICION 1060
|
R SSL_R_TLSV1_ALERT_EXPORT_RESTRICTION 1060
|
||||||
R SSL_R_TLSV1_ALERT_PROTOCOL_VERSION 1070
|
R SSL_R_TLSV1_ALERT_PROTOCOL_VERSION 1070
|
||||||
R SSL_R_TLSV1_ALERT_INSUFFICIENT_SECURITY 1071
|
R SSL_R_TLSV1_ALERT_INSUFFICIENT_SECURITY 1071
|
||||||
R SSL_R_TLSV1_ALERT_INTERNAL_ERROR 1080
|
R SSL_R_TLSV1_ALERT_INTERNAL_ERROR 1080
|
||||||
R SSL_R_TLSV1_ALERT_USER_CANCLED 1090
|
R SSL_R_TLSV1_ALERT_USER_CANCELLED 1090
|
||||||
R SSL_R_TLSV1_ALERT_NO_RENEGOTIATION 1100
|
R SSL_R_TLSV1_ALERT_NO_RENEGOTIATION 1100
|
||||||
|
|
||||||
R RSAREF_R_CONTENT_ENCODING 0x0400
|
R RSAREF_R_CONTENT_ENCODING 0x0400
|
||||||
|
@ -955,6 +955,12 @@ static int ssl3_send_server_key_exchange(SSL *s)
|
|||||||
rsa=s->cert->rsa_tmp_cb(s,
|
rsa=s->cert->rsa_tmp_cb(s,
|
||||||
SSL_C_IS_EXPORT(s->s3->tmp.new_cipher),
|
SSL_C_IS_EXPORT(s->s3->tmp.new_cipher),
|
||||||
SSL_C_EXPORT_PKEYLENGTH(s->s3->tmp.new_cipher));
|
SSL_C_EXPORT_PKEYLENGTH(s->s3->tmp.new_cipher));
|
||||||
|
if(rsa == NULL)
|
||||||
|
{
|
||||||
|
al=SSL_AD_HANDSHAKE_FAILURE;
|
||||||
|
SSLerr(SSL_F_SSL3_SEND_SERVER_KEY_EXCHANGE,SSL_R_ERROR_GENERATING_TMP_RSA_KEY);
|
||||||
|
goto f_err;
|
||||||
|
}
|
||||||
CRYPTO_add(&rsa->references,1,CRYPTO_LOCK_RSA);
|
CRYPTO_add(&rsa->references,1,CRYPTO_LOCK_RSA);
|
||||||
cert->rsa_tmp=rsa;
|
cert->rsa_tmp=rsa;
|
||||||
}
|
}
|
||||||
|
@ -1372,6 +1372,7 @@ int SSL_COMP_add_compression_method(int id,char *cm);
|
|||||||
#define SSL_R_DH_PUBLIC_VALUE_LENGTH_IS_WRONG 148
|
#define SSL_R_DH_PUBLIC_VALUE_LENGTH_IS_WRONG 148
|
||||||
#define SSL_R_DIGEST_CHECK_FAILED 149
|
#define SSL_R_DIGEST_CHECK_FAILED 149
|
||||||
#define SSL_R_ENCRYPTED_LENGTH_TOO_LONG 150
|
#define SSL_R_ENCRYPTED_LENGTH_TOO_LONG 150
|
||||||
|
#define SSL_R_ERROR_GENERATING_TMP_RSA_KEY 1092
|
||||||
#define SSL_R_ERROR_IN_RECEIVED_CIPHER_LIST 151
|
#define SSL_R_ERROR_IN_RECEIVED_CIPHER_LIST 151
|
||||||
#define SSL_R_EXCESSIVE_MESSAGE_SIZE 152
|
#define SSL_R_EXCESSIVE_MESSAGE_SIZE 152
|
||||||
#define SSL_R_EXTRA_DATA_IN_MESSAGE 153
|
#define SSL_R_EXTRA_DATA_IN_MESSAGE 153
|
||||||
|
@ -255,6 +255,7 @@ static ERR_STRING_DATA SSL_str_reasons[]=
|
|||||||
{SSL_R_DH_PUBLIC_VALUE_LENGTH_IS_WRONG ,"dh public value length is wrong"},
|
{SSL_R_DH_PUBLIC_VALUE_LENGTH_IS_WRONG ,"dh public value length is wrong"},
|
||||||
{SSL_R_DIGEST_CHECK_FAILED ,"digest check failed"},
|
{SSL_R_DIGEST_CHECK_FAILED ,"digest check failed"},
|
||||||
{SSL_R_ENCRYPTED_LENGTH_TOO_LONG ,"encrypted length too long"},
|
{SSL_R_ENCRYPTED_LENGTH_TOO_LONG ,"encrypted length too long"},
|
||||||
|
{SSL_R_ERROR_GENERATING_TMP_RSA_KEY ,"error generating tmp rsa key"},
|
||||||
{SSL_R_ERROR_IN_RECEIVED_CIPHER_LIST ,"error in received cipher list"},
|
{SSL_R_ERROR_IN_RECEIVED_CIPHER_LIST ,"error in received cipher list"},
|
||||||
{SSL_R_EXCESSIVE_MESSAGE_SIZE ,"excessive message size"},
|
{SSL_R_EXCESSIVE_MESSAGE_SIZE ,"excessive message size"},
|
||||||
{SSL_R_EXTRA_DATA_IN_MESSAGE ,"extra data in message"},
|
{SSL_R_EXTRA_DATA_IN_MESSAGE ,"extra data in message"},
|
||||||
|
Loading…
x
Reference in New Issue
Block a user