Basic Info
Recently, the #1581 "Add ciphers to SSL options" was fixed, and one adapter supports it.
A good mapping-out of the rest of the adapter landscape was created by @womblep, which this Issue summarizes as a sign-post Issue, with a checklist.
About SSL ciphers
What are "ciphers"? Well, in this context, it is a setting to HTTP clients' use of SSL, telling them explicitly which SSL cipher suites should be available. The kinds of strings to accept can be seen in the openssl-ciphers documentation.
TODO: Support the ciphers option
This list of adapters is about "are we done supporting the ciphers option for it?".
Details, per adapter
This lists what is known about the current landscape, as "developer hints".
Excon - support
option params [String] :ciphers Only use the specified SSL/TLS cipher suites; use OpenSSL cipher spec format e.g. 'HIGH:!aNULL:!3DES' or 'AES256-SHA:DES-CBC3-SHA'
HTTPClient - supported
# A String of OpenSSL's cipher configuration. Default value is
# ALL:!ADH:!LOW:!EXP:!MD5:+SSLv2:@STRENGTH
# See ciphers(1) man in OpenSSL for more detail.
attr_config :ciphers
Net::HTTP::Persistent - supported
https://github.com/drbrain/net-http-persistent/blob/master/lib/net/http/persistent.rb#L571
Patron - investigate
the adapter doesn't look like it does any SSL options other than verify. The Patron gem doesn't look like it supports ciphers (or many SSL settings)
HTTP.rb - supported
adapter and gem use OpenSSL SSLContext which support ciphers
httpx - supported
uses OpenSSL SSLContext so should be able to be added to the adapter in "def ssl_options_from_env(env)"
Typhoeus - supported
using ssl_cipher_list
Async::HTTP - supported
I am getting lost in the adapter but I think all the SSL options are passed through Async::HTTP::Faraday::Clients.make_client. Ciphers would be passed through without any change required.
EM::HTTP - supported
using cipher_list
Basic Info
Recently, the #1581 "Add ciphers to SSL options" was fixed, and one adapter supports it.
A good mapping-out of the rest of the adapter landscape was created by @womblep, which this Issue summarizes as a sign-post Issue, with a checklist.
About SSL ciphers
What are "ciphers"? Well, in this context, it is a setting to HTTP clients' use of SSL, telling them explicitly which SSL cipher suites should be available. The kinds of strings to accept can be seen in the
openssl-ciphersdocumentation.TODO: Support the
ciphersoptionThis list of adapters is about "are we done supporting the
ciphersoption for it?".ciphersSSL option (#45) excon/faraday-excon#21 by @saiqulhaqDetails, per adapter
This lists what is known about the current landscape, as "developer hints".
Excon - support
HTTPClient - supported
Net::HTTP::Persistent - supported
https://github.com/drbrain/net-http-persistent/blob/master/lib/net/http/persistent.rb#L571
Patron - investigate
the adapter doesn't look like it does any SSL options other than
verify. The Patron gem doesn't look like it supports ciphers (or many SSL settings)HTTP.rb - supported
adapter and gem use OpenSSL SSLContext which support ciphers
httpx - supported
uses OpenSSL SSLContext so should be able to be added to the adapter in "def ssl_options_from_env(env)"
Typhoeus - supported
using
ssl_cipher_listAsync::HTTP - supported
I am getting lost in the adapter but I think all the SSL options are passed through Async::HTTP::Faraday::Clients.make_client. Ciphers would be passed through without any change required.
EM::HTTP - supported
using
cipher_list