An SSLContext is used to set various options regarding certificates, algorithms, verification, session caching, etc. The SSLContext is used to create an SSLSocket.
All attributes must be set before creating an SSLSocket as the SSLContext will be frozen afterward.
Constants
DEFAULT_CERT_STORE = OpenSSL::X509::Store.new # :nodoc:
DEFAULT_PARAMS = { # :nodoc:\n:ssl_version => "SSLv23",\n:verify_mode => OpenSSL::SSL::VERIFY_PEER,\n:verify_hostname => true,\n:options => -> {\nopts = OpenSSL::SSL::OP_ALL\nopts &= ~OpenSSL::SSL::OP_DONT_INSERT_EMPTY_FRAGMENTS\nopts |= OpenSSL::SSL::OP_NO_COMPRESSION if defined?(OpenSSL::SSL::OP_NO_COMPRESSION)\nopts |= OpenSSL::SSL::OP_NO_SSLv2 | OpenSSL::SSL::OP_NO_SSLv3\nopts\n}.call\n}
METHODS = ary
SESSION_CACHE_BOTH = LONG2NUM(SSL_SESS_CACHE_BOTH)
SESSION_CACHE_CLIENT = LONG2NUM(SSL_SESS_CACHE_CLIENT)
SESSION_CACHE_NO_AUTO_CLEAR = LONG2NUM(SSL_SESS_CACHE_NO_AUTO_CLEAR)
SESSION_CACHE_NO_INTERNAL = LONG2NUM(SSL_SESS_CACHE_NO_INTERNAL)
SESSION_CACHE_NO_INTERNAL_LOOKUP = LONG2NUM(SSL_SESS_CACHE_NO_INTERNAL_LOOKUP)
SESSION_CACHE_NO_INTERNAL_STORE = LONG2NUM(SSL_SESS_CACHE_NO_INTERNAL_STORE)
SESSION_CACHE_OFF = LONG2NUM(SSL_SESS_CACHE_OFF)
SESSION_CACHE_SERVER = LONG2NUM(SSL_SESS_CACHE_SERVER)
Attributes
| [RW] | alpn_protocols |
| [RW] | alpn_select_cb |
| [RW] | ca_file |
| [RW] | ca_path |
| [RW] | cert |
| [RW] | cert_store |
| [RW] | client_ca |
| [RW] | client_cert_cb |
| [RW] | extra_chain_cert |
| [RW] | key |
| [RW] | npn_protocols |
| [RW] | npn_select_cb |
| [RW] | renegotiation_cb |
| [RW] | servername_cb |
| [RW] | session_get_cb |
| [RW] | session_id_context |
| [RW] | session_new_cb |
| [RW] | session_remove_cb |
| [RW] | ssl_timeout |
| [RW] | timeout |
| [RW] | tmp_dh_callback |
| [RW] | tmp_ecdh_callback |
| [RW] | verify_callback |
| [RW] | verify_depth |
| [RW] | verify_hostname |
| [RW] | verify_mode |
Files
- ext/openssl/lib/openssl/ssl.rb
- ext/openssl/ossl_ssl.c