Ruby
2.1.10p492(2016-04-01revision54464)
|
#include "ossl.h"
Go to the source code of this file.
Macros | |
#define | numberof(ary) (int)(sizeof(ary)/sizeof((ary)[0])) |
#define | TO_SOCKET(s) (s) |
#define | ossl_sslctx_set_cert(o, v) rb_iv_set((o),"@cert",(v)) |
#define | ossl_sslctx_set_key(o, v) rb_iv_set((o),"@key",(v)) |
#define | ossl_sslctx_set_client_ca(o, v) rb_iv_set((o),"@client_ca",(v)) |
#define | ossl_sslctx_set_ca_file(o, v) rb_iv_set((o),"@ca_file",(v)) |
#define | ossl_sslctx_set_ca_path(o, v) rb_iv_set((o),"@ca_path",(v)) |
#define | ossl_sslctx_set_timeout(o, v) rb_iv_set((o),"@timeout",(v)) |
#define | ossl_sslctx_set_verify_mode(o, v) rb_iv_set((o),"@verify_mode",(v)) |
#define | ossl_sslctx_set_verify_dep(o, v) rb_iv_set((o),"@verify_depth",(v)) |
#define | ossl_sslctx_set_verify_cb(o, v) rb_iv_set((o),"@verify_callback",(v)) |
#define | ossl_sslctx_set_options(o, v) rb_iv_set((o),"@options",(v)) |
#define | ossl_sslctx_set_cert_store(o, v) rb_iv_set((o),"@cert_store",(v)) |
#define | ossl_sslctx_set_extra_cert(o, v) rb_iv_set((o),"@extra_chain_cert",(v)) |
#define | ossl_sslctx_set_client_cert_cb(o, v) rb_iv_set((o),"@client_cert_cb",(v)) |
#define | ossl_sslctx_set_tmp_dh_cb(o, v) rb_iv_set((o),"@tmp_dh_callback",(v)) |
#define | ossl_sslctx_set_sess_id_ctx(o, v) rb_iv_set((o),"@session_id_context",(v)) |
#define | ossl_sslctx_get_cert(o) rb_iv_get((o),"@cert") |
#define | ossl_sslctx_get_key(o) rb_iv_get((o),"@key") |
#define | ossl_sslctx_get_client_ca(o) rb_iv_get((o),"@client_ca") |
#define | ossl_sslctx_get_ca_file(o) rb_iv_get((o),"@ca_file") |
#define | ossl_sslctx_get_ca_path(o) rb_iv_get((o),"@ca_path") |
#define | ossl_sslctx_get_timeout(o) rb_iv_get((o),"@timeout") |
#define | ossl_sslctx_get_verify_mode(o) rb_iv_get((o),"@verify_mode") |
#define | ossl_sslctx_get_verify_dep(o) rb_iv_get((o),"@verify_depth") |
#define | ossl_sslctx_get_verify_cb(o) rb_iv_get((o),"@verify_callback") |
#define | ossl_sslctx_get_options(o) rb_iv_get((o),"@options") |
#define | ossl_sslctx_get_cert_store(o) rb_iv_get((o),"@cert_store") |
#define | ossl_sslctx_get_extra_cert(o) rb_iv_get((o),"@extra_chain_cert") |
#define | ossl_sslctx_get_client_cert_cb(o) rb_iv_get((o),"@client_cert_cb") |
#define | ossl_sslctx_get_tmp_dh_cb(o) rb_iv_get((o),"@tmp_dh_callback") |
#define | ossl_sslctx_get_sess_id_ctx(o) rb_iv_get((o),"@session_id_context") |
#define | ossl_ssl_get_io(o) rb_iv_get((o),"@io") |
#define | ossl_ssl_get_ctx(o) rb_iv_get((o),"@context") |
#define | ossl_ssl_get_sync_close(o) rb_iv_get((o),"@sync_close") |
#define | ossl_ssl_get_x509(o) rb_iv_get((o),"@x509") |
#define | ossl_ssl_get_key(o) rb_iv_get((o),"@key") |
#define | ossl_ssl_get_tmp_dh(o) rb_iv_get((o),"@tmp_dh") |
#define | ossl_ssl_set_io(o, v) rb_iv_set((o),"@io",(v)) |
#define | ossl_ssl_set_ctx(o, v) rb_iv_set((o),"@context",(v)) |
#define | ossl_ssl_set_sync_close(o, v) rb_iv_set((o),"@sync_close",(v)) |
#define | ossl_ssl_set_x509(o, v) rb_iv_set((o),"@x509",(v)) |
#define | ossl_ssl_set_key(o, v) rb_iv_set((o),"@key",(v)) |
#define | ossl_ssl_set_tmp_dh(o, v) rb_iv_set((o),"@tmp_dh",(v)) |
#define | OSSL_SSL_METHOD_ENTRY(name) { #name, (SSL_METHOD *(*)(void))name##_method } |
#define | ssl_get_error(ssl, ret) SSL_get_error((ssl), (ret)) |
#define | ossl_ssl_data_get_struct(v, ssl) |
#define | ossl_ssl_def_const(x) rb_define_const(mSSL, #x, INT2NUM(SSL_##x)) |
Variables | |
VALUE | mSSL |
VALUE | eSSLError |
VALUE | cSSLContext |
VALUE | cSSLSocket |
static VALUE | eSSLErrorWaitReadable |
static VALUE | eSSLErrorWaitWritable |
static const char * | ossl_sslctx_attrs [] |
static const char * | ossl_ssl_attr_readers [] = { "io", "context", } |
static const char * | ossl_ssl_attrs [] |
ID | ID_callback_state |
static VALUE | sym_exception |
struct { | |
const char * name | |
SSL_METHOD *(* func )(void) | |
} | ossl_ssl_method_tab [] |
int | ossl_ssl_ex_vcb_idx |
int | ossl_ssl_ex_store_p |
int | ossl_ssl_ex_ptr_idx |
int | ossl_ssl_ex_client_cert_cb_idx |
int | ossl_ssl_ex_tmp_dh_callback_idx |
static | VALUE |
SSL_CTX * | ctx |
x509 = DupX509CertPtr(i) | |
return | i |
Definition at line 19 of file ossl_ssl.c.
Referenced by Init_ossl_ssl(), ossl_sslctx_initialize(), and ossl_sslctx_set_ssl_version().
#define ossl_ssl_data_get_struct | ( | v, | |
ssl | |||
) |
Definition at line 1248 of file ossl_ssl.c.
Referenced by ossl_ssl_get_cert(), ossl_ssl_get_cipher(), ossl_ssl_get_client_ca_list(), ossl_ssl_get_peer_cert(), ossl_ssl_get_peer_cert_chain(), ossl_ssl_get_state(), ossl_ssl_get_verify_result(), ossl_ssl_get_version(), ossl_ssl_pending(), ossl_ssl_session_reused(), ossl_ssl_set_session(), and ossl_start_ssl().
#define ossl_ssl_def_const | ( | x | ) | rb_define_const(mSSL, #x, INT2NUM(SSL_##x)) |
Referenced by Init_ossl_ssl().
#define ossl_ssl_get_ctx | ( | o | ) | rb_iv_get((o),"@context") |
Definition at line 83 of file ossl_ssl.c.
Referenced by ossl_ssl_setup().
#define ossl_ssl_get_io | ( | o | ) | rb_iv_get((o),"@io") |
Definition at line 82 of file ossl_ssl.c.
Referenced by ossl_ssl_close(), ossl_ssl_read_internal(), ossl_ssl_setup(), ossl_ssl_write_internal(), and ossl_start_ssl().
#define ossl_ssl_get_key | ( | o | ) | rb_iv_get((o),"@key") |
Definition at line 86 of file ossl_ssl.c.
Referenced by ossl_client_cert_cb().
#define ossl_ssl_get_sync_close | ( | o | ) | rb_iv_get((o),"@sync_close") |
Definition at line 84 of file ossl_ssl.c.
Referenced by ossl_ssl_close().
#define ossl_ssl_get_tmp_dh | ( | o | ) | rb_iv_get((o),"@tmp_dh") |
Definition at line 87 of file ossl_ssl.c.
Referenced by ossl_tmp_dh_callback().
#define ossl_ssl_get_x509 | ( | o | ) | rb_iv_get((o),"@x509") |
Definition at line 85 of file ossl_ssl.c.
Referenced by ossl_client_cert_cb().
Definition at line 90 of file ossl_ssl.c.
Referenced by ossl_ssl_initialize().
Definition at line 89 of file ossl_ssl.c.
Referenced by ossl_ssl_initialize().
Definition at line 93 of file ossl_ssl.c.
Referenced by ossl_call_client_cert_cb().
Definition at line 91 of file ossl_ssl.c.
Referenced by ossl_ssl_initialize().
Definition at line 94 of file ossl_ssl.c.
Referenced by ossl_call_tmp_dh_callback().
Definition at line 92 of file ossl_ssl.c.
Referenced by ossl_call_client_cert_cb().
#define ossl_sslctx_get_ca_file | ( | o | ) | rb_iv_get((o),"@ca_file") |
Definition at line 54 of file ossl_ssl.c.
Referenced by ossl_sslctx_setup().
#define ossl_sslctx_get_ca_path | ( | o | ) | rb_iv_get((o),"@ca_path") |
Definition at line 55 of file ossl_ssl.c.
Referenced by ossl_sslctx_setup().
#define ossl_sslctx_get_cert | ( | o | ) | rb_iv_get((o),"@cert") |
Definition at line 51 of file ossl_ssl.c.
Referenced by ossl_sslctx_setup().
#define ossl_sslctx_get_cert_store | ( | o | ) | rb_iv_get((o),"@cert_store") |
Definition at line 61 of file ossl_ssl.c.
Referenced by ossl_sslctx_setup().
#define ossl_sslctx_get_client_ca | ( | o | ) | rb_iv_get((o),"@client_ca") |
Definition at line 53 of file ossl_ssl.c.
Referenced by ossl_sslctx_setup().
#define ossl_sslctx_get_client_cert_cb | ( | o | ) | rb_iv_get((o),"@client_cert_cb") |
Definition at line 63 of file ossl_ssl.c.
Referenced by ossl_ssl_setup(), and ossl_sslctx_setup().
#define ossl_sslctx_get_extra_cert | ( | o | ) | rb_iv_get((o),"@extra_chain_cert") |
Definition at line 62 of file ossl_ssl.c.
Referenced by ossl_sslctx_setup().
#define ossl_sslctx_get_key | ( | o | ) | rb_iv_get((o),"@key") |
Definition at line 52 of file ossl_ssl.c.
Referenced by ossl_sslctx_setup().
#define ossl_sslctx_get_options | ( | o | ) | rb_iv_get((o),"@options") |
Definition at line 60 of file ossl_ssl.c.
Referenced by ossl_sslctx_setup().
#define ossl_sslctx_get_sess_id_ctx | ( | o | ) | rb_iv_get((o),"@session_id_context") |
Definition at line 65 of file ossl_ssl.c.
Referenced by ossl_sslctx_setup().
#define ossl_sslctx_get_timeout | ( | o | ) | rb_iv_get((o),"@timeout") |
Definition at line 56 of file ossl_ssl.c.
Referenced by ossl_sslctx_setup().
#define ossl_sslctx_get_tmp_dh_cb | ( | o | ) | rb_iv_get((o),"@tmp_dh_callback") |
Definition at line 64 of file ossl_ssl.c.
Referenced by ossl_ssl_setup(), and ossl_sslctx_setup().
#define ossl_sslctx_get_verify_cb | ( | o | ) | rb_iv_get((o),"@verify_callback") |
Definition at line 59 of file ossl_ssl.c.
Referenced by ossl_ssl_setup().
#define ossl_sslctx_get_verify_dep | ( | o | ) | rb_iv_get((o),"@verify_depth") |
Definition at line 58 of file ossl_ssl.c.
Referenced by ossl_sslctx_setup().
#define ossl_sslctx_get_verify_mode | ( | o | ) | rb_iv_get((o),"@verify_mode") |
Definition at line 57 of file ossl_ssl.c.
Referenced by ossl_sslctx_setup().
Definition at line 38 of file ossl_ssl.c.
Definition at line 39 of file ossl_ssl.c.
Definition at line 35 of file ossl_ssl.c.
Definition at line 45 of file ossl_ssl.c.
Definition at line 37 of file ossl_ssl.c.
Definition at line 47 of file ossl_ssl.c.
Definition at line 46 of file ossl_ssl.c.
Definition at line 36 of file ossl_ssl.c.
Definition at line 44 of file ossl_ssl.c.
Definition at line 49 of file ossl_ssl.c.
Definition at line 40 of file ossl_ssl.c.
Definition at line 48 of file ossl_ssl.c.
Definition at line 43 of file ossl_ssl.c.
Definition at line 42 of file ossl_ssl.c.
Definition at line 41 of file ossl_ssl.c.
Definition at line 1245 of file ossl_ssl.c.
Referenced by ossl_ssl_read_internal(), ossl_ssl_write_internal(), and ossl_start_ssl().
Definition at line 24 of file ossl_ssl.c.
Referenced by ossl_ssl_setup().
if | ( | ! | SSL_CTX_add_extra_chain_certctx, x509 | ) |
Definition at line 490 of file ossl_ssl.c.
References eSSLError, NULL, and ossl_raise().
Definition at line 1880 of file ossl_ssl.c.
References ary, cSSLContext, cSSLSocket, eOSSLError, eSSLError, eSSLErrorWaitReadable, eSSLErrorWaitWritable, i, ID2SYM, ID_callback_state, Init_ossl_ssl_session(), LONG2FIX, mOSSL, mSSL, name, numberof, ossl_ssl_accept(), ossl_ssl_accept_nonblock(), ossl_ssl_attr_readers, ossl_ssl_attrs, ossl_ssl_close(), ossl_ssl_connect(), ossl_ssl_connect_nonblock(), ossl_ssl_def_const, ossl_ssl_ex_client_cert_cb_idx, ossl_ssl_ex_ptr_idx, ossl_ssl_ex_store_p, ossl_ssl_ex_tmp_dh_callback_idx, ossl_ssl_ex_vcb_idx, ossl_ssl_get_cert(), ossl_ssl_get_cipher(), ossl_ssl_get_client_ca_list(), ossl_ssl_get_peer_cert(), ossl_ssl_get_peer_cert_chain(), ossl_ssl_get_state(), ossl_ssl_get_verify_result(), ossl_ssl_get_version(), ossl_ssl_initialize(), ossl_ssl_method_tab, ossl_ssl_pending(), ossl_ssl_read(), ossl_ssl_read_nonblock(), ossl_ssl_s_alloc(), ossl_ssl_session_reused(), ossl_ssl_set_session(), ossl_ssl_write(), ossl_ssl_write_nonblock(), ossl_sslctx_flush_sessions(), ossl_sslctx_get_ciphers(), ossl_sslctx_get_session_cache_mode(), ossl_sslctx_get_session_cache_size(), ossl_sslctx_get_session_cache_stats(), ossl_sslctx_initialize(), ossl_sslctx_s_alloc(), ossl_sslctx_session_add(), ossl_sslctx_session_remove(), ossl_sslctx_set_ciphers(), ossl_sslctx_set_session_cache_mode(), ossl_sslctx_set_session_cache_size(), ossl_sslctx_set_ssl_version(), ossl_sslctx_setup(), Qfalse, rb_ary_new2, rb_ary_push(), rb_attr(), rb_cObject, rb_define_alias(), rb_define_alloc_func(), rb_define_class_under(), rb_define_const(), rb_define_method(), rb_define_module(), rb_define_module_under(), rb_define_private_method(), rb_include_module(), rb_intern, rb_mWaitReadable, rb_mWaitWritable, rb_notimplement(), rb_obj_freeze(), and sym_exception.
Referenced by Init_openssl().
Definition at line 245 of file ossl_ssl.c.
References ary, Check_Type(), Data_Get_Struct, GetPKeyPtr(), GetX509CertPtr(), key, NIL_P(), ossl_ssl_ex_client_cert_cb_idx, ossl_ssl_set_key, ossl_ssl_set_x509, Qfalse, Qtrue, rb_ary_entry(), rb_funcall(), rb_intern, and T_ARRAY.
Referenced by ossl_client_cert_cb().
Definition at line 340 of file ossl_ssl.c.
References Check_Type(), NIL_P(), Qnil, rb_ary_entry(), rb_funcall(), rb_intern, rb_iv_get(), and T_ARRAY.
Referenced by ossl_sslctx_session_get_cb().
Definition at line 387 of file ossl_ssl.c.
References Check_Type(), NIL_P(), Qnil, rb_ary_entry(), rb_funcall(), rb_intern, rb_iv_get(), and T_ARRAY.
Referenced by ossl_sslctx_session_new_cb().
Definition at line 439 of file ossl_ssl.c.
References Check_Type(), NIL_P(), Qnil, rb_ary_entry(), rb_funcall(), rb_intern, rb_iv_get(), and T_ARRAY.
Referenced by ossl_sslctx_session_remove_cb().
Definition at line 280 of file ossl_ssl.c.
References Data_Get_Struct, GetPKeyPtr(), NIL_P(), ossl_ssl_ex_tmp_dh_callback_idx, ossl_ssl_set_tmp_dh, Qfalse, Qtrue, rb_funcall(), and rb_intern.
Referenced by ossl_tmp_dh_callback().
|
static |
Definition at line 264 of file ossl_ssl.c.
References _, DupPKeyPtr(), DupX509CertPtr(), NULL, obj, ossl_call_client_cert_cb(), ossl_ssl_ex_ptr_idx, ossl_ssl_get_key, ossl_ssl_get_x509, rb_protect(), and RTEST.
Referenced by ossl_sslctx_setup().
Definition at line 313 of file ossl_ssl.c.
References NULL, OSSL_DEFAULT_DH_1024, OSSL_DEFAULT_DH_512, and rb_warning().
Referenced by ossl_sslctx_setup().
Definition at line 1365 of file ossl_ssl.c.
References ossl_ssl_setup(), and ossl_start_ssl().
Referenced by Init_ossl_ssl().
Definition at line 1390 of file ossl_ssl.c.
References ossl_ssl_setup(), and ossl_start_ssl().
Referenced by Init_ossl_ssl().
|
static |
Definition at line 837 of file ossl_ssl.c.
References ary, INT2FIX, rb_ary_new2, rb_ary_push(), and rb_str_new2.
Referenced by ossl_ssl_get_cipher(), and ossl_sslctx_get_ciphers().
Definition at line 1585 of file ossl_ssl.c.
References Data_Get_Struct, DATA_PTR(), io, NULL, ossl_ssl_get_io, ossl_ssl_get_sync_close, ossl_ssl_shutdown(), Qnil, rb_funcall(), rb_intern, and RTEST.
Referenced by Init_ossl_ssl().
Definition at line 1326 of file ossl_ssl.c.
References ossl_ssl_setup(), and ossl_start_ssl().
Referenced by Init_ossl_ssl().
Definition at line 1351 of file ossl_ssl.c.
References ossl_ssl_setup(), and ossl_start_ssl().
Referenced by Init_ossl_ssl().
|
static |
Definition at line 1146 of file ossl_ssl.c.
Referenced by ossl_ssl_s_alloc().
Definition at line 1616 of file ossl_ssl.c.
References NULL, ossl_ssl_data_get_struct, ossl_x509_new(), and Qnil.
Referenced by Init_ossl_ssl().
Definition at line 1714 of file ossl_ssl.c.
References ossl_ssl_cipher_to_ary(), and ossl_ssl_data_get_struct.
Referenced by Init_ossl_ssl().
Definition at line 1842 of file ossl_ssl.c.
References ossl_ssl_data_get_struct, ossl_x509name_sk2ary(), and STACK_OF().
Referenced by Init_ossl_ssl().
Definition at line 1642 of file ossl_ssl.c.
References NULL, obj, ossl_ssl_data_get_struct, ossl_x509_new(), and Qnil.
Referenced by Init_ossl_ssl().
Definition at line 1668 of file ossl_ssl.c.
References ary, i, ossl_ssl_data_get_struct, ossl_x509_new(), Qnil, rb_ary_new2, rb_ary_push(), and STACK_OF().
Referenced by Init_ossl_ssl().
Definition at line 1733 of file ossl_ssl.c.
References ossl_ssl_data_get_struct, rb_str_cat2(), rb_str_new2, ret, and ruby_verbose.
Referenced by Init_ossl_ssl().
Definition at line 1821 of file ossl_ssl.c.
References INT2FIX, and ossl_ssl_data_get_struct.
Referenced by Init_ossl_ssl().
Definition at line 1698 of file ossl_ssl.c.
References ossl_ssl_data_get_struct, and rb_str_new2.
Referenced by Init_ossl_ssl().
Definition at line 1174 of file ossl_ssl.c.
References Check_Type(), cSSLContext, ctx, io, OSSL_Check_Kind, ossl_ssl_set_ctx, ossl_ssl_set_io, ossl_ssl_set_sync_close, ossl_sslctx_setup(), Qfalse, Qnil, rb_call_super(), rb_funcall(), rb_intern, rb_iv_set(), rb_scan_args(), and T_FILE.
Referenced by Init_ossl_ssl().
Definition at line 1755 of file ossl_ssl.c.
References INT2NUM, and ossl_ssl_data_get_struct.
Referenced by Init_ossl_ssl().
Definition at line 1476 of file ossl_ssl.c.
References ossl_ssl_read_internal().
Referenced by Init_ossl_ssl().
Definition at line 1397 of file ossl_ssl.c.
References Data_Get_Struct, end, eSSLError, FPTR_TO_FD, GetOpenFile, ID2SYM, len, NIL_P(), NUM2INT, OBJ_TAINT, opts, ossl_raise(), ossl_ssl_get_io, Qfalse, Qnil, rb_eof_error(), rb_funcall(), rb_hash_aref(), rb_intern, rb_io_wait_readable(), rb_io_wait_writable(), rb_scan_args(), rb_str_modify(), rb_str_new(), rb_str_resize(), rb_str_set_len(), rb_sys_fail(), rb_thread_wait_fd(), rb_warning(), read_would_block(), RSTRING_LENINT, RSTRING_PTR, ssl_get_error, str, StringValue, sym_exception, and write_would_block().
Referenced by ossl_ssl_read(), and ossl_ssl_read_nonblock().
Definition at line 1495 of file ossl_ssl.c.
References ossl_ssl_read_internal().
Referenced by Init_ossl_ssl().
Definition at line 1152 of file ossl_ssl.c.
References Data_Wrap_Struct(), NULL, and ossl_ssl_free().
Referenced by Init_ossl_ssl().
Definition at line 1771 of file ossl_ssl.c.
References eSSLError, ossl_raise(), ossl_ssl_data_get_struct, Qfalse, Qtrue, and UNREACHABLE.
Referenced by Init_ossl_ssl().
Definition at line 1793 of file ossl_ssl.c.
References eSSLError, ossl_raise(), ossl_ssl_data_get_struct, ossl_ssl_setup(), and SafeGetSSLSession.
Referenced by Init_ossl_ssl().
Definition at line 1196 of file ossl_ssl.c.
References ctx, Data_Get_Struct, DATA_PTR(), eSSLError, FPTR_TO_FD, GetOpenFile, io, NIL_P(), ossl_raise(), ossl_ssl_ex_client_cert_cb_idx, ossl_ssl_ex_ptr_idx, ossl_ssl_ex_tmp_dh_callback_idx, ossl_ssl_ex_vcb_idx, ossl_ssl_get_ctx, ossl_ssl_get_io, ossl_sslctx_get_client_cert_cb, ossl_sslctx_get_tmp_dh_cb, ossl_sslctx_get_verify_cb, Qtrue, rb_io_check_readable(), rb_io_check_writable(), rb_iv_get(), ssl_info_cb(), StringValuePtr, and TO_SOCKET.
Referenced by ossl_ssl_accept(), ossl_ssl_accept_nonblock(), ossl_ssl_connect(), ossl_ssl_connect_nonblock(), and ossl_ssl_set_session().
|
static |
Definition at line 328 of file ossl_ssl.c.
References ossl_ssl_ex_vcb_idx, ossl_verify_cb(), and ossl_verify_cb_idx.
Referenced by ossl_sslctx_setup().
Definition at line 1551 of file ossl_ssl.c.
References ossl_ssl_write_internal().
Referenced by Init_ossl_ssl().
|
static |
Definition at line 1501 of file ossl_ssl.c.
References Data_Get_Struct, end, errno, eSSLError, FPTR_TO_FD, GetOpenFile, ID2SYM, INT2NUM, ossl_raise(), ossl_ssl_get_io, rb_funcall(), rb_intern, rb_io_wait_readable(), rb_io_wait_writable(), rb_sys_fail(), rb_warning(), read_would_block(), RSTRING_LENINT, RSTRING_PTR, ssl_get_error, StringValue, and write_would_block().
Referenced by ossl_ssl_write(), and ossl_ssl_write_nonblock().
Definition at line 1564 of file ossl_ssl.c.
References NIL_P(), opts, ossl_ssl_write_internal(), Qfalse, Qnil, rb_hash_aref(), rb_scan_args(), str, and sym_exception.
Referenced by Init_ossl_ssl().
Definition at line 1097 of file ossl_ssl.c.
References ctx, Data_Get_Struct, NIL_P(), NUM2LONG, ossl_raise(), rb_cTime, rb_eArgError, rb_funcall(), rb_intern, rb_obj_is_instance_of(), rb_scan_args(), and time.
Referenced by Init_ossl_ssl().
|
static |
Definition at line 156 of file ossl_ssl.c.
References NULL, and ossl_ssl_ex_store_p.
Referenced by ossl_sslctx_s_alloc().
Definition at line 859 of file ossl_ssl.c.
References ary, ctx, Data_Get_Struct, i, ossl_ssl_cipher_to_ary(), Qnil, rb_ary_new(), rb_ary_new2, rb_ary_push(), rb_warning(), and STACK_OF().
Referenced by Init_ossl_ssl().
Definition at line 977 of file ossl_ssl.c.
References ctx, Data_Get_Struct, and LONG2NUM.
Referenced by Init_ossl_ssl().
Definition at line 1014 of file ossl_ssl.c.
References ctx, Data_Get_Struct, and LONG2NUM.
Referenced by Init_ossl_ssl().
Definition at line 1065 of file ossl_ssl.c.
References ctx, Data_Get_Struct, hash, ID2SYM, LONG2NUM, rb_hash_aset(), rb_hash_new(), and rb_intern.
Referenced by Init_ossl_ssl().
Definition at line 226 of file ossl_ssl.c.
References buf, i, numberof, ossl_sslctx_attrs, ossl_sslctx_set_ssl_version(), Qnil, rb_iv_set(), rb_scan_args(), and snprintf.
Referenced by Init_ossl_ssl().
Definition at line 164 of file ossl_ssl.c.
References ctx, Data_Wrap_Struct(), eSSLError, mode, ossl_raise(), and ossl_sslctx_free().
Referenced by Init_ossl_ssl().
Definition at line 941 of file ossl_ssl.c.
References ctx, Data_Get_Struct, Qfalse, Qtrue, and SafeGetSSLSession.
Referenced by Init_ossl_ssl().
|
static |
Definition at line 357 of file ossl_ssl.c.
References _, ary, cSSLSession, ID_callback_state, INT2NUM, NULL, ossl_call_session_get_cb(), OSSL_Debug, ossl_ssl_ex_ptr_idx, ptr, rb_ary_new2, rb_ary_push(), rb_ivar_set(), rb_obj_is_instance_of(), rb_protect(), rb_str_new(), SafeGetSSLSession, and state.
Referenced by ossl_sslctx_setup().
|
static |
Definition at line 404 of file ossl_ssl.c.
References _, ary, cSSLSession, DATA_PTR(), ID_callback_state, INT2NUM, NULL, ossl_call_session_new_cb(), OSSL_Debug, ossl_ssl_ex_ptr_idx, ptr, rb_ary_new2, rb_ary_push(), rb_ivar_set(), rb_obj_alloc(), rb_protect(), and state.
Referenced by ossl_sslctx_setup().
Definition at line 959 of file ossl_ssl.c.
References ctx, Data_Get_Struct, Qfalse, Qtrue, and SafeGetSSLSession.
Referenced by Init_ossl_ssl().
|
static |
Definition at line 453 of file ossl_ssl.c.
References _, ary, cSSLSession, DATA_PTR(), NULL, ossl_call_session_remove_cb(), OSSL_Debug, ossl_ssl_ex_ptr_idx, ptr, rb_ary_new2, rb_ary_push(), rb_obj_alloc(), rb_protect(), and state.
Referenced by ossl_sslctx_setup().
Definition at line 899 of file ossl_ssl.c.
References ctx, Data_Get_Struct, elem, eSSLError, i, NIL_P(), ossl_raise(), Qnil, RARRAY_LEN, rb_ary_entry(), rb_check_frozen, rb_str_append(), rb_str_cat2(), rb_str_new(), rb_String(), RSTRING_PTR, str, StringValue, T_ARRAY, TYPE, and v.
Referenced by Init_ossl_ssl().
Definition at line 995 of file ossl_ssl.c.
References arg, ctx, Data_Get_Struct, and NUM2LONG.
Referenced by Init_ossl_ssl().
Definition at line 1031 of file ossl_ssl.c.
References arg, ctx, Data_Get_Struct, and NUM2LONG.
Referenced by Init_ossl_ssl().
Definition at line 189 of file ossl_ssl.c.
References ctx, Data_Get_Struct, eSSLError, i, method, name, NULL, numberof, ossl_raise(), ossl_ssl_method_tab, rb_eArgError, rb_id2name(), s, StringValuePtr, SYM2ID, T_SYMBOL, and TYPE.
Referenced by Init_ossl_ssl(), and ossl_sslctx_initialize().
Definition at line 680 of file ossl_ssl.c.
References ctx, Data_Get_Struct, eSSLError, GetPKeyPtr(), GetX509CertPtr(), GetX509StorePtr(), i, key, NIL_P(), NULL, NUM2INT, NUM2LONG, OBJ_FROZEN, ossl_client_cert_cb(), OSSL_Debug, ossl_default_tmp_dh_callback(), ossl_raise(), ossl_ssl_ex_ptr_idx, ossl_ssl_ex_store_p, ossl_ssl_verify_callback(), ossl_sslctx_get_ca_file, ossl_sslctx_get_ca_path, ossl_sslctx_get_cert, ossl_sslctx_get_cert_store, ossl_sslctx_get_client_ca, ossl_sslctx_get_client_cert_cb, ossl_sslctx_get_extra_cert, ossl_sslctx_get_key, ossl_sslctx_get_options, ossl_sslctx_get_sess_id_ctx, ossl_sslctx_get_timeout, ossl_sslctx_get_tmp_dh_cb, ossl_sslctx_get_verify_dep, ossl_sslctx_get_verify_mode, ossl_sslctx_session_get_cb(), ossl_sslctx_session_new_cb(), ossl_sslctx_session_remove_cb(), ossl_tmp_dh_callback(), Qnil, Qtrue, RARRAY_LEN, RARRAY_PTR(), rb_block_call(), rb_intern, rb_iv_get(), rb_obj_freeze(), rb_warning(), RSTRING_LENINT, RSTRING_PTR, RTEST, StringValue, StringValuePtr, T_ARRAY, TYPE, and val.
Referenced by Init_ossl_ssl(), and ossl_ssl_initialize().
|
static |
Definition at line 1276 of file ossl_ssl.c.
References errno, eSSLError, FPTR_TO_FD, func, GetOpenFile, ID_callback_state, NIL_P(), NUM2INT, ossl_raise(), ossl_ssl_data_get_struct, ossl_ssl_get_io, Qnil, rb_io_wait_readable(), rb_io_wait_writable(), rb_ivar_get(), rb_ivar_set(), rb_jump_tag(), rb_sys_fail(), read_would_block(), ret, ssl_get_error, and write_would_block().
Referenced by ossl_ssl_accept(), ossl_ssl_accept_nonblock(), ossl_ssl_connect(), and ossl_ssl_connect_nonblock().
Definition at line 298 of file ossl_ssl.c.
References _, args, GetPKeyPtr(), INT2FIX, NULL, ossl_call_tmp_dh_callback(), ossl_ssl_ex_ptr_idx, ossl_ssl_get_tmp_dh, rb_protect(), and RTEST.
Referenced by ossl_sslctx_setup().
Definition at line 1267 of file ossl_ssl.c.
References eSSLErrorWaitReadable, exc, ossl_exc_new(), and rb_exc_raise().
Referenced by ossl_ssl_read_internal(), ossl_ssl_write_internal(), and ossl_start_ssl().
Definition at line 660 of file ossl_ssl.c.
References ssl_renegotiation_cb().
Referenced by ossl_ssl_setup().
Definition at line 558 of file ossl_ssl.c.
References eSSLError, NIL_P(), NULL, ossl_raise(), ossl_ssl_ex_ptr_idx, ptr, rb_funcall(), rb_intern, rb_iv_get(), and void.
Referenced by ssl_info_cb().
Definition at line 1258 of file ossl_ssl.c.
References eSSLErrorWaitWritable, exc, ossl_exc_new(), and rb_exc_raise().
Referenced by ossl_ssl_read_internal(), ossl_ssl_write_internal(), and ossl_start_ssl().
VALUE cSSLContext |
Definition at line 29 of file ossl_ssl.c.
Referenced by Init_ossl_ssl(), and ossl_ssl_initialize().
VALUE cSSLSocket |
Definition at line 30 of file ossl_ssl.c.
Referenced by Init_ossl_ssl(), and ossl_ssl_session_initialize().
SSL_CTX* ctx |
Definition at line 486 of file ossl_ssl.c.
Referenced by EVP_MD_CTX_create(), GetCipherPtr(), GetDigestPtr(), ossl_cipher_final(), ossl_cipher_init(), ossl_cipher_initialize(), ossl_cipher_name(), ossl_cipher_new(), ossl_cipher_pkcs5_keyivgen(), ossl_cipher_reset(), ossl_cipher_set_iv(), ossl_cipher_set_key(), ossl_cipher_set_key_length(), ossl_cipher_update(), ossl_digest_alloc(), ossl_digest_block_length(), ossl_digest_finish(), ossl_digest_initialize(), ossl_digest_name(), ossl_digest_new(), ossl_digest_reset(), ossl_digest_size(), ossl_digest_update(), ossl_hmac_alloc(), ossl_hmac_digest(), ossl_hmac_hexdigest(), ossl_hmac_initialize(), ossl_hmac_reset(), ossl_hmac_update(), ossl_pkey_sign(), ossl_pkey_verify(), ossl_ssl_initialize(), ossl_ssl_session_get_time(), ossl_ssl_session_get_timeout(), ossl_ssl_session_initialize(), ossl_ssl_session_set_time(), ossl_ssl_session_set_timeout(), ossl_ssl_session_to_der(), ossl_ssl_session_to_pem(), ossl_ssl_session_to_text(), ossl_ssl_setup(), ossl_sslctx_flush_sessions(), ossl_sslctx_get_ciphers(), ossl_sslctx_get_session_cache_mode(), ossl_sslctx_get_session_cache_size(), ossl_sslctx_get_session_cache_stats(), ossl_sslctx_s_alloc(), ossl_sslctx_session_add(), ossl_sslctx_session_remove(), ossl_sslctx_set_ciphers(), ossl_sslctx_set_session_cache_mode(), ossl_sslctx_set_session_cache_size(), ossl_sslctx_set_ssl_version(), ossl_sslctx_setup(), ossl_x509extfactory_alloc(), ossl_x509extfactory_create_ext(), ossl_x509extfactory_set_crl(), ossl_x509extfactory_set_issuer_cert(), ossl_x509extfactory_set_subject_cert(), ossl_x509extfactory_set_subject_req(), ossl_x509stctx_alloc(), ossl_x509stctx_get_chain(), ossl_x509stctx_get_curr_cert(), ossl_x509stctx_get_curr_crl(), ossl_x509stctx_get_err(), ossl_x509stctx_get_err_depth(), ossl_x509stctx_get_err_string(), ossl_x509stctx_initialize(), ossl_x509stctx_set_error(), ossl_x509stctx_verify(), and ossl_x509store_verify().
VALUE eSSLError |
Definition at line 28 of file ossl_ssl.c.
Referenced by if(), Init_ossl_ssl(), ossl_ssl_read_internal(), ossl_ssl_session_reused(), ossl_ssl_set_session(), ossl_ssl_setup(), ossl_ssl_write_internal(), ossl_sslctx_s_alloc(), ossl_sslctx_set_ciphers(), ossl_sslctx_set_ssl_version(), ossl_sslctx_setup(), ossl_start_ssl(), and ssl_renegotiation_cb().
|
static |
Definition at line 32 of file ossl_ssl.c.
Referenced by Init_ossl_ssl(), and read_would_block().
|
static |
Definition at line 33 of file ossl_ssl.c.
Referenced by Init_ossl_ssl(), and write_would_block().
callq func = func |
Definition at line 113 of file ossl_ssl.c.
Referenced by alloc_event_hook(), backtrace_collect(), call_cfunc_0(), call_cfunc_1(), call_cfunc_10(), call_cfunc_11(), call_cfunc_12(), call_cfunc_13(), call_cfunc_14(), call_cfunc_15(), call_cfunc_2(), call_cfunc_3(), call_cfunc_4(), call_cfunc_5(), call_cfunc_6(), call_cfunc_7(), call_cfunc_8(), call_cfunc_9(), call_cfunc_m1(), call_cfunc_m2(), call_without_gvl(), check_cfunc(), class_instance_method_list(), console_emulator_p(), default_handler(), define_filetest_function(), dlhandle_sym(), enum_count(), enum_find_index(), exec_recursive(), extract_fd(), f_addsub(), f_divide(), f_format(), f_round_common(), fiddle_handle_sym(), get_freefunc(), if(), lazy_zip(), obj_ivar_each(), onig_foreach_name(), ossl_start_ssl(), parser_here_document(), parser_heredoc_identifier(), parser_parse_string(), postponed_job_register(), rb_add_method_cfunc(), rb_bug_reporter_add(), rb_catch(), rb_catch_obj(), rb_define_alloc_func(), rb_define_global_function(), rb_define_method(), rb_define_method_id(), rb_define_module_function(), rb_define_private_method(), rb_define_protected_method(), rb_define_singleton_method(), rb_dlcfunc2ptr(), rb_dlcfunc_new(), rb_dlptr_new2(), rb_enc_foreach_name(), rb_exec_recursive(), rb_exec_recursive_outer(), rb_exec_recursive_paired(), rb_exec_recursive_paired_outer(), rb_fiber_new(), rb_fiddle_ptr_new2(), rb_get_values_at(), rb_glob(), rb_glob2(), rb_hash_foreach(), rb_hash_update_by(), rb_iseq_line_trace_each(), rb_ivar_foreach(), rb_mutex_synchronize(), rb_objspace_reachable_objects_from(), rb_objspace_reachable_objects_from_root(), rb_proc_new(), rb_set_end_proc(), rb_stat_inspect(), rb_str_locktmp_ensure(), rb_thread_blocking_region(), rb_thread_call_without_gvl(), rb_thread_call_without_gvl2(), rb_thread_io_blocking_region(), rb_tracepoint_new(), rb_w32_asynchronize(), rollback_ensure_stack(), rsock_bsock_send(), rsock_connect(), ruby_brace_glob0(), ruby_vm_at_exit(), ruby_vm_run_at_exit_hooks(), set_unblock_function(), setup_method_cfunc_struct(), sig_trap(), signal_ignored(), st_foreach_safe(), syserr_initialize(), tbl_update(), tracepoint_new(), trap_handler(), ttymode(), and zstream_init().
return i |
Definition at line 494 of file ossl_ssl.c.
ID ID_callback_state |
Definition at line 104 of file ossl_ssl.c.
Referenced by Init_ossl_ssl(), ossl_sslctx_session_get_cb(), ossl_sslctx_session_new_cb(), and ossl_start_ssl().
VALUE mSSL |
Definition at line 27 of file ossl_ssl.c.
Referenced by Init_ossl_ssl(), and Init_ossl_ssl_session().
const char* name |
Definition at line 112 of file ossl_ssl.c.
|
static |
Definition at line 96 of file ossl_ssl.c.
Referenced by Init_ossl_ssl().
|
static |
Definition at line 97 of file ossl_ssl.c.
Referenced by Init_ossl_ssl().
int ossl_ssl_ex_client_cert_cb_idx |
Definition at line 152 of file ossl_ssl.c.
Referenced by Init_ossl_ssl(), ossl_call_client_cert_cb(), and ossl_ssl_setup().
int ossl_ssl_ex_ptr_idx |
Definition at line 151 of file ossl_ssl.c.
Referenced by Init_ossl_ssl(), ossl_client_cert_cb(), ossl_ssl_setup(), ossl_sslctx_session_get_cb(), ossl_sslctx_session_new_cb(), ossl_sslctx_session_remove_cb(), ossl_sslctx_setup(), ossl_tmp_dh_callback(), and ssl_renegotiation_cb().
int ossl_ssl_ex_store_p |
Definition at line 150 of file ossl_ssl.c.
Referenced by Init_ossl_ssl(), ossl_sslctx_free(), and ossl_sslctx_setup().
int ossl_ssl_ex_tmp_dh_callback_idx |
Definition at line 153 of file ossl_ssl.c.
Referenced by Init_ossl_ssl(), ossl_call_tmp_dh_callback(), and ossl_ssl_setup().
int ossl_ssl_ex_vcb_idx |
Definition at line 149 of file ossl_ssl.c.
Referenced by Init_ossl_ssl(), ossl_ssl_setup(), and ossl_ssl_verify_callback().
struct { ... } ossl_ssl_method_tab[] |
Referenced by Init_ossl_ssl(), and ossl_sslctx_set_ssl_version().
|
static |
Definition at line 67 of file ossl_ssl.c.
Referenced by ossl_sslctx_initialize().
|
static |
Definition at line 106 of file ossl_ssl.c.
Referenced by Init_ossl_ssl(), ossl_ssl_read_internal(), and ossl_ssl_write_nonblock().
|
static |
Definition at line 484 of file ossl_ssl.c.
x509 = DupX509CertPtr(i) |
Definition at line 489 of file ossl_ssl.c.
Referenced by DupX509CertPtr(), GetX509CertPtr(), ossl_pkcs12_initialize(), ossl_pkcs12_s_create(), ossl_pkcs7_add_certificate(), ossl_pkcs7_decrypt(), ossl_pkcs7_s_sign(), ossl_pkcs7ri_initialize(), ossl_pkcs7si_initialize(), ossl_x509_add_extension(), ossl_x509_alloc(), ossl_x509_check_private_key(), ossl_x509_copy(), ossl_x509_get_extensions(), ossl_x509_get_issuer(), ossl_x509_get_not_after(), ossl_x509_get_not_before(), ossl_x509_get_public_key(), ossl_x509_get_serial(), ossl_x509_get_signature_algorithm(), ossl_x509_get_subject(), ossl_x509_get_version(), ossl_x509_initialize(), ossl_x509_new_from_file(), ossl_x509_set_extensions(), ossl_x509_set_issuer(), ossl_x509_set_not_after(), ossl_x509_set_not_before(), ossl_x509_set_public_key(), ossl_x509_set_serial(), ossl_x509_set_subject(), ossl_x509_set_version(), ossl_x509_sign(), ossl_x509_to_der(), ossl_x509_to_pem(), ossl_x509_to_text(), ossl_x509_verify(), ossl_x509stctx_get_chain(), and ossl_x509stctx_initialize().