In fact, the client was updated, now it has direct access to the http connection: https://bugs.ruby-lang.org/projects/ruby-trunk/repository/revisions/41286/diff/lib/xmlrpc/client. rb
xmlrpc.http.verify_mode = OpenSSL::SSL::VERIFY_NONE
But it is better to set ca_file or ca_path . However, I see no way to apply this configuration to _async calls.
Update: A workaround was found by decapitating the client object:
xmlrpc_client.http.ca_file = @options[:ca_file] xmlrpc_client.instance_variable_set(:@ca_file, @options[:ca_file]) def xmlrpc_client.net_http(host, port, proxy_host, proxy_port) h = Net::HTTP.new host, port, proxy_host, proxy_port h.ca_file = @ca_file h end
So, you need both, the older approach and the monkey fix. We also add an instance variable, otherwise the new method will not be able to see the actual value.
akostadinov
source share