Ruby 1.9.2p136(2010-12-25revision30365)

- Main Page
- Modules
- Data Structures
- Files

- File List
- Globals

Data Structures | Defines | Functions | Variables

# ext/openssl/ossl.h File Reference

`#include <ruby.h>`
`#include <ruby/io.h>`
`#include <openssl/opensslv.h>`
`#include <errno.h>`
`#include <openssl/err.h>`
`#include <openssl/asn1_mac.h>`
`#include <openssl/x509v3.h>`
`#include <openssl/ssl.h>`
`#include <openssl/pkcs12.h>`
`#include <openssl/pkcs7.h>`
`#include <openssl/hmac.h>`
`#include <openssl/rand.h>`
`#include <openssl/conf.h>`
`#include <openssl/conf_api.h>`
`#include "openssl_missing.h"`
`#include "ruby_missing.h"`
`#include "ossl_asn1.h"`
`#include "ossl_bio.h"`
`#include "ossl_bn.h"`
`#include "ossl_cipher.h"`
`#include "ossl_config.h"`
`#include "ossl_digest.h"`
`#include "ossl_hmac.h"`
`#include "ossl_ns_spki.h"`
`#include "ossl_ocsp.h"`
`#include "ossl_pkcs12.h"`
`#include "ossl_pkcs7.h"`
`#include "ossl_pkcs5.h"`
`#include "ossl_pkey.h"`
`#include "ossl_rand.h"`
`#include "ossl_ssl.h"`
`#include "ossl_version.h"`
`#include "ossl_x509.h"`
`#include "ossl_engine.h"`
Include dependency graph for ossl.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

## Data Structures
struct | ossl_verify_cb_args
## Defines
#define | assert(condition)
#define | OSSL_Check_Kind(obj, klass)
#define | OSSL_Check_Instance(obj, klass)
#define | OSSL_Check_Same_Class(obj1, obj2)
#define | ossl_str_adjust(str, p)
#define | OSSL_ErrMsg() ERR_reason_error_string(ERR_get_error())
#define | OSSL_Debug ossl_debug
#define | OSSL_Warning rb_warning
#define | OSSL_Warn rb_warn
## Functions
int | string2hex (const unsigned char *, int, char **, int *)
| STACK_OF (X509)*ossl_x509_ary2sk0(VALUE)
int *VALUE | ossl_x509_sk2ary (STACK_OF(X509)*certs)
VALUE | ossl_x509crl_sk2ary (STACK_OF(X509_CRL)*crl)
VALUE | ossl_buf2str (char *buf, int len)
int | ossl_pem_passwd_cb (char *, int, int, void *)
| NORETURN (void ossl_raise(VALUE, const char *,...))
VALUE | ossl_exc_new (VALUE, const char *,...)
VALUE | ossl_call_verify_cb_proc (struct ossl_verify_cb_args *)
int | ossl_verify_cb (int, X509_STORE_CTX *)
VALUE | ossl_to_der (VALUE)
VALUE | ossl_to_der_if_possible (VALUE)
void | ossl_debug (const char *,...)
void | Init_openssl (void)
## Variables
VALUE | mOSSL
VALUE | eOSSLError
int | ossl_verify_cb_idx
ID | ossl_s_to_der
VALUE | dOSSL

## Define Documentation

#define assert | ( |  | condition | ) |

Definition at line 44 of file ossl.h.

Referenced by ary_make_partial(), ary_make_shared(), ary_resize_capa(), bigadd_core(), bigadd_int(), bigmul0(), bigmul1_balance(), bigsub_core(), bytestring_append(), bytestring_extend(), f_complex_new1(), f_complex_new2(), f_complex_new_bang1(), f_complex_new_bang2(), f_complex_polar(), f_rational_new1(), f_rational_new2(), f_rational_new_bang2(), f_rational_new_no_reduce1(), f_rational_new_no_reduce2(), fbuffer_alloc_with_length(), Init_Complex(), Init_Rational(), nkf_buf_at(), nkf_buf_pop(), ossl_asn1prim_to_der(), ossl_cipher_final(), ossl_cipher_update(), ossl_pkey_sign(), rb_ary_shift(), rb_ary_sort_bang(), rb_str_new_frozen(), RUBY_ALIAS_FUNCTION(), SHA256_End(), SHA256_Final(), SHA256_Update(), SHA384_End(), SHA384_Final(), SHA512_End(), SHA512_Final(), SHA512_Update(), str_replace(), and syck_yaml2byte_handler().

#define OSSL_Check_Instance | ( |  | obj,
|  |  | klass
| ) |  |

Value:

    do {\
      if (!rb_obj_is_instance_of(obj, klass)) {\
        ossl_raise(rb_eTypeError, "wrong argument (%s)! (Expected instance of %s)",\
                   rb_obj_classname(obj), rb_class2name(klass));\
      }\
    } while (0)

Definition at line 93 of file ossl.h.

#define OSSL_Check_Kind | ( |  | obj,
|  |  | klass
| ) |  |

Value:

    do {\
      if (!rb_obj_is_kind_of(obj, klass)) {\
        ossl_raise(rb_eTypeError, "wrong argument (%s)! (Expected kind of %s)",\
                   rb_obj_classname(obj), rb_class2name(klass));\
      }\
    } while (0)

Definition at line 86 of file ossl.h.

Referenced by DupConfigPtr(), ossl_ssl_initialize(), ossl_x509_set_extensions(), ossl_x509crl_set_extensions(), ossl_x509crl_set_revoked(), ossl_x509req_set_attributes(), ossl_x509revoked_set_extensions(), and ossl_x509stctx_clear_ptr().

#define OSSL_Check_Same_Class | ( |  | obj1,
|  |  | obj2
| ) |  |

Value:

    do {\
      if (!rb_obj_is_instance_of(obj1, rb_obj_class(obj2))) {\
        ossl_raise(rb_eTypeError, "wrong argument type");\
      }\
    } while (0)

Definition at line 100 of file ossl.h.

#define OSSL_Debug ossl_debug

Definition at line 193 of file ossl.h.

Referenced by hmac_final(), ossl_config_get_section(), ossl_pkcs7_get_signer(), ossl_spki_get_challenge(), ossl_sslctx_session_get_cb(), ossl_sslctx_session_new_cb(), ossl_sslctx_session_remove_cb(), ossl_sslctx_setup(), ossl_x509crl_get_extensions(), ossl_x509crl_get_revoked(), ossl_x509name_to_a(), ossl_x509req_get_attributes(), ossl_x509revoked_get_extensions(), and ossl_x509stctx_get_chain().

#define OSSL_ErrMsg | ( |  | ) | ERR_reason_error_string(ERR_get_error())

Definition at line 143 of file ossl.h.

Referenced by ossl_x509_check_private_key().

#define ossl_str_adjust | ( |  | str,
|  |  | p
| ) |  |

Value:

    do{\
        int len = RSTRING_LEN(str);\
        int newlen = (p) - (unsigned char*)RSTRING_PTR(str);\
        assert(newlen <= len);\
        rb_str_set_len(str, newlen);\
    }while(0)

Definition at line 127 of file ossl.h.

Referenced by ossl_asn1cons_to_der(), ossl_asn1data_to_der(), ossl_dh_to_der(), ossl_dsa_to_der(), ossl_pkcs12_to_der(), ossl_pkcs7_to_der(), ossl_rsa_to_der(), ossl_spki_to_der(), ossl_x509_to_der(), ossl_x509attr_get_value(), ossl_x509ext_to_der(), ossl_x509name_to_der(), and ossl_x509req_to_der().

#define OSSL_Warn rb_warn

Definition at line 195 of file ossl.h.

#define OSSL_Warning rb_warning

Definition at line 194 of file ossl.h.

Referenced by ossl_x509_check_private_key().

## Function Documentation

void Init_openssl | ( | void |  | ) |

Definition at line 413 of file ossl.c.

References Init_ossl_asn1(), Init_ossl_bn(), Init_ossl_cipher(), Init_ossl_config(), Init_ossl_digest(), Init_ossl_engine(), Init_ossl_hmac(), Init_ossl_ns_spki(), Init_ossl_ocsp(), Init_ossl_pkcs12(), Init_ossl_pkcs5(), Init_ossl_pkcs7(), Init_ossl_pkey(), Init_ossl_rand(), Init_ossl_ssl(), Init_ossl_x509(), INT2NUM(), ossl_debug_get(), ossl_debug_set(), ossl_get_errors(), ossl_raise(), OSSL_VERSION, Qfalse, rb_define_class_under(), rb_define_const(), rb_define_module(), rb_define_module_function(), rb_eStandardError, rb_intern, and rb_str_new2().

NORETURN | ( | void | ossl_raiseVALUE, const char *,... | ) |

VALUE ossl_buf2str | ( | char * | buf,
|  | int | len
| ) |  |

Definition at line 128 of file ossl.c.

References _, NIL_P, ossl_str_new(), rb_jump_tag(), rb_protect(), and RSTRING_PTR.

Referenced by ossl_asn1prim_to_der(), ossl_bn_to_s(), ossl_hmac_digest(), ossl_hmac_hexdigest(), ossl_hmac_s_hexdigest(), and ossl_spki_to_pem().

VALUE ossl_call_verify_cb_proc | ( | struct ossl_verify_cb_args * |  | ) |

Definition at line 194 of file ossl.c.

References ossl_verify_cb_args::preverify_ok, ossl_verify_cb_args::proc, rb_funcall(), rb_intern, and ossl_verify_cb_args::store_ctx.

Referenced by ossl_verify_cb().

void ossl_debug | ( | const char * | ,
|  |  | ...
| ) |  |

Definition at line 360 of file ossl.c.

References Qtrue.

VALUE ossl_exc_new | ( | VALUE | ,
|  | const char * | ,
|  |  | ...
| ) |  |

Definition at line 321 of file ossl.c.

References err, and ossl_make_error().

Referenced by read_would_block(), and write_would_block().

int ossl_pem_passwd_cb | ( | char * | ,
|  | int | ,
|  | int | ,
|  | void * |
| ) |  |

Definition at line 156 of file ossl.c.

References len, ossl_pem_passwd_cb0(), PEM_def_callback(), Qfalse, Qtrue, rb_block_given_p(), rb_protect(), rb_warning(), RSTRING_LEN, and RSTRING_PTR.

Referenced by ossl_dsa_export(), ossl_dsa_initialize(), ossl_pkey_new_from_file(), ossl_rsa_export(), and ossl_rsa_initialize().

VALUE ossl_to_der | ( | VALUE |  | ) |

Definition at line 254 of file ossl.c.

References rb_funcall(), and StringValue.

Referenced by obj_to_asn1derstr(), and ossl_to_der_if_possible().

VALUE ossl_to_der_if_possible | ( | VALUE |  | ) |

Definition at line 265 of file ossl.c.

References ossl_to_der(), and rb_respond_to().

Referenced by join_der_i(), ossl_asn1_decode(), ossl_asn1_decode_all(), ossl_asn1_traverse(), ossl_dh_initialize(), ossl_dsa_initialize(), ossl_pkcs7_initialize(), ossl_rsa_initialize(), ossl_x509_initialize(), ossl_x509attr_initialize(), ossl_x509crl_initialize(), ossl_x509ext_initialize(), ossl_x509ext_set_value(), ossl_x509name_initialize(), and ossl_x509req_initialize().

int ossl_verify_cb | ( | int | ,
|  | X509_STORE_CTX * |
| ) |  |

Definition at line 201 of file ossl.c.

References NIL_P, ossl_call_verify_cb_proc(), ossl_x509stctx_clear_ptr(), ossl_x509stctx_new(), ossl_verify_cb_args::preverify_ok, ossl_verify_cb_args::proc, Qfalse, Qtrue, rb_ensure(), rb_protect(), ossl_verify_cb_args::store_ctx, and X509_STORE_get_ex_data().

Referenced by ossl_ssl_verify_callback(), and ossl_x509store_initialize().

int* VALUE ossl_x509_sk2ary | ( | STACK_OF(X509)* | certs | ) |

Referenced by ossl_pkcs12_initialize(), and ossl_pkcs7_get_certificates().

VALUE ossl_x509crl_sk2ary | ( | STACK_OF(X509_CRL)* | crl | ) |

Referenced by ossl_pkcs7_get_crls().

STACK_OF | ( | X509 |  | ) |

int string2hex | ( | const unsigned char * | ,
|  | int | ,
|  | char ** | ,
|  | int * |
| ) |  |

Definition at line 18 of file ossl.c.

References len.

Referenced by ossl_hmac_hexdigest(), and ossl_hmac_s_hexdigest().

## Variable Documentation

VALUE dOSSL

Definition at line 356 of file ossl.c.

Referenced by ossl_debug_get(), ossl_debug_set(), and ossl_make_error().

VALUE eOSSLError

Definition at line 246 of file ossl.c.

Referenced by asn1integer_to_num(), Init_ossl_asn1(), Init_ossl_cipher(), Init_ossl_config(), Init_ossl_digest(), Init_ossl_hmac(), Init_ossl_ns_spki(), Init_ossl_pkcs12(), Init_ossl_pkcs5(), Init_ossl_pkcs7(), Init_ossl_pkey(), Init_ossl_rand(), Init_ossl_ssl(), Init_ossl_ssl_session(), Init_ossl_x509attr(), Init_ossl_x509cert(), Init_ossl_x509crl(), Init_ossl_x509ext(), Init_ossl_x509name(), Init_ossl_x509req(), Init_ossl_x509revoked(), Init_ossl_x509store(), num_to_asn1integer(), ossl_obj2bio(), and STACK_OF().

VALUE mOSSL

Definition at line 241 of file ossl.c.

Referenced by Init_ossl_asn1(), Init_ossl_cipher(), Init_ossl_config(), Init_ossl_dh(), Init_ossl_digest(), Init_ossl_dsa(), Init_ossl_hmac(), Init_ossl_ns_spki(), Init_ossl_pkcs12(), Init_ossl_pkcs5(), Init_ossl_pkcs7(), Init_ossl_pkey(), Init_ossl_rand(), Init_ossl_rsa(), Init_ossl_ssl(), Init_ossl_ssl_session(), and Init_ossl_x509().

ID ossl_s_to_der

Definition at line 251 of file ossl.c.

int ossl_verify_cb_idx

Definition at line 191 of file ossl.c.

Referenced by ossl_ssl_verify_callback(), ossl_x509stctx_verify(), and ossl_x509store_set_vfy_cb().