aboutsummaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* cipher: fix handling huge data larger than INT_MAX bytesKazuki Yamaguchi2016-07-241-18/+16
| | | | | | | | | | | | | | | | The function ossl_cipher_update_long() was added to fix this in r48923 (ossl_cipher.c: workaround of OpenSSL API, 2014-12-23), but it didn't work well. [Bug #10633] This can be tested by running: $ fallocate -l 2G data.img $ ruby -ropenssl <<EOF cipher = OpenSSL::Cipher.new("aes-128-ecb").encrypt cipher.key = "\x00" * 16 ct = cipher.update(File.read("data.img")) << cipher.final p ct.bytesize EOF
* Merge branch 'topic/ssl-check-pkey-private'Kazuki Yamaguchi2016-07-204-36/+36
|\ | | | | | | | | | | | | * topic/ssl-check-pkey-private: ssl: reject keys without private components ssl: remove unneeded instance variable x509 and key from SSL::SSLSocket pkey: remove unused things
| * ssl: reject keys without private componentstopic/ssl-check-pkey-privateKazuki Yamaguchi2016-07-032-2/+22
| | | | | | | | | | | | | | OpenSSL checks if the PKey's public key matches with the certificate, but does not check that the PKey contains the private components. As a result, OpenSSL does a NULL dereference while doing SSL/TLS negotiation. [Bug #8673]
| * ssl: remove unneeded instance variable x509 and key from SSL::SSLSocketKazuki Yamaguchi2016-07-031-14/+12
| | | | | | | | | | | | They are only used to pass two objects across rb_protect(). So just remove them and use temporary array instead. Since they are not public attributes, this should be safe.
| * pkey: remove unused thingsKazuki Yamaguchi2016-07-032-20/+2
| | | | | | | | | | Make id_private_q local to ossl_pkey.c, and remove unused DupPrivPKeyPtr() function.
* | Merge branch 'topic/cipher-iv-len'Kazuki Yamaguchi2016-07-204-3/+102
|\ \ | | | | | | | | | | | | * topic/cipher-iv-len: cipher: allow setting IV length when using AEAD ciphers
| * | cipher: allow setting IV length when using AEAD cipherstopic/cipher-iv-lenKazuki Yamaguchi2016-07-094-3/+102
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Add OpenSSL::Cipher#iv_len=. For interoperability with other applications, it is sometimes required. Normally 'IV' is fixed-length, but in OpenSSL, some ciphers such as aes-128-gcm make use of it as 'nonce', which is variable-length. Changing the IV length in Cipher#iv= is also an option but I decided not to choose it. Because in Ruby <= 2.3 Cipher#iv= truncates the input when the length is longer than the current IV length, changing the behavior might cause unexpected encryption result. [Bug #8667] [Bug #10420] [GH ruby/ruby#569]
* | | Suppress warnings in testsKazuki Yamaguchi2016-07-103-28/+28
| | |
* | | Merge pull request #55 from rhenium/topic/pkey-read-pkey-errorKazuki Yamaguchi2016-07-105-5/+14
|\ \ \ | | | | | | | | Make PKey.read raise PKey::PKeyError rather than ArgumentError
| * | | pkey: make PKey.read raise PKey::PKeyError rather than ArgumentErrortopic/pkey-read-pkey-errorKazuki Yamaguchi2016-07-095-5/+14
| |/ / | | | | | | | | | | | | | | | | | | | | | PKey.read is a generic method to load an arbitrary PKey structure from a PEM or DER encoded String. Each PKey classes's constructor also can load from a String, but the behavior on error is different. While they raises its own exception (are subclasses of PKey::PKeyError), PKey.read raises ArgumentError. [Bug #11774]
* | | Merge pull request #57 from rhenium/topic/fix-doc-pkey-loadingKazuki Yamaguchi2016-07-101-0/+2
|\ \ \ | | | | | | | | Improve 'Loading a key' section of the documentation
| * | | Improve 'Loading a key' section of the documentationtopic/fix-doc-pkey-loadingKazuki Yamaguchi2016-07-031-0/+2
| | |/ | |/| | | | | | | | | | | | | | | | | | | | | | Show the return values of both PKey::RSA#public? and #private? for each two .pem files. The current example is not technically incorrect, but very confusing. This is based on the reports by Rob Nichols and Brett Goulder. [Bug #10115] [GH ruby/openssl#52]
* | | Deprecate constant OpenSSL::Digest::Digest and OpenSSL::Cipher::CipherKazuki Yamaguchi2016-07-094-17/+13
| | | | | | | | | | | | | | | | | | Mark OpenSSL::{Digest::Digest,Cipher::Cipher} as deprecated using Module#deprecate_constant. They have been deprecated for years in the documentation.
* | | Fix 'debug' taskKazuki Yamaguchi2016-07-091-1/+1
| | | | | | | | | | | | Load path needs to be passed.
* | | Merge branch 'topic/rdoc-fixes'Kazuki Yamaguchi2016-07-0933-105/+199
|\ \ \ | | | | | | | | | | | | | | | | | | | | | | | | * topic/rdoc-fixes: Fix RDoc style Update .gitignore Add RDoc task to Rakefile
| * | | Fix RDoc styletopic/rdoc-fixesKazuki Yamaguchi2016-07-0930-97/+190
| | | |
| * | | Update .gitignoreKazuki Yamaguchi2016-07-091-8/+3
| | | | | | | | | | | | | | | | | | | | Ignore /html and /ext/openssl/extconf.h. Also remove impossible files - we currently don't use YARD or Bundler.
| * | | Add RDoc task to RakefileKazuki Yamaguchi2016-07-092-0/+6
| | | |
* | | | Merge branch 'topic/ocsp-basic-verify-bug'Kazuki Yamaguchi2016-07-092-32/+115
|\ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | * topic/ocsp-basic-verify-bug: ocsp: add workaround for OCSP_basic_verify() bug ocsp: refactor tests
| * | | | ocsp: add workaround for OCSP_basic_verify() bugtopic/ocsp-basic-verify-bugKazuki Yamaguchi2016-07-082-0/+59
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Older versions of OpenSSL have a bug that it doesn't use the certificates passed to OCSP_basic_verify() for verifying the chain. This can be a problem when the response is signed by a certificate issued by an intermediate CA. root_ca | intermediate_ca |-------------| end_entity ocsp_signer When the certificate hierarchy is like this, and the response contains only ocsp_signer certificate, the following code wrongly fails. store = OpenSSL::X509::Store.new; store.add_cert(root_ca) basic_response.verify([intermediate_ca], store) So duplicate the OCSP_BASICRESP and add the certificates to the embedded list first.
| * | | | ocsp: refactor testsKazuki Yamaguchi2016-07-081-32/+56
| |/ / / | | | | | | | | | | | | Make @cert an intermediate CA, add @cert2 that issued by @cert.
* | | | Merge branch 'topic/doc-ssl-sync-close'Kazuki Yamaguchi2016-07-092-0/+10
|\ \ \ \ | |_|_|/ |/| | | | | | | | | | | * topic/doc-ssl-sync-close: Document OpenSSL::SSL::SSLSocket#sync_close
| * | | Document OpenSSL::SSL::SSLSocket#sync_closetopic/doc-ssl-sync-closeKazuki Yamaguchi2016-07-092-0/+10
| | |/ | |/| | | | | | | | | | Add rdoc for OpenSSL::SSL::SSLSocket#sync_close, and mention it in the example code in the rdoc for OpenSSL namespace. [GH ruby/openssl#11]
* | | Add NEWSKazuki Yamaguchi2016-07-091-0/+108
| |/ |/|
* | Merge pull request #50 from jsyeo/jsyeo-remove-rc4Kazuki Yamaguchi2016-07-051-3/+0
|\ \ | |/ |/| RC4 has insecure biases and both clients and servers should not be using it.
| * Remove RC4 cipher suites from SSLContext::DEFAULT_PARAMSJason Yeo2016-07-041-3/+0
| | | | | | | | | | | | | | | | This commit removes insecure RC4 ciper suites [1] from being used by default. If needed, users can still specify the usage of it by specifying it explicitly. [1]: https://tools.ietf.org/html/rfc7465
* | Merge changes from Ruby trunk r55457..r55538Kazuki Yamaguchi2016-06-293-28/+50
|\ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | * ruby-trunk r55457..r55538: (4 commits) (r55538) openssl: fix for OpenSSL 1.0.0t (r55523) * ext/digest/md5/md5ossl.h: Remove excess semicolons. Sup.. (r55503) Refine assertion (r55502) openssl: ignore test failure caused by LibreSSL bug Sync-with-trunk: r55538
| * | openssl: fix for OpenSSL 1.0.0trhe2016-06-291-24/+34
| | | | | | | | | | | | | | | | | | | | | * ext/openssl/ossl_ocsp.c: The "reuse" behavior of d2i_ functions does not work well with OpenSSL 1.0.0t. So avoid it. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@55538 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
| * | * ext/digest/md5/md5ossl.h: Remove excess semicolons.ngoto2016-06-291-3/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Suppress warning on Solaris with Oracle Solaris Studio 12. [ruby-dev:49692] [Bug #12524] * ext/digest/md5/md5cc.h: ditto. * ext/digest/sha1/sha1cc.h: ditto. * ext/digest/sha1/sha1ossl.h: ditto. * ext/digest/sha2/sha2cc.h: ditto. * ext/digest/sha2/sha2ossl.h: ditto. * ext/openssl/ossl_pkey_rsa.c: ditto. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@55523 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
| * | Refine assertionnobu2016-06-291-1/+1
| | | | | | | | | | | | | | | | | | * test/openssl/test_ocsp.rb: assert_in_delta for better message. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@55503 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
| * | openssl: ignore test failure caused by LibreSSL bugrhe2016-06-291-1/+13
|/ / | | | | | | | | | | | | * test/openssl/test_ocsp.rb: Ignore errors caused by bugs that exist in LibreSSL >= 2.3.1. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@55502 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* | - Add getting started doc for testing the gemZachary Scott2016-06-242-1/+7
| | | | | | | | - Remove version restriction from `rake-compiler` in `Rakefile`
* | Merge changes from Ruby trunk r55335..r55457Kazuki Yamaguchi2016-06-1921-233/+1290
|\ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Also adjust tests. * ruby-trunk r55335..r55457: (15 commits) (r55457) openssl: add OpenSSL::OCSP::SingleResponse (r55456) openssl: allow passing absolute times in OCSP::BasicRespons.. (r55455) openssl: implement initialize_copy for OpenSSL::OCSP::* (r55454) openssl: implement initialize_copy method for PKey classes (r55450) openssl: add 'const's required in OpenSSL master (r55444) openssl: avoid test crash on Ubuntu 16.04 (r55423) openssl: refactor OpenSSL::OCSP::*#verify (r55422) openssl: allow specifying hash algorithm in OCSP::*#sign (r55411) openssl: add some accessor methods for OCSP::CertificateId (r55409) openssl: add missing #to_der to OCSP::{CertificateId,BasicR.. (r55408) openssl: fix acesssor functions for RSA and DH in openssl_m.. (r55388) openssl: support non AES-GCM AEAD ciphers in OpenSSL::Cipher (r55387) openssl: avoid test failure in test_engine.rb (r55344) openssl: use ASN1_ENUMERATED_to_BN() if needed (r55342) openssl: fix build with OPENSSL_NO_EC Sync-with-trunk: r55457
| * | openssl: add OpenSSL::OCSP::SingleResponserhe2016-06-192-19/+478
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * ext/openssl/ossl_ocsp.c: Add OCSP::SingleResponse that represents an OCSP SingleResponse structure. Also add two new methods #responses and #find_response to OCSP::BasicResponse. A BasicResponse has one or more SingleResponse. We have OCSP::BasicResponse#status that returns them as an array of arrays, each containing the content of a SingleResponse, but this is not useful. When validating an OCSP response, we need to look into the each SingleResponse and check their validity but it is not simple. For example, when validating for a certificate 'cert', the code would be like: # certid_target is an OpenSSL::OCSP::CertificateId for cert basic = res.basic result = basic.status.any? do |ary| ary[0].cmp(certid_target) && ary[4] <= Time.now && (!ary[5] || Time.now <= ary[5]) end Adding OCSP::SingleResponse at the same time allows exposing OCSP_check_validity(). With this, the code above can be rewritten as: basic = res.basic single = basic.find_response(certid_target) result = single.check_validity * test/openssl/test_ocsp.rb: Test this. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@55457 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
| * | openssl: allow passing absolute times in OCSP::BasicResponse#add_statusrhe2016-06-192-31/+63
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * ext/openssl/ossl_ocsp.c (ossl_ocspbres_add_status): Allow specifying the times (thisUpdate, nextUpdate and revocationTime) with Time objects. Currently they accepts only relative seconds from the current time. This is inconvenience, especially for revocationTime. When Integer is passed, they are still treated as relative times. Since the type check is currently done with rb_Integer(), this is a slightly incompatible change. Hope no one passes a relative time as String or Time object... Also, allow passing nil as nextUpdate. It is optional. * ext/openssl/ruby_missing.h: Define RB_INTEGER_TYPE_P() if not defined. openssl gem will be released before Ruby 2.4.0. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@55456 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
| * | openssl: implement initialize_copy for OpenSSL::OCSP::*rhe2016-06-192-0/+108
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * ext/openssl/ossl_ocsp.c: Implement OCSP::{CertificateId,Request, BasicResponse,Response}#initialize_copy. [ruby-core:75504] [Bug #12381] * test/openssl/test_ocsp.rb: Test them. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@55455 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
| * | openssl: implement initialize_copy method for PKey classesrhe2016-06-198-12/+196
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * ext/openssl/ossl_pkey_dh.c, ext/openssl/ossl_pkey_dsa.c, ext/openssl/ossl_pkey_ec.c, ext/openssl/ossl_pkey_rsa.c: Implement initialize_copy method for OpenSSL::PKey::*. [ruby-core:75504] [Bug #12381] * test/openssl/test_pkey_dh.rb, test/openssl/test_pkey_dsa.rb, test/openssl/test_pkey_ec.rb, test/openssl/test_pkey_rsa.rb: Test they actually copy the OpenSSL objects, and modifications to cloned object don't affect the original object. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@55454 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
| * | openssl: add 'const's required in OpenSSL masterrhe2016-06-195-17/+17
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * ext/openssl/ossl_pkey.h, ext/openssl/ossl_pkey_dh.c, ext/openssl/ossl_pkey_dsa.c, ext/openssl/ossl_pkey_rsa.c: A few days ago, OpenSSL changed {DH,DSA,RSA}_get0_*() to take const BIGNUM **. https://git.openssl.org/gitweb/?p=openssl.git;a=commit;h=fd809cfdbd6e32b6b67b68c59f6d55fbed7a9327 [ruby-core:75225] [Feature #12324] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@55450 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
| * | openssl: avoid test crash on Ubuntu 16.04rhe2016-06-191-3/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * test/openssl/test_pkey_ec.rb (setup): Don't call EC#generate_key! for Oakley-* curves. This causes an odd error on Ubuntu 16.04 with openssl 1.0.2g-1ubuntu4.1. begin OpenSSL::PKey::EC.new("Oakley-EC2N-4").generate_key rescue p $! end OpenSSL::PKey::RSA.new(512) This sometimes causes: #<OpenSSL::PKey::ECError: EC_KEY_generate_key: pairwise test failed> fips.c(139): OpenSSL internal error, assertion failed: FATAL FIPS SELFTEST FAILURE [ruby-dev:49670] [Bug #12504] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@55444 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
| * | openssl: refactor OpenSSL::OCSP::*#verifyrhe2016-06-191-16/+18
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * ext/openssl/ossl_ocsp.c (ossl_ocspreq_verify, ossl_ocspbres_verify): Use ossl_clear_error() so that they don't print warnings to stderr and leak errors in the OpenSSL error queue. Also, check the return value of OCSP_*_verify() correctly. They can return -1 on verification failure. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@55423 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
| * | openssl: allow specifying hash algorithm in OCSP::*#signrhe2016-06-192-41/+89
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * ext/openssl/ossl_ocsp.c (ossl_ocspreq_sign, ossl_ocspbres_sign): Allow specifying hash algorithm used in signing. They are hard coded to use SHA-1. Based on a patch provided by Tim Shirley <tidoublemy@gmail.com>. [ruby-core:70915] [Feature #11552] [GH ruby/openssl#28] * test/openssl/test_ocsp.rb: Test sign-verify works. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@55422 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
| * | openssl: add some accessor methods for OCSP::CertificateIdrhe2016-06-192-8/+99
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * ext/openssl/ossl_ocsp.c (ossl_ocspcid_get_issuer_name_hash, ossl_ocspcid_get_issuer_key_hash, ossl_ocspcid_get_hash_algorithm): Add accessor methods OCSP::CertificateId#issuer_name_hash, #issuer_key_hash, #hash_algorithm. Based on a patch provided by Paul Kehrer <paul.l.kehrer@gmail.com>. [ruby-core:48062] [Feature #7181] * test/openssl/test_ocsp.rb: Test these new methods. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@55411 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
| * | openssl: add missing #to_der to OCSP::{CertificateId,BasicResponse}rhe2016-06-192-18/+159
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * ext/openssl/ossl_ocsp.c (ossl_ocspbres_to_der, ossl_ocspcid_to_der): Implement #to_der methods for OCSP::BasicResponse and OCSP::CertificateId. (ossl_ocspreq_initialize, ossl_ocspres_initialize): Use GetOCSP*() instead of raw DATA_PTR(). (ossl_ocspbres_initialize, ossl_ocspcid_initialize): Allow initializing from DER string. (Init_ossl_ocsp): Define new #to_der methods. * test/openssl/test_ocsp.rb: Test these changes. Also add missing tests for OCSP::{Response,Request}#to_der. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@55409 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
| * | openssl: fix acesssor functions for RSA and DH in openssl_missing.hrhe2016-06-191-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | * ext/openssl/openssl_missing.h (DH_set0_pqg, RSA_set0_key): DH_set0_pqg() allows 'q' to be NULL. Fix a typo in RSA_set0_key(). Fixes r55285. [ruby-core:75225] [Feature #12324] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@55408 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
| * | openssl: support non AES-GCM AEAD ciphers in OpenSSL::Cipherrhe2016-06-192-55/+22
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * ext/openssl/ossl_cipher.c (ossl_cipher_get_auth_tag, ossl_cipher_set_auth_tag): Check if the cipher flags retrieved by EVP_CIPHER_CTX_flags() includes EVP_CIPH_FLAG_AEAD_CIPHER to see if the cipher supports AEAD. AES-GCM was the only supported in OpenSSL 1.0.1. (Init_ossl_cipher): Fix doc; OpenSSL::Cipher::AES.new(128, :GCM) can't work. * ext/openssl/openssl_missing.h: Define EVP_CTRL_AEAD_{GET,SET}_TAG if missing. They are added in OpenSSL 1.1.0, and have the same value as EVP_CTRL_GCM_{GET,SET}_TAG and EVP_CTRL_CCM_{GET,SET}_TAG. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@55388 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
| * | openssl: avoid test failure in test_engine.rbrhe2016-06-191-2/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * test/openssl/test_engine.rb (test_openssl_engine_builtin, test_openssl_engine_by_id_string): Skip test if 'openssl' engine is already loaded. And test the number increased by Engine.load{_by_id,}, not the total count of loaded engines. Previously, we called OpenSSL::Engine.cleanup every time running a test case, but we no longer can do it. [ruby-core:75225] [Feature #12324] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@55387 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
| * | openssl: use ASN1_ENUMERATED_to_BN() if neededrhe2016-06-192-2/+12
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * ext/openssl/ossl_asn1.c (asn1integer_to_num): Use ASN1_ENUMERATED_to_BN() to convert an ASN1_ENUMERATED to a BN. Starting from OpenSSL 1.1.0, ASN1_INTEGER_to_BN() rejects non-ASN1_INTEGER objects. The format of INTEGER and ENUMERATED are almost identical so they behaved in the same way in OpenSSL <= 1.0.2. [ruby-core:75225] [Feature #12324] * test/openssl/test_asn1.rb (test_decode_enumerated): Test that it works. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@55344 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
| * | openssl: fix build with OPENSSL_NO_ECrhe2016-06-193-5/+13
|/ / | | | | | | | | | | | | | | | | | | | | | | | | | | * ext/openssl/ossl_ssl.c: Add define guards for OPENSSL_NO_EC. SSL_CTX_set_ecdh_auto() is defined even when ECDH is disabled in OpenSSL's configuration. This fixes r55214. * test/openssl/test_pair.rb (test_ecdh_curves): Skip if the OpenSSL does not support ECDH. * test/openssl/utils.rb (start_server): Ignore error in SSLContext#ecdh_curves=. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@55342 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* | s/allowed_failures/allow_failuresZachary Scott2016-06-091-1/+1
| |
* | Merge changes from Ruby trunk r55224..r55335Kazuki Yamaguchi2016-06-0945-559/+1304
|\ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | And adjust tests for test-unit. * ruby-trunk r55224..r55335: (16 commits) (r55335) openssl: fix build with OpenSSL 1.1.0 and no pkg-config (r55314) openssl: adjust tests for OpenSSL 1.1.0 (r55309) openssl: add SSL::SSLContext#security_level{=,} (r55304) openssl: avoid deprecated version-specific ssl methods if n.. (r55294) openssl: fix free function of OpenSSL::Cipher (r55291) openssl: fix compile on VC (r55289) openssl: use SSL_is_server() (r55288) openssl: avoid d2i_ASN1_BOOLEAN() (r55287) openssl: adapt to OpenSSL 1.1.0 opaque structs (r55285) openssl: adapt OpenSSL::PKey to OpenSSL 1.1.0 opaque structs (r55283) openssl: support OpenSSL 1.1.0's new multi-threading API (r55282) openssl: check existence of RAND_pseudo_bytes() (r55273) openssl: avoid deprecated BN_*prime* functions (r55252) ossl_asn1.c: check overflow (r55249) openssl: fix the Year 2038 problem (r55229) openssl: add missing test for r55219 Sync-with-trunk: r55335