mirror of
https://github.com/ruby/ruby.git
synced 2022-11-09 12:17:21 -05:00
* ext/openssl/ossl.c
ext/openssl/ossl_pkey_rsa.c ext/openssl/ossl_pkey_dsa.c ext/openssl/ossl_pkey_ec.c: Forbid export passwords that are less than four characters long, as OpenSSL itself does not allow this. Issue found by Eric Hodel. * ext/openssl/ossl_pkey_ec.c: Add export as an alias of to_pem, following the PKey interface contract. * test/openssl/test_pkey_dsa.rb test/openssl/test_pkey_rsa.rb test/openssl/test_pkey_ec.rb: Add tests that assert correct behaviour when dealing with passwords that are less than four characters long. [ruby-core: 42281][ruby-trunk - Bug #5951] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@36001 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
This commit is contained in:
parent
8fcdb757a5
commit
5bd7899b98
8 changed files with 66 additions and 7 deletions
|
@ -318,7 +318,10 @@ ossl_dsa_export(int argc, VALUE *argv, VALUE self)
|
|||
if (!NIL_P(cipher)) {
|
||||
ciph = GetCipherPtr(cipher);
|
||||
if (!NIL_P(pass)) {
|
||||
passwd = StringValuePtr(pass);
|
||||
StringValue(pass);
|
||||
if (RSTRING_LENINT(pass) < OSSL_MIN_PWD_LEN)
|
||||
ossl_raise(eOSSLError, "OpenSSL requires passwords to be at least four characters long");
|
||||
passwd = RSTRING_PTR(pass);
|
||||
}
|
||||
}
|
||||
if (!(out = BIO_new(BIO_s_mem()))) {
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue