summaryrefslogtreecommitdiff
path: root/test/openssl
AgeCommit message (Collapse)Author
2012-02-08Backport r34482 from trunk. See #5353nahi
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_8_7@34486 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-05-20merge revision(s) 30274:30279:shyouhei
* Backported the fix at Mon Oct 4 09:30:42 2010 NARUSE, Yui <naruse@ruby-lang.org> * ext/openssl/lib/openssl/bn.rb (Integer#to_bn): OpenSSL::BN.new accepts only Strings, so call Integer#to_s(16). 16 is for an optimization. [ruby-dev:42336] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_8@30275 b2dd03c8-39d4-4d8f-98ff-823fe69b080e Make test-all run. require_relative is from 1.9. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_8@30278 b2dd03c8-39d4-4d8f-98ff-823fe69b080e * Backported the fix at Mon Sep 13 09:23:58 2010 NARUSE, Yui <naruse@ruby-lang.org> * ext/openssl/ossl_bn.c (ossl_bn_is_prime): fix comparison with rb_scan_args. Before this fix, OpenSSL::BN#prime? is fully broken. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_8@30279 b2dd03c8-39d4-4d8f-98ff-823fe69b080e Signed-off-by: URABE, Shyouhei <shyouhei@ruby-lang.org> create mode 100644 test/openssl/test_bn.rb git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_8_7@31657 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-11-22Mon, 23 Aug 2010 03:06:30 +0000 nahi ↵shyouhei
<nahi@b2dd03c8-39d4-4d8f-98ff-823fe69b080e> merge revision(s) 29071: * ext/openssl/ossl_asn1.c (obj_to_asn1bool): fixed ASN1::Boolean encoding issue for OpenSSL 1.0.0 compatibility. ASN1::Boolean.new(false).to_der wrongly generated "\1\1\377" which means 'true'. ASN1_TYPE_set of OpenSSL <= 0.9.8 treats value 0x100 as 'false' but OpenSSL >= 1.0.0 treats it as 'true'. ruby-ossl was using 0x100 for 'false' for backward compatibility. Just use 0x0 for the case OpenSSL >= OpenSSL 0.9.7. * test/openssl/test_asn1.rb: test added. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_8@29071 b2dd03c8-39d4-4d8f-98ff-823fe69b080e Signed-off-by: URABE, Shyouhei <shyouhei@ruby-lang.org> git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_8_7@29861 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-11-22Thu, 8 Jul 2010 04:44:58 +0000 nahi <nahi@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>shyouhei
merge revision(s) 28575,28620:28632: * test/openssl/test_config.c: added tests for all Config methods. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_8@28575 b2dd03c8-39d4-4d8f-98ff-823fe69b080e Signed-off-by: URABE, Shyouhei <shyouhei@ruby-lang.org> * ext/openssl/ossl_config.c (ossl_config_copy): wrongly updating the given object with uninitialized CONF data. now OpenSSL::Config#clone works as expected; cloning the config instead of SEGV or empty definition. * test/openssl/test_config.rb: added tests for Config#clone. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_8@28621 b2dd03c8-39d4-4d8f-98ff-823fe69b080e Signed-off-by: URABE, Shyouhei <shyouhei@ruby-lang.org> * ext/openssl/ossl_config.c, ext/openssl/lib/openssl/config.rb, ext/openssl/lib/openssl.rb: reimplement OpenSSL::Config in Ruby. Now it should work on windows. * test/openssl/test_config.rb: added tests for OpenSSL::Config#dup. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_8@28632 b2dd03c8-39d4-4d8f-98ff-823fe69b080e Signed-off-by: URABE, Shyouhei <shyouhei@ruby-lang.org> create mode 100644 ext/openssl/lib/openssl/config.rb create mode 100644 test/openssl/test_config.rb git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_8_7@29856 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-06-21merge revision(s) 26836:26859,26861,27921:shyouhei
* ext/openssl/ossl_ssl_session.c (ossl_ssl_session_{get,set}_time{,out}): fixed a bug introduced by backporting. (see [ruby-dev:40573]) use long in according to OpenSSL API. (SSL_SESSION_{get,set}_time{,out}) * ext/openssl/ossl_x509name.c: added X509::Name#hash_old as a wrapper for X509_NAME_hash_old in OpenSSL 1.0.0. * test/openssl/test_x509name.rb (test_hash): make test pass with OpenSSL 1.0.0. * test/openssl/test_x509*: make tests pass with OpenSSL 1.0.0b5. * PKey::PKey#verify raises an exception when a given PKey does not match with signature. * PKey::DSA#sign accepts SHA1, SHA256 other than DSS1. * backport the commit from trunk: Sun Feb 28 11:49:35 2010 NARUSE, Yui <naruse@ruby-lang.org> * openssl/ossl.c (OSSL_IMPL_SK2ARY): for OpenSSL 1.0. patched by Jeroen van Meeuwen at [ruby-core:25210] fixed by Nobuyoshi Nakada [ruby-core:25238], Hongli Lai [ruby-core:27417], and Motohiro KOSAKI [ruby-core:28063] * ext/openssl/ossl_ssl.c (ossl_ssl_method_tab), (ossl_ssl_cipher_to_ary): constified. * ext/openssl/ossl_pkcs7.c (pkcs7_get_certs, pkcs7_get_crls): split pkcs7_get_certs_or_crls. * test/openssl/test_ec.rb: added test_dsa_sign_asn1_FIPS186_3. dgst is truncated with ec_key.group.order.size after openssl 0.9.8m for FIPS 186-3 compliance. WARNING: ruby-openssl aims to wrap an OpenSSL so when you're using openssl 0.9.8l or earlier version, EC.dsa_sign_asn1 raises OpenSSL::PKey::ECError as before and EC.dsa_verify_asn1 just returns false when you pass dgst longer than expected (no truncation performed). * ext/openssl/ossl_pkey_ec.c: rdoc typo fixed. * ext/openssl/ossl_config.c: defined own IMPLEMENT_LHASH_DOALL_ARG_FN_098 macro according to IMPLEMENT_LHASH_DOALL_ARG_FN in OpenSSL 0.9.8m. OpenSSL 1.0.0beta5 has a slightly different definiton so it could be a temporal workaround for 0.9.8 and 1.0.0 dual support. * ext/openssl/ossl_pkcs5.c (ossl_pkcs5_pbkdf2_hmac): follows function definition in OpenSSL 1.0.0beta5. PKCS5_PBKDF2_HMAC is from 1.0.0 (0.9.8 only has PKCS5_PBKDF2_HMAC_SHA1) * ext/openssl/ossl_ssl_session.c (ossl_ssl_session_eq): do not use SSL_SESSION_cmp and implement equality func by ousrself. See the comment. * ext/openssl/extconf.rb: check some functions added at OpenSSL 1.0.0. * ext/openssl/ossl_engine.c (ossl_engine_s_load): use engines which exists. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_8_7@28367 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2009-04-02merge revision(s) 22910:shyouhei
* test/openssl/test_ssl.rb (OpenSSL#test_client_session): Debian's openssl 0.9.8g-13 failed at assert(ssl.session_reused?), when use default SSLContext. [ruby-dev:36167] backported r19268 from trunk. [ruby-core:22843] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_8_7@23117 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-06-06* ext/openssl/ossl_ssl_session.c (ossl_ssl_session_initialize):knu
Add a null check for ssl; submitted by akira yamada in [ruby-dev:34950]. * ext/openssl/ossl_ssl.c (Init_ossl_ssl): Define OP_NO_TICKET if SSL_OP_NO_TICKET is present; submitted by akira yamada in [ruby-dev:34944]. * test/openssl/test_ssl.rb (OpenSSL#test_server_session): Add a workaround for the case where OpenSSL is configured with --enable-tlsext; submitted by akira yamada in [ruby-dev:34944]. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_8_7@16857 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-04-25Merge from ruby_1_8.knu
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_8_7@16193 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-07-14 * test/openssl/test_pkcs7.rb: reverted the previous patch. it shouldnahi
be as it was to check interface compatibility. sorry for bothering with this. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_8@12782 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-07-14 * test/openssl/test_pkcs7.rb: follow the library change. applied anahi
patch from <zn at mbf.nifty.com> [ruby-dev:31214]. NOTE: r12496 imports the latest openssl libs from trunk to ruby_1_8 though its's not ChangeLog-ed. maintainer should aware that. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_8@12781 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-06-18* ext/openssl/{extconf.rb,ossl_ssl_session.c}:technorama
Fix ruby-Bugs-11513. * ext/openssl/ossl_pkey_ec.c New methods EC::Point.[eql,make_affine!,invert!,on_curve?,infinity?] By default output the same key form as the openssl command. * ext/openssl/ossl_rand.c New method Random.status? * test/openssl/test_ec.rb New tests. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_8@12572 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-06-08import OpenSSL from trunktechnorama
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_8@12496 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2006-06-20*** empty log message ***gotoyuzo
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_8@10340 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2006-06-20* ext/openssl/extconf.rb: add check for OBJ_NAME_do_all_sorted.gotoyuzo
* ext/openssl/ossl_cipher.c (ossl_s_ciphers): new method OpenSSL::Cipher.ciphers. it returns all the cipher names. * ext/openssl/lib/openssl/cipher.rb: - add constants AES128, AES192, AES256. [ruby-dev:28610] - reimplement without eval() * ext/openssl/lib/openssl/digest.rb: reimplement without eval(). * test/openssl/test_cipher.rb, test_digest: fix about reimplemented features. * sample/openssl/cipher.rb: rewrite all. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_8@10339 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2005-12-12* test/openssl/test_ssl.rb (test_parallel): call GC.start to closegotoyuzo
unused files. [ruby-dev:27981] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_8@9680 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2005-11-22* ext/openssl/extconf.rb: check for X509V3_EXT_nconf_nid.gotoyuzo
* ext/openssl/ossl_x509ext.c (MakeX509ExtFactory): should use OPENSSL_malloc to allocate X509V3_CTX. * ext/openssl/ossl_x509ext.c (ossl_x509extfactory_create_ext): use X509V3_EXT_nconf_nid to avoid SEGV (and to build extensions which values are placed in separate section). * test/openssl/test_x509ext.rb: new file. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_8@9592 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2005-10-30* ext/openssl/ossl_cipher.c (ossl_cipher_update): input data mustgotoyuzo
not be empty. [ruby-talk:161220] * test/openssl/test_cipher.rb: add test for Cipher#update(""). git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_8@9485 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2005-09-18* ext/openssl/ossl_pkey.h, ossl_pkey_rsa.c, ossl_pkey_dsa.c:gotoyuzo
an instance variable "private" is added to OpenSSL::PKey class. this ivar is a flag that shows whether there is a private key in the instance. * ext/openssl/ossl_engine.c: (ossl_engine_load_privkey): set private key flag. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_8@9218 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2005-09-12* test/openssl/test_pkcs7.rb (test_enveloped): skip this testgotoyuzo
to avoid a bug of PKCS7_enctypt() (only if ext/openssl is compiled with OpenSSL-0.9.7d or earlier versions). http://www.mail-archive.com/openssl-dev@openssl.org/msg17376.html git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_8@9130 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2005-09-10This commit was manufactured by cvs2svn to create branch 'ruby_1_8'.(no author)
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_8@9112 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2005-09-10* ext/openssl/lib/digest.rb: added SHA224, SHA256, SHA384 and SHA512.gotoyuzo
these features are enabled if this library is compiled with OpenSSL 0.9.8 or later. * test/openssl/test_digest.rb: add test for new digests. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_8@9111 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2005-09-10* ext/openssl/ossl.c (ossl_raise): should use ERR_peek_last_errorgotoyuzo
to get last error on the current thread. And should report errors are on the stack while OpenSSL.debug is true. * ext/openssl/ossl.c (ossl_get_errors): new method for debugging this library. * ext/openssl/ossl_ssl.c (ossl_sslctx_set_ciphers): fix error message. * ext/openssl/ossl_x509req.c (ossl_x509req_set_attributes): get rid of unused variable. * ext/openssl/ossl_x509store.c (ossl_x509store_initialize): should set @time to avoid warning. * ext/openssl/ossl_x509store.c (ossl_x509store_set_default_paths, X509_STORE_add_cert, X509_STORE_add_crl): should raise error if wrapped functions failed. * test/openssl/test_x509store.rb: add test for errors. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_8@9110 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2005-05-28* test/openssl/test_x509store.rb: add test for expired CRLgotoyuzo
and refine some assertions. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_8@8534 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2005-04-08* ext/openssl/ossl_ssl.c: add callbacks to OpenSSL::SSL::SSLContexts.gotoyuzo
- SSLContext#client_cert_cb=(aProc). it is called when a client certificate is requested by a server and no certificate was not set for the SSLContext. it must return an Array which includes OpenSSL::X509::Certificate and OpenSSL::PKey::RSA/DSA objects. - SSLContext#tmp_dh_callback=(aProc). it is called in key exchange with DH algorithm. it must return an OpenSSL::PKey::DH object. * ext/openssl/ossl_ssl.c (ossl_sslctx_set_ciphers): ignore the argument if it's nil. * ext/openssl/ossl_pkey.c (GetPrivPKeyPtr, ossl_pkey_sign): should call rb_funcall first. (DupPrivPKeyPtr): new function. * ext/openssl/ossl_pkey_dh.c: add default DH parameters. * ext/openssl/ossl_pkey.h: ditto. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_8@8277 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2005-03-09* ext/openssl/ossl_ssl.c (ossl_start_ssl, ossl_ssl_write): callgotoyuzo
rb_sys_fail if errno isn't 0. [ruby-dev:25831] * ext/openssl/lib/openssl/cipher.rb: fix typo. [ruby-dev:24285] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_8@8130 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2005-03-07This commit was manufactured by cvs2svn to create branch 'ruby_1_8'.(no author)
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_8@8103 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2005-02-14* ext/openssl/lib/openssl/ssl.rbgotoyuzo
(OpenSSL::SSL::SSLSocket#post_connection_check): new method. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_8@7970 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2004-12-21This commit was manufactured by cvs2svn to create branch 'ruby_1_8'.(no author)
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_8@7624 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2004-12-19* ext/openssl/ossl_x509store.cgotoyuzo
(ossl_x509store_set_time): add OpenSSL::X509::Store#time=. (ossl_x509stctx_set_time): add OpenSSL::X509::StoreContext#time=. * test/openssl/ossl_x509store.rb: test certificate validity times. * ext/openssl/ossl_x509name.c (ossl_x509name_to_s): add optional second argument to specify the output format (see also X509_NAME_print_ex). * ext/openssl/ossl_x509name.c (ossl_x509name_init): new constants: OpenSSL::X509::Name::COMPAT, OpenSSL::X509::Name::RFC2253, OpenSSL::X509::ONELINE, OpenSSL::X509::MULTILINE. * ext/openssl/lib/openssl/x509.rb (OpenSSL::X509::Name::RFC2253DN): new module to provide the parse for RFC2253 DN format. * ext/openssl/lib/openssl/x509.rb (OpenSSL::X509::Name.parse_rfc2253): new method to parse RFC2253 DN format. * test/openssl/ossl_x509name.rb: add tests about RFC2253 DN. * text/openssl/ssl_server.rb: try to listen ports from 20443 to 20542 while EADDRINUSE is raised. * all changes in this entry are backport from 1.9. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_8@7599 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2004-12-05This commit was manufactured by cvs2svn to create branch 'ruby_1_8'.(no author)
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_8@7467 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2004-07-18* test/openssl/test_ssl.rb: add workaround for Cygwin.gotoyuzo
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_8@6674 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2004-07-16* test/openssl/ssl_server.rb, test/openssl/test_ssl.rb: workaround togotoyuzo
terminate child process. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_8@6650 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2004-07-14* ext/openssl/ossl_asn1.c (ossl_asn1cons_to_der): fix type ofgotoyuzo
argument. [ruby-dev:23891] * test/openssl/test_x509store.rb: prune tests for CRL checking unless X509::V_FLAG_CRL_CHECK is defined. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_8@6626 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2004-07-01This commit was manufactured by cvs2svn to create branch 'ruby_1_8'.(no author)
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_8@6554 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2004-06-30* ext/openssl/ossl_ssl.c (ossl_ssl_read): take optional second argumentgotoyuzo
to specify a string to be written. * ext/openssl/lib/openssl/buffering.rb (OpenSSL::Buffering#read): take optional second argument to specify a string to be written. * ext/openssl/lib/openssl/buffering.rb (OpenSSL::Buffering#gets): refine regexp for end-of-line. * ext/opnessl/lib/openssl/ssl.rb (OpenSSL::SSL::SocketForwarder#listen): fix typo. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_8@6550 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2004-06-27This commit was manufactured by cvs2svn to create branch 'ruby_1_8'.(no author)
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_8@6531 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2004-05-21This commit was manufactured by cvs2svn to create branch 'ruby_1_8'.(no author)
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_8@6382 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2004-05-21* test_x509crl.rb (test_basic): add test for CRL issuer.gotoyuzo
* test_x509store.rb: test for OpenSSL::X509::Store * utils.rb (issue_crl): should set issuer's subject. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_8@6381 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2004-05-19* rescue LoadError. [ruby-dev:23539]gotoyuzo
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_8@6367 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2004-05-18This commit was manufactured by cvs2svn to create branch 'ruby_1_8'.(no author)
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_8@6353 b2dd03c8-39d4-4d8f-98ff-823fe69b080e