A basic wrapper over Ruby's SSLSocket that initiates a TCP connection over SSL and then provides an basic interface mirroring Ruby's TCPSocket, vis., TCPSocket#send and TCPSocket#read.
# File lib/mongo/util/ssl_socket.rb, line 13 def initialize(host, port, op_timeout=nil, connect_timeout=nil) @op_timeout = op_timeout @connect_timeout = connect_timeout @pid = Process.pid @tcp_socket = ::TCPSocket.new(host, port) @tcp_socket.setsockopt(Socket::IPPROTO_TCP, Socket::TCP_NODELAY, 1) @socket = OpenSSL::SSL::SSLSocket.new(@tcp_socket) @socket.sync_close = true connect end
# File lib/mongo/util/ssl_socket.rb, line 27 def connect if @connect_timeout Timeout::timeout(@connect_timeout, ConnectionTimeoutError) do @socket.connect end else @socket.connect end end
Generated with the Darkfish Rdoc Generator 2.