Module: OpenSSL

Defined in:
lib/openssl/bn.rb,
lib/openssl/pkcs7.rb,
lib/openssl/cipher.rb,
lib/openssl/config.rb,
lib/openssl/digest.rb,
lib/openssl/buffering.rb,
lib/openssl/ssl-internal.rb,
lib/openssl/x509-internal.rb,
ext/rubysl/openssl/ossl.c,
ext/rubysl/openssl/ossl_bn.c,
ext/rubysl/openssl/ossl_ssl.c,
ext/rubysl/openssl/ossl_asn1.c,
ext/rubysl/openssl/ossl_hmac.c,
ext/rubysl/openssl/ossl_pkey.c,
ext/rubysl/openssl/ossl_rand.c,
ext/rubysl/openssl/ossl_cipher.c,
ext/rubysl/openssl/ossl_digest.c,
ext/rubysl/openssl/ossl_pkey_dh.c,
ext/rubysl/openssl/ossl_pkey_ec.c,
ext/rubysl/openssl/ossl_pkey_dsa.c,
ext/rubysl/openssl/ossl_pkey_rsa.c,
ext/rubysl/openssl/ossl_ssl_session.c

Overview

$RCSfile$ – Ruby-space definitions that completes C-space funcs for X509 and subclasses

Info

'OpenSSL for Ruby 2' project
Copyright (C) 2002  Michal Rokos <[email protected]>
All rights reserved.

Licence

This program is licenced under the same licence as Ruby.
(See the file 'LICENCE'.)

Version

$Id$

Defined Under Namespace

Modules: ASN1, Buffering, Netscape, OCSP, PKCS5, PKey, Random, SSL, X509 Classes: BN, BNError, Cipher, Config, ConfigError, Digest, Engine, HMAC, HMACError, OpenSSLError, PKCS12, PKCS7

Constant Summary collapse

VERSION =

Constants

rb_str_new2(OSSL_VERSION)
OPENSSL_VERSION =
rb_str_new2(OPENSSL_VERSION_TEXT)
OPENSSL_VERSION_NUMBER =
INT2NUM(OPENSSL_VERSION_NUMBER)

Class Method Summary collapse

Class Method Details

.debugObject



378
379
380
381
382
# File 'ext/rubysl/openssl/ossl.c', line 378

static VALUE
ossl_debug_get(VALUE self)
{
    return dOSSL;
}

.debug=(boolean) ⇒ Boolean

Turns on or off CRYPTO_MEM_CHECK. Also shows some debugging message on stderr.

Returns:

  • (Boolean)


391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
# File 'ext/rubysl/openssl/ossl.c', line 391

static VALUE
ossl_debug_set(VALUE self, VALUE val)
{
    VALUE old = dOSSL;
    dOSSL = val;
	
    if (old != dOSSL) {
	if (dOSSL == Qtrue) {
	    CRYPTO_mem_ctrl(CRYPTO_MEM_CHECK_ON);
	    fprintf(stderr, "OSSL_DEBUG: IS NOW ON!\n");
	} else if (old == Qtrue) {
	    CRYPTO_mem_ctrl(CRYPTO_MEM_CHECK_OFF);
	    fprintf(stderr, "OSSL_DEBUG: IS NOW OFF!\n");
	}
    }
    return val;
}

.errorsArray

See any remaining errors held in queue.

Any errors you see here are probably due to a bug in ruby’s OpenSSL implementation.

Returns:

  • (Array)


339
340
341
342
343
344
345
346
347
348
349
350
351
# File 'ext/rubysl/openssl/ossl.c', line 339

VALUE
ossl_get_errors()
{
    VALUE ary;
    long e;

    ary = rb_ary_new();
    while ((e = ERR_get_error()) != 0){
        rb_ary_push(ary, rb_str_new2(ERR_error_string(e, NULL)));
    }

    return ary;
}