class OpenSSL::SSL::SSLServer
SSLServer represents a TCP/IP server socket with Secure Sockets Layer.
Attributes
              start_immediately[RW]
            
            When true then accept works exactly the same as TCPServer#accept
Public Class Methods
                              new(svr, ctx)
                              click to toggle source
                            
                            Creates a new instance of SSLServer.
- 
srv is an instance of TCPServer. 
- 
ctx is an instance of OpenSSL::SSL::SSLContext.
# File openssl/lib/openssl/ssl.rb, line 491 def initialize(svr, ctx) @svr = svr @ctx = ctx unless ctx.session_id_context # see #6137 - session id may not exceed 32 bytes prng = ::Random.new($0.hash) session_id = prng.bytes(16).unpack1('H*') @ctx.session_id_context = session_id end @start_immediately = true end
Public Instance Methods
                              accept()
                              click to toggle source
                            
                            Works similar to TCPServer#accept.
# File openssl/lib/openssl/ssl.rb, line 519 def accept # Socket#accept returns [socket, addrinfo]. # TCPServer#accept returns a socket. # The following comma strips addrinfo. sock, = @svr.accept begin ssl = OpenSSL::SSL::SSLSocket.new(sock, @ctx) ssl.sync_close = true ssl.accept if @start_immediately ssl rescue Exception => ex if ssl ssl.close else sock.close end raise ex end end
                              close()
                              click to toggle source
                            
                            See IO#close for details.
# File openssl/lib/openssl/ssl.rb, line 540 def close @svr.close end
                              listen(backlog=Socket::SOMAXCONN)
                              click to toggle source
                            
                            See TCPServer#listen for details.
# File openssl/lib/openssl/ssl.rb, line 509 def listen(backlog=Socket::SOMAXCONN) @svr.listen(backlog) end
                              shutdown(how=Socket::SHUT_RDWR)
                              click to toggle source
                            
                            See BasicSocket#shutdown for details.
# File openssl/lib/openssl/ssl.rb, line 514 def shutdown(how=Socket::SHUT_RDWR) @svr.shutdown(how) end
                              to_io()
                              click to toggle source
                            
                            Returns the TCPServer passed to the SSLServer when initialized.
# File openssl/lib/openssl/ssl.rb, line 504 def to_io @svr end