Creates several default gems which all have a lib/code.rb file. The gems are not installed but are available in the cache dir.
gem a version 1, this is the best-described gem.
gem a version 2
gem a version 3.a
gem a_evil version 9, use this to ensure similarly-named gems don’t collide with a.
gem b version 2
gem c version 1.2
gem pl version 1, this gem has a legacy platform of i386-linux.
Additional prerelease
gems may also be created:
gem a version 2.a
TODO: nuke this and fix tests. this should speed up a lot
Parses the cookie in str
Parses the cookies in str
Parses a C struct’s members
Example:
require 'fiddle/import' include Fiddle::CParser #=> Object parse_struct_signature(['int i', 'char c']) #=> [[Fiddle::TYPE_INT, Fiddle::TYPE_CHAR], ["i", "c"]] parse_struct_signature(['char buffer[80]']) #=> [[[Fiddle::TYPE_CHAR, 80]], ["buffer"]]
Returns the position that self
holds in its parent’s array, indexed from 1.
Parses a Range
header value ranges_specifier
Parses a Range
header value ranges_specifier
Parses form data in io
with the given boundary
Parses form data in io
with the given boundary
Sets saner defaults optimized for the use with HTTP-like protocols.
If a Hash
params is given, the parameters are overridden with it. The keys in params must be assignment methods on SSLContext
.
If the verify_mode
is not VERIFY_NONE and ca_file
, ca_path
and cert_store
are not set then the system default certificate store is used.
Sets the lower bound on the supported SSL/TLS protocol version. The version may be specified by an integer constant named OpenSSL::SSL::*_VERSION, a Symbol
, or nil
which means “any version”.
Be careful that you don’t overwrite OpenSSL::SSL::OP_NO_{SSL,TLS}v* options by options=
once you have called min_version=
or max_version=
.
ctx = OpenSSL::SSL::SSLContext.new ctx.min_version = OpenSSL::SSL::TLS1_1_VERSION ctx.max_version = OpenSSL::SSL::TLS1_2_VERSION sock = OpenSSL::SSL::SSLSocket.new(tcp_sock, ctx) sock.connect # Initiates a connection using either TLS 1.1 or TLS 1.2
Sets the upper bound of the supported SSL/TLS protocol version. See min_version=
for the possible values.
Sets the SSL/TLS protocol version for the context. This forces connections to use only the specified protocol version. This is deprecated and only provided for backwards compatibility. Use min_version=
and max_version=
instead.
As the name hints, this used to call the SSL_CTX_set_ssl_version() function which sets the SSL
method used for connections created from the context. As of Ruby/OpenSSL 2.1, this accessor method is implemented to call min_version=
and max_version=
instead.
Adds session to the session cache.
Removes session from the session cache.
Removes sessions in the internal cache that have expired at time.
Initiates the SSL/TLS handshake as a client in non-blocking manner.
# emulates blocking connect begin ssl.connect_nonblock rescue IO::WaitReadable IO.select([s2]) retry rescue IO::WaitWritable IO.select(nil, [s2]) retry end
By specifying a keyword argument exception to false
, you can indicate that connect_nonblock
should not raise an IO::WaitReadable
or IO::WaitWritable
exception, but return the symbol :wait_readable
or :wait_writable
instead.
Writes string to the SSL
connection in a non-blocking manner. Raises an SSLError
if writing would block.