#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"


Go to the source code of this file.
Data Structures | |
| struct | ossl_verify_cb_args |
Defines | |
| #define | _OSSL_H_ |
| #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 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)
| #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)
| #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()) |
| #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_Warning rb_warning |
| 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().
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().
Definition at line 254 of file ossl.c.
References rb_funcall(), and StringValue.
Referenced by obj_to_asn1derstr(), and ossl_to_der_if_possible().
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 | ) |
Definition at line 50 of file ossl.c.
References Check_Type, cX509Cert, DupX509CertPtr(), eOSSLError, NULL, ossl_raise(), RARRAY_LEN, rb_ary_entry(), rb_obj_is_kind_of(), STACK_OF(), and T_ARRAY.
Referenced by ossl_config_get_section(), ossl_pkcs12_initialize(), ossl_pkcs12_s_create(), ossl_pkcs7_get_recipient(), ossl_pkcs7_get_signer(), ossl_pkcs7_s_encrypt(), ossl_pkcs7_s_sign(), ossl_pkcs7_set_certificates(), ossl_pkcs7_set_crls(), ossl_pkcs7_verify(), ossl_ssl_get_peer_cert_chain(), ossl_sslctx_get_ciphers(), ossl_x509stctx_get_chain(), ossl_x509stctx_initialize(), and STACK_OF().
| 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().
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().
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().
Definition at line 191 of file ossl.c.
Referenced by ossl_ssl_verify_callback(), ossl_x509stctx_verify(), and ossl_x509store_set_vfy_cb().