Sun, 10 Nov 2002 23:30:56 +0100 -- Michal Rokos * bn.c: enhance BN so you can pass as parameter Ruby's numbers Sun, 10 Nov 2002 19:19:32 +0100 -- Michal Rokos * x509cert.c: Fix #serial, #serial= to support big numbers. * x509req.c: ditto. * pkcs7.c: ditto. * bn.c: implemented #to_int, #coerce to act with Ruby's numbers (so you can: eg. 10 + BN.new("200") * extconf.rb: fix it (again) to work with latest OpenSSL 0.9.7 Thu, 7 Nov 2002 14:02:35 +0900 * ossl_ssl.c: memory leak has been in ossl_sslctx_free(). Mon, 28 Oct 2002 11:19:30 +0100 -- Michal Rokos * extconf.rb: Make it work under Ruby1.7.3 Fri, 25 Oct 2002 03:37:42 +0900 -- GOTOU Yuuzou * ossl_ssl.c: ossl_ssl_verify_callback was refined. Tue, 15 Oct 2002 18:10:17 +0900 -- GOTOU Yuuzou * ossl_ssl.c: all ssl_xxx symbols were replaced as ossl_ssl_xxx. Tue, 15 Oct 2002 17:27:26 +0900 -- GOTOU Yuuzou * ossl_ssl.c: pass the verify callback Proc through the SSL extention data. Sun, 13 Oct 2002 01:46:20 +0900 -- GOTOU Yuuzou * ossl_ssl.c: fixed around verify callback invocation. * net/protocols.rb: improved for new version. * net/https.rb: ditto. Fri, 27 Sep 2002 09:40:43 +0200 -- Michal Rokos * config.c: added alias to Config#section as Config[] Fri, 06 Sep 2002 12:29:37 +0100 -- Michal Rokos * extconf.rb: Add some more targets when --*-debug and GCC Thu, 05 Sep 2002 13:07:18 +0100 -- Michal Rokos * bn.c: added #become method for Ruby 1.7.3 dup, clone interface * cipher.c: ditto. Thu, 05 Sep 2002 12:16:10 +0100 -- Michal Rokos * ossl.c: clear OpenSSL error in ossl_raise Wed, 04 Sep 2002 11:20:11 +0100 -- Michal Rokos * ossl.c: drop type checking functions, and * ossl.h: rewrite them as macros to ossl.h * x509cert.c: implement Certificate#become method to support Ruby1.7.3 dup, clone interface * BUG (in OpenSSL): Cannot do X509_dup(X509_new())!!! Wed, 07 Aug 2002 16:22:02 +0100 -- Michal Rokos * ssl.c: fixes to make it compile (Who screwed it? Me?) Wed, 07 Aug 2002 15:41:59 +0100 -- Michal Rokos * ossl.c: Drop not needed NT timeval struct * ssl.c: Check_Type => OSSL_Check_Kind fixes Mon, 29 Jul 2002 06:31:50 +0900 -- GOTOU Yuuzou * lib/openssl/buffering.rb: typo fixed (sent by Hiroshi Nakamura) * lib/openssl/openssl.rb: fixed for new implementation. * ossl_ssl.c: change the license (from BSDL to Ruby's). * ossl_ssl.c: new class SSLContext: ciphers, cert, cert_file, key, key_file, ca_cert, ca_file, timeout, verify_mode, verify_depth and verify_callback were moved from SSLSocket. * ossl_ssl.c: change the spec of arguments of SSLSocket.new. sample: ctx = SSL::SSLContext.new ssl = SSL::SSLSocket.new(ctx) ssl.io = TCPSocket.new(host, port) ... Wed, 24 Jul 2002 13:10:28 +0100 -- Michal Rokos * ossl.c: FIX that enables OSSL module compile on *BSD (sent by Akinori MUSHA) Wed, 24 Jul 2002 12:35:00 +0100 -- Michal Rokos * config.c: changed #value so: value("AAA"), means value(nil, "AAA") Tue, 23 Jul 2002 15:46:17 +0100 -- Michal Rokos bn.c: FIX potencial mem leak when using NUM2INT Tue, 23 Jul 2002 15:10:46 +0100 -- Michal Rokos x509name.c: FIX mem leak in #to_s Wed, 10 Jul 2002 17:36:28 +0100 -- Michal Rokos * x509crl.c: GetX509CRLPtr and DupX509CRLPtr macros introduced and subst for ossl_x509crl_get_X509_CRL Wed, 10 Jul 2002 17:02:00 +0100 -- Michal Rokos * Use OSSL_Warning and OSSL_Debug instead rb_warning where appropriate * x509store.c: Fix lookup CRLs during #verify when CRL is added Tue, 09 Jul 2002 17:17:43 +0100 -- Michal Rokos * Some minor cleanups (bring back RSTRING macro (instead of StringValuePtr) where tested by StringValue) Mon, 1 Jul 2002 15:36:28 +0100 -- Michal Rokos * tc_x509name.rb: NEW (TestCase) * tc_x509req.rb: NEW (TestCase) Mon, 1 Jul 2002 14:04:35 +0100 -- Michal Rokos * tc_x509revoked.rb: NEW (TestCase) Mon, 1 Jul 2002 13:34:38 +0100 -- Michal Rokos * x509crl.c: #next_update=, #set_revoked, #add_revoked fixes * tc_x509crl.rb: NEW (TestCase) Wed, 26 Jun 2002 16:14:42 +0100 -- Michal Rokos * x509name.c: added method #cmp (aka <=>) Wed, 26 Jun 2002 15:28:03 +0100 -- Michal Rokos * x509name.c: port to new Ruby interface, dropped 'self dipathing' (Only allowed param is Array or nil), fixed the reason why TC failed * x509.rb: dropped 'self dispatching' * tc_x509cert.rb: more tests enabled (X509::Name fixed) Tue, 18 Jun 2002 22:43:23 +0200 -- Michal Rokos * ossl.c: fix UTC -> local time conversion * x509cert.c: use X509_time_adj * x509crl.c: ditto. * x509revoked.c: ditto. * x509name.c: hash iterator cleanup * tc_x509cert.rb: NEW (TestCase for X509::Certificate) Fri, 14 Jun 2002 10:32:46 +0200 -- Michal Rokos * x509cert.c: minor cleanups * x509revoked.c: ditto. Thu, 13 Jun 2002 15:15:58 +0200 -- Michal Rokos * ossl.h: Dropped OSSL_Check_Type macro; update related files Thu, 13 Jun 2002 12:33:16 +0200 -- Michal Rokos * config.c: fix build for Windows Thu, 13 Jun 2002 00:05:46 +0200 -- Michal Rokos * x509crl.c: Fix check for X509_CRL_verify retval * x509store.c: Fix mem leak in add_trusted, fix check for X509_verify_cert retval Wed, 12 Jun 2002 22:58:53 +0200 -- Michal Rokos * x509name.c: drop ossl_x509name_get_X509_NAME * x509name.c: introduce GetX509NamePtr; and use it instead ossl_x509name_get_X509_NAME Wed, 12 Jun 2002 22:41:38 +0200 -- Michal Rokos * pkey.c: fix mem. bug in new_from_file Wed, 12 Jun 2002 20:45:32 +0200 -- Michal Rokos * openssl_missing.c: fixup HMAC_CTX_copy * tc_hmac.rb: NEW (TestCase for HMAC) Wed, 12 Jun 2002 20:25:16 +0200 -- Michal Rokos * digest.[ch]: rename ossl_digest_get_EVP_MD to GetDigestPtr; and use where needed Wed, 12 Jun 2002 20:12:13 +0200 -- Michal Rokos * tc_config.rb: NEW (TestCase for Config) Wed, 12 Jun 2002 19:52:20 +0200 -- Michal Rokos * config.c: ported to OpenSSL 0.9.7 interface Wed, 12 Jun 2002 19:05:21 +0200 -- Michal Rokos ALL FILES: change all rb_raise and OSSL_Raise to ossl_raise * ossl.h: drop define OSSL_Raise * cipher.c: disable to call Cipher#final without preceding Cipher#(en|de)crypt Wed, 12 Jun 2002 18:20:57 +0200 -- Michal Rokos * ossl.h: really fixed OSSL_Debug macro * ossl.c: implement part of OSSL_Debug for Windows Wed, 12 Jun 2002 14:12:36 +0200 -- Michal Rokos * tc_cipher.rb: NEW (TestCase for Cipher) * tc_digest.rb: NEW (TestCase for Digest) * digest.c: fix equal when comparing with other kind of Digest Wed, 12 Jun 2002 13:15:40 +0200 -- Michal Rokos * bn.rb: included Comparable module * bn.c: changed # of args for #rand, #pseudo_rand (some are default now) * ossl.h: fixed OSSL_Debug macro Wed, 12 Jun 2002 10:28:55 +0200 -- Michal Rokos * bn.c: fix # of args for mod_* funcs (TestCase is GoodThing(TM) :-)) Wed, 12 Jun 2002 00:45:17 +0200 -- Michal Rokos * bn.c: Fixed buf in #to_s (problem with \0 in bin repr.) * tc_bn.rb: NEW (TestCase for BN) Tue, 11 Jun 2002 16:56:40 +0200 -- Michal Rokos * hmac.c: Fixed bug in #initialize that caused wrong results Tue, 11 Jun 2002 14:10:58 +0200 -- Michal Rokos * hmac.c: Added class methods #digest, #hexdigest Tue, 11 Jun 2002 13:56:24 +0200 -- Michal Rokos * cipher.c: Added #name, #iv_len, #key_len getters Tue, 11 Jun 2002 13:39:45 +0200 -- Michal Rokos * digest.c: Added #size method (return len is in BYTEs) Tue, 11 Jun 2002 15:46:20 +0900 -- GOTOU Yuuzou * ossl.h: remove . Tue, 11 Jun 2002 02:58:24 +0200 -- Michal Rokos * pkey.c: don't segfault when signing with public key - check added Tue, 11 Jun 2002 02:42:25 +0200 -- Michal Rokos * extconf.rb: Check for unistd.h * ssl.c: include is avaible (needed for read(), write()) * ossl.c: drop RTESTs * bn.c: ditto. * pkey.c: ditto. * ossl.c: new debug interface that can be enabled/disabled from Ruby-space via OpenSSL::debug= method * ossl.c: implemented new ossl_raise (for C-space) * ossl.h: implemented new OSSL_Debug (for C-space) Mon, 10 Jun 2002 10:35:56 +0200 -- Michal Rokos * pkey.c: implemented #sign and #verify for PKey * pkey.rb: deleted (funcs implemented in C-space (pkey.c)) * pkey_dsa.c: #sign_digest and #verify_digest renamed to #syssign #sysverify * pkey_rsa.c: implemented RSA_sign, RSA_verify, but commented out until a good way of specifiing digest type will be found Sun, 9 Jun 2002 22:17:13 +0200 -- Michal Rokos * x509store.c: really port to Ruby 1.8 interface :-) * x509store.c: #protect method dropped (useless) Sat, 8 Jun 2002 14:07:27 +0200 -- Michal Rokos * cipher.c: Fix GetCipher - condition (!ciphp || !ciphp->cipher) was too tight for initialize Sat, 8 Jun 2002 13:48:37 +0200 -- Michal Rokos * x509.h: dropped ossl_x509_get_X509(obj) * x509.h: introduced GetX509CertPtr(obj), DupX509CertPtr(obj) with the same semantics as explained for *PKeyPtr * pkcs7.c: use these new funcs * ssl.c: ditto. * x509ext.c: ditto. * x509store.c: ditto. * x509ext.c: fix memory leaking in ExtFactory after GC Sat, 8 Jun 2002 11:54:13 +0200 -- Michal Rokos * pkey.h: dropped ossl_pkey_get_EVP_PKEY, ossl_pkey_get_private_EVP_PKEY * pkey.h: added GetPKeyPtr, GetPrivPKeyPtr, DupPrivPKeyPtr GetPKeyPtr(obj) - gives directly EVP_PKEY* from obj (Doesn't dup it!) GetPrivPKeyPtr(obj) - checkes if obj is is private the rest is the same as for GetPKeyPtr DupPrivPKeyPtr(obj) - like GetPrivPKeyPtr, and adds an reference to make it GCsafe * pkey.c: ossl_pkey_new(EVP_PKEY*) doesn't dup EVP_PKEY* any more, because nobody needed it * pkey_dh.c: ossl_dh_new(EVP_PKEY*) doesn't dup EVP_PKEY* * pkey_dsa.c: ossl_dsa_new(EVP_PKEY*) doesn't dup EVP_PKEY* * pkey_rsa.c: ossl_rsa_new(EVP_PKEY*) doesn't dup EVP_PKEY* * ns_spki.c: move to these new funcs. The benefit is: no malloc and free cycles. * pkcs7.c: ditto. * ssl.c: ditto. * x509cert.c: ditto. * x509crl.c: ditto. * x509req.c: ditto. Fri, 7 Jun 2002 16:59:10 +0200 -- Michal Rokos * pkey.c: new helper func: ossl_pkey_get_private_EVP_PKEY * ns_spki.c: use new helper func * pkcs7.c: ditto. * x509cert.c: ditto. * x509crl.c: ditto. * x509req.c: ditto. Fri, 7 Jun 2002 14:06:48 +0200 -- Michal Rokos * cipher.c: Checks around GetCipher * digest.c: Use Make_Struct instead of Wrap_Struct and OPENSSL_malloc * hmac.c: ditto. * bn.c: Fixed creating new classes from subclasses (WrapXXX(klass,...)) * config.c: ditto. * ns_spki.c: ditto. * pkcs7.c: ditto. * x509.h: C-level class rename: new are cX509Attr, cX509Cert, cX509Ext, cX509ExtFactory, cX509Req and Errors are renamed too. * x509attr.c: ported to Ruby 1.8 interface and fixed new classes creation * x509cert.c: ditto. * x509crl.c: ditto. * x509ext.c: ditto. * x509name.c: ditto. * x509req.c: ditto. * x509revoked.c: ditto. * x509store.c: ditto. Thu, 6 Jun 2002 09:42:00 +0200 -- Michal Rokos * pkey.c: Hopefully corrected nasty GC bug (ossl_pkey_get_EVP_PKEY) Thu, 6 Jun 2002 02:28:25 +0200 -- Michal Rokos * ssl.h: NEW (bits from ossl.h) * ossl.h: is now tidy * pkey*.[ch]: big internal rewrite and cleanup for (DH|DSA|RSA) as well as for PKey (EVP_PKEY is now wrapped - so no extra structs!) NEEDS TO BE TESTED!!! Wed, 5 Jun 2002 12:17:18 +0200 -- Michal Rokos * rand.h: NEW (bits from ossl.h) * rand.c: port & cleanup Wed, 5 Jun 2002 11:56:53 +0200 -- Michal Rokos * pkcs7.h: NEW (bits from ossl.h) * pkcs7.c: cleanup & port to Ruby 1.8 Wed, 5 Jun 2002 10:46:17 +0200 -- Michal Rokos * ns_spki.h: NEW (bits from ossl.h) * ns_spki.c: cleanup & port to Ruby 1.8 interface Wed, 5 Jun 2002 10:14:54 +0200 -- Michal Rokos * hmac.h: NEW (bits from ossl.h) * ossl.c: helper function 'string2hex' * hmac.c: use 'string2hex' * digest.c: ditto. * hmac.c: cleanup * hmac.c: renamed #hmac to #digest and #hexhmac to #hexdigest Tue, 4 Jun 2002 23:26:07 +0200 -- Michal Rokos * bn.c: cleanup (remove oddly initialized vars) * config.c: ditto. * cipher.c: ditto. * digest.c: ditto. Tue, 4 Jun 2002 21:49:06 +0200 -- Michal Rokos * ossl.c: test Qtrue/Qfalse with RTEST * bn.c: use StringValue instead of rb_String * cipher.c: ditto. * config.c: ditto. * bn.h: remove added MACROs until somebody wants them * cipher.h: ditto. * digest.h: ditto. * config.c: renamed #get_value to #value, and #get_section to #section * config.h: NEW (moved bits from ossl.h) Tue, 4 Jun 2002 20:10:00 +0200 -- Michal Rokos * cipher.c: HACK: not to coredump when calling #update without preceding #(en|de)crypt Tue, 4 Jun 2002 19:17:55 +0200 -- Michal Rokos * cipher.c: use factory style (as for Digest), adapted to Ruby 1.8 interface * cipher.c: Method name 'cipher' changed to 'final' * cipher.rb: NEW (added predefined Cipher classes there) Tue, 4 Jun 2002 17:00:36 +0200 -- Michal Rokos * README: Make a note that it's not up-to-date * ossl.h: Corrected order of headers to detect Ruby < 1.7.2 and OpenSSL < 0.9.7 correctly Tue, 4 Jun 2002 15:51:57 +0200 -- Michal Rokos * cipher.[ch]: dropped public func: get_NID (because nobody needed this) * digest.[ch]: ditto. Tue, 4 Jun 2002 14:20:38 +0200 -- Michal Rokos * digest.rb: fix singletons (hex)digest (Don't call super, call Digest::(hex)digest directly) Tue, 4 Jun 2002 08:53:59 +0200 -- Michal Rokos * cipher.c: Wierd class name ('ANY') renamed to Cipher * digest.c: Rename ANY -> Digest * pkey.c: Rename ANY -> PKey * pkey.rb: Use Digest instead of ANY Tue, 4 Jun 2002 08:48:05 +0200 -- Michal Rokos * OSSL2 commited to CVS Mon, 3 Jun 2002 21:14:34 +0200 -- Michal Rokos * digest.c: new methods added to have the same protocol as Ruby's classes Digest::digest(name, data) Digest::hexdigest(name, data) d.clone() d.==(other) * digest.rb: rewritten to eval Mon, 3 Jun 2002 17:23:10 +0200 -- Michal Rokos * digest.rb: NEW (holds predefined Digest classes) * digest.c: redesigned (introduced runtime loading Digest algs from OpenSSL) * digest.c: ported to Ruby 1.8 interface * openssl.rb: added require for digest.rb Mon, 3 Jun 2002 13:19:34 +0200 -- Michal Rokos * x509.c renamed to x509cert.c * x509.h: NEW (moved all bits related to x509 there) * x509.c: NEW (moved init from ossl.c for all x509 related classes there) Mon, 3 Jun 2002 13:03:08 +0200 -- Michal Rokos * Moved all Error classes under eOSSLError Mon, 3 Jun 2002 12:50:57 +0200 -- Michal Rokos * cipher.h: NEW (moved bits from ossl.h) * cipher.h: new MACROs: OSSLCipherValue OSSLCipherValuePtr Mon, 3 Jun 2002 11:27:46 +0200 -- Michal Rokos * digest.h: NEW (moved bits from ossl.h there) * digest.h: new MACROs: OSSLWrapDigest OSSLGetDigest OSSLDigestValue Mon, 3 Jun 2002 10:55:44 +0200 -- Michal Rokos * bn.c: added methods mod_add, mod_sub, mod_sqr Mon, 3 Jun 2002 10:46:03 +0200 -- Michal Rokos * bn.c: ported to Ruby 1.8 interface (allocate, enable_super) Mon, 3 Jun 2002 10:22:17 +0200 -- Michal Rokos * moved from #ifdef, #ifndef to #if defined() * renamed all Init_[^o] to Init_ossl_ Mon, 3 Jun 2002 09:46:43 +0200 -- Michal Rokos * bn.h: NEW (all .c will have it's .h to lower ossl.h size and increase modularity) * bn.h: new MACROs introduced: OSSLWrapBN - creates instance of BN (DOESN'T DUP THE ARG) OSSLGetBN - gets BIGNUM with check (DOESN'T DUP THE BIGNUM FROM OBJ) OSSLBNValue - alias to OSSL_Check_Instance(obj, cBN) OSSLBNValuePtr - alias to ossl_bn_get_BIGNUM (DUPS THE BIGNUM FROM OBJ) Mon, 3 Jun 2002 01:17:07 +0200 -- Michal Rokos * dsa.c: removed MS_CALLBACK * dh.c: ditto. * rsa.c: ditto. * ssl.c: ditto. * ossl.c: introduced generic error-class: OpenSSLError * bn.c: initialize moved from Ruby-space to C-space * bn.c: reordered method defs by 'man bn' * bn.c: speed up math. ops by 1 global BN_CTX (dropped all local BN_CTXes and BN_CTX_inits) Sat, 1 Jun 2002 13:38:03 +0200 -- Michal Rokos * ossl.h: OSSL2 cannot be compiled if Ruby < 1.7.2 and OpenSSL < 0.9.7 Sat, 1 Jun 2002 11:49:40 +0200 -- Michal Rokos * Dropped all #if !defined(NO_*) dependences (stayed just OPENSSL_NO_*) * Dropped all checks for OPENSSL_VERSION_NUMBER Sat, 1 Jun 2002 11:25:32 +0200 -- Michal Rokos * bn.rb: NEW * pkey.rb: NEW * ssl.rb: NEW * x509.rb: NEW * openssl.rb: splitted to openssl/bn.rb, openssl/pkey.rb, openssl/ssl.rb, and openssl/x509.rb * lib/*: added proped descriptions * bn.rb: simplified BN#initialize (TODO: move it to C-space) Sat, 1 Jun 2002 00:40:59 +0200 -- Michal Rokos * Started work on OSSL2 (Starting version = CVS 2002/04/07) OSSL2 will support only upcomming Ruby 1.8 and OpenSSL 0.9.7.