Commit graph

500 commits

Author SHA1 Message Date
akr
c1f400917a * ext/openssl/ossl_pkcs7.c: parenthesize macro arguments.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@30984 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-02-28 08:37:24 +00:00
akr
c0c182bf88 * ext/openssl/ossl_pkcs12.c: parenthesize macro arguments.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@30978 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-02-28 07:49:06 +00:00
akr
3fec2bee37 * ext/openssl/ossl_ocsp.c: parenthesize macro arguments.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@30976 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-02-28 07:46:16 +00:00
shyouhei
1c4c00a326 * ext/openssl/ossl_cipher.c (ossl_cipher_init): typo fix.
https://github.com/ruby/ruby/pull/8


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@30974 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-02-28 03:59:12 +00:00
akr
92ba80cc4a * ext/openssl/ossl_ns_spki.c: parenthesize macro arguments.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@30966 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-02-27 04:17:09 +00:00
akr
dbf889812b * ext/openssl/ossl_hmac.c: parenthesize macro arguments.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@30955 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-02-24 14:03:34 +00:00
akr
92729ad473 * ext/openssl/ossl_engine.c: parenthesize macro arguments.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@30946 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-02-23 13:05:32 +00:00
akr
b7af3f6f0c * ext/openssl/ossl_digest.c: parenthesize macro arguments.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@30941 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-02-22 12:39:43 +00:00
akr
408a903c99 * ext/openssl/ossl_cipher.c: parenthesize macro arguments.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@30925 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-02-20 10:59:48 +00:00
akr
1343f8c536 * ext/openssl/ossl_bn.c: parenthesize macro arguments.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@30917 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-02-19 15:47:21 +00:00
akr
5206119844 * ext/openssl/ossl.h: parenthesize macro arguments.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@30889 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-02-17 12:33:07 +00:00
akr
7bcc7db83b * ext/openssl/openssl_missing.h: parenthesize macro arguments.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@30886 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-02-16 11:17:39 +00:00
nobu
74e6dd4078 * ext/openssl/ossl_cipher.c (ossl_cipher_alloc): leave data ptr
NULL.
* ext/openssl/ossl_cipher.c (ossl_cipher_new, ossl_cipher_initialize):
  allocate internal structure.  [ruby-core:35094]
* ext/openssl/ossl_cipher.c (ossl_cipher_copy): ditto.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@30793 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-02-05 02:48:55 +00:00
naruse
5323407175 * ext/openssl/ossl_bn.c (GetBNPtr): add missing nil case.
patched by Martin Bosslet. [ruby-core:34987]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@30724 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-01-29 18:48:24 +00:00
nahi
0522ffd51f * ext/openssl/ossl_asn1.c (ossl_asn1_decode0): OpenSSL::ASN1.decode
should reject indefinite length primitive encodings as that is
          illegal. Patch by Martin Bosslet. See #4324.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@30656 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-01-26 08:17:01 +00:00
tenderlove
8e96c2c57b reverting r30451 until I can figure out what is wrong.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@30488 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-01-07 16:32:10 +00:00
tenderlove
76731871e7 * SSL_shutdown should be called until the return value is non-zero:
http://www.openssl.org/docs/ssl/SSL_shutdown.html

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@30451 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-01-05 04:57:27 +00:00
nobu
483bfa27e8 * ext/openssl/ossl_pkcs5.c (ossl_pkcs5_pbkdf2_hmac): add casts.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@30336 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-12-25 01:49:59 +00:00
kosaki
b61c256181 * ext/openssl/ossl_x509ext.c (ossl_x509extfactory_set_config):
fix compile error when !HAVE_X509V3_SET_NCONF. Thanks
	  Chikanaga-san. [ruby-dev:42761] [Ruby 1.9-Bug#4158]



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@30213 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-12-14 18:24:44 +00:00
usa
c1d9e252be * ext/openssl/ossl_asn1.c (ossl_asn1_decode0): how many gcc-c99isms
must a man mend; before he can build with VC? r30178


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@30195 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-12-14 01:30:41 +00:00
tenderlove
b82ba18990 * ext/openssl/ossl_asn1.c: indefinite length BER to DER encoding is
properly supported.  Thanks Martin Bosslet! [ruby-core:33082]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@30178 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-12-11 17:45:42 +00:00
drbrain
6c7608c0b1 Document RSA, RSA encryption/decryption and PKCS #5 encryption/decryption
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@30174 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-12-10 23:13:47 +00:00
drbrain
62e2f9052b Include Comparable in OpenSSL::X509::Name, document #<=>
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@30173 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-12-10 21:26:23 +00:00
tenderlove
f6b49243eb * ext/openssl/extconf.rb: try pkgconfig first, then fall back to
normal have_library, etc.  Thanks Erik Hollensbe. [ruby-core:32406]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@30167 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-12-10 17:24:30 +00:00
tenderlove
16a166dd35 * ext/openssl/ossl_x509store.c (ossl_x509stctx_cleanup): removing C
implementation of `cleanup`.

* ext/openssl/lib/openssl/x509.rb: adding ruby implementation of
  `cleanup`.  OpenSSL::X509::StoreContext#cleanup is deprecated since
  reusing the underlying struct doesn't make sense. [ruby-dev:42546]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@30152 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-12-09 17:18:54 +00:00
drbrain
41bfc7a721 Add toplevel documentation for OpenSSL
Add additional documentation for OpenSSL::SSL::SSLContext and
OpenSSL::SSL::SSLSocket.

Move "let rdoc know about mOSSL" comments so they don't show up in output.



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@30090 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-12-06 00:54:44 +00:00
drbrain
f462afa5cf Add documentation for OpenSSL::X509::Extension.new
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@30079 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-12-04 02:41:13 +00:00
drbrain
ff3e943d1f Improve documentation for URI::Common#encode_www_form, OpenSSL::SSL::SSLContext#ssl_version=.
Add documentation for OpenSSL::SSL::SSLContext#ciphers

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@29977 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-11-29 20:23:59 +00:00
tenderlove
fb7a337e97 * etc/openssl/ossl_ssl.c (ossl_ssl_get_cert): raise exception if
pointer is invalid.  Thanks Ippei Obayashi! [ruby-dev:42573]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@29784 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-11-14 21:46:08 +00:00
tenderlove
2b620bec12 * ext/openssl/ossl_ocsp.c (ossl_ocspcid_initialize): an optional
parameter may be used to specify the OpenSSL::OCSP::CertificateId on
  initialization.  Thanks Elise Huard! [ruby-core:32460]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@29699 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-11-05 15:49:38 +00:00
naruse
3a633b812e * 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/trunk@29407 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-10-04 00:33:22 +00:00
nobu
ee1a4eefa5 * ext/openssl/ossl_config.c (parse_config): remove dead declaration.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@29359 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-09-29 03:37:44 +00:00
wanabe
7b77b436f0 * ext/openssl/ossl_hmac.c (ossl_hmac_hexdigest, ossl_hmac_s_hexdigest),
ext/openssl/ossl_pkey_ec.c (ossl_ec_group_set_seed),
  ext/openssl/ossl_ssl_session.c (ossl_ssl_session_to_der),
  ext/openssl/ossl_pkcs7.c (numberof): suppress warnings.
  [ruby-core:31932]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@29346 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-09-26 13:24:52 +00:00
naruse
6ebb345dd7 * 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/trunk@29237 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-09-13 00:40:10 +00:00
nahi
7f438d8402 * ext/openssl/lib/openssl/x509-internal.rb: removed unused local
variable.

        * test/openssl/*: less warnings while test running with -w.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@29217 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-09-10 08:54:50 +00:00
nahi
849c347833 * ext/openssl/ossl_ssl.c (ssl_get_error): Thread context switch was
blocked on Windows while blocking call for SSLSocket.  Need to 
          convert errno for letting rb_io_wait_readable detect EWOULDBLOCK.  
          Patch by arton. ref #3794.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@29197 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-09-08 13:52:25 +00:00
nahi
dad43c29f8 * Fixed wrong check of missing functions. Patch by Adrian Quark.
ref #3400
          The patch contains following comment:
            This patch should avoid unnecessary incompatibility with future
            versions of Openssl.  Changes suggested by bmaher_at_amazon.com.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@29190 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-09-06 02:08:30 +00:00
nahi
8233db65b6 * Fixed exception message for SSL post connection check failure. Patch
by Paul Betteridge. ref [Bug #3704]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@29189 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-09-06 01:53:00 +00:00
nahi
298a6e1cd5 * backport r29071 from ruby_1_8;
* 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/trunk@29075 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-08-23 04:12:08 +00:00
nahi
15c39b07bd * backport r28621 and r28632 from ruby_1_8;
* 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.

          * test/openssl/test_config.rb: added tests for Config#clone.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@29048 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-08-19 08:22:31 +00:00
nobu
c53664c84d .cvsignore: have not been used already. [Bug #3468]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@28898 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-08-07 05:43:21 +00:00
nobu
fbfd5fdcb0 * ext/openssl/extconf.rb: __VA_ARGS__ is already checked in configure.
* ext/openssl/extconf.rb: use try_static_assert for version check.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@28292 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-06-11 23:03:28 +00:00
naruse
78e3dfd95b * ext/openssl/ossl_ssl.c (ossl_sslctx_get_ciphers):
use sk_SSL_CIPHER_num and sk_SSL_CIPHER_value instead of cast.
  patched by Takahiro Kambe [ruby-dev:41530]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@28282 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-06-11 14:06:23 +00:00
nobu
b4f1eaa493 * ext/openssl/lib/openssl/x509-internal.rb, lib/forwardable.rb,
lib/irb/cmd/fork.rb, lib/mutex_m.rb,
  lib/shell/process-controller.rb, lib/sync.rb, object.c: 
  suppress warnings patched by Benoit Daloze at [ruby-core:30366].


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@27967 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-05-23 08:48:44 +00:00
nobu
87af442f94 * suppress warnings.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@27944 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-05-21 09:10:23 +00:00
nobu
bcd0bcc390 * 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.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@27645 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-05-06 10:13:46 +00:00
usa
eaaef6af40 * ext/openssl/ossl_ssl_session.c (SSL_SESSION_cmp): remove static for
loopy version of openssl (0.9.8l?).


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@27461 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-04-23 15:16:02 +00:00
akr
5c67d206a7 * ext/openssl/ossl_config.c: fix compilation failure with
OpenSSL 0.9.8.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@27460 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-04-23 14:28:56 +00:00
usa
6f7b5ffe6f * ext/openssl/ossl_config.c: OpenSSL 1.0.0 support.
* ext/openssl/extconf.rb: check some functions added/removed at
  OpenSSL 1.0.0.

* ext/openssl/ossl_engine.c (ossl_engine_s_load): use engines which
  exists.

* ext/openssl/ossl_ssl_session (SSL_SESSION_cmp): removed at 1.0.0,
  so implement compatible fuction here.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@27457 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-04-23 08:37:55 +00:00
nobu
d0e5a34ac7 * ext/**/*.[ch]: removed trailing spaces.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@27440 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-04-22 08:21:01 +00:00