In Files

  • openssl/lib/openssl/bn.rb
  • openssl/lib/openssl/cipher.rb
  • openssl/lib/openssl/digest.rb
  • openssl/lib/openssl/ssl.rb
  • openssl/lib/openssl/x509.rb
  • openssl/ossl.c
  • openssl/ossl_asn1.c
  • openssl/ossl_bn.c
  • openssl/ossl_cipher.c
  • openssl/ossl_digest.c
  • openssl/ossl_hmac.c
  • openssl/ossl_pkey.c
  • openssl/ossl_pkey_dh.c
  • openssl/ossl_pkey_dsa.c
  • openssl/ossl_pkey_ec.c
  • openssl/ossl_pkey_rsa.c
  • openssl/ossl_rand.c
  • openssl/ossl_ssl.c
  • openssl/ossl_ssl_session.c

Class/Module Index [+]

Quicksearch

OpenSSL

Should we care what if somebody require this file directly?

require 'openssl'

Should we care what if somebody require this file directly?

require 'openssl'

Should we care what if somebody require this file directly?

require 'openssl'

OSSL library init

let rdoc know about mOSSL

let rdoc know about mOSSL

let rdoc know about mOSSL

let rdoc know about mOSSL

let rdoc know about mOSSL

let rdoc know about mOSSL

let rdoc know about mOSSL and mPKey

let rdoc know about mOSSL and mPKey

let rdoc know about mOSSL and mPKey

let rdoc know about mOSSL

let rdoc know about mOSSL

let rdoc know about mOSSL

Public Class Methods

debug → true | false click to toggle source
 
               static VALUE
ossl_debug_get(VALUE self)
{
    return dOSSL;
}
            
debug = boolean → boolean click to toggle source

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

 
               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;
}
            
errors → [String...] click to toggle source

See any remaining errors held in queue.

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

 
               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;
}