Spec-Zone.ru › Ruby 2.3

класс DRb::DRbSSLSocket

Родитель:
DRb::DRbTCPSocket

Протокол для DRb через сокет SSL

URI для DRb сокета через SSL: drbssl://<host>:<port>?<option>. Параметр необязателен

Публичные методы класса

new(uri, soc, config, is_established) Показать исходный код
# File lib/drb/ssl.rb, line 306
def initialize(uri, soc, config, is_established)
  @ssl = is_established ? soc : nil
  super(uri, soc.to_io, config)
end

Создаёт экземпляр DRb::DRbSSLSocket.

uri — URI, к которому мы подключены. soc — TCP-сокет, к которому мы привязаны. config — наша конфигурация. Либо Hash, либо SSLConfig is_established — логическое значение, указывающее, soc подключение установлено в данный момент

Вызывается автоматически в соответствии с протоколом DRb.

Вызывает метод суперкласса BasicObject.new
open(uri, config) Показать исходный код
# File lib/drb/ssl.rb, line 249
def self.open(uri, config)
  host, port, = parse_uri(uri)
  host.untaint
  port.untaint
  soc = TCPSocket.open(host, port)
  ssl_conf = SSLConfig::new(config)
  ssl_conf.setup_ssl_context
  ssl = ssl_conf.connect(soc)
  self.new(uri, ssl, ssl_conf, true)
end

Возвращает экземпляр DRb::DRbSSLSocket в качестве подключения на стороне клиента с установленным SSL. Вызывается из DRb.start_service или при подключении к удалённому объекту:

DRb.start_service 'drbssl://localhost:0', front, config

uri — URI, к которому мы подключены, 'drbssl://localhost:0' выше, config — наша конфигурация. Либо Hash, либо DRb::DRbSSLSocket::SSLConfig

open_server(uri, config) Показать исходный код
# File lib/drb/ssl.rb, line 269
def self.open_server(uri, config)
  uri = 'drbssl://:0' unless uri
  host, port, = parse_uri(uri)
  if host.size == 0
    host = getservername
    soc = open_server_inaddr_any(host, port)
  else
    soc = TCPServer.open(host, port)
  end
  port = soc.addr[1] if port == 0
  @uri = "drbssl://#{host}:#{port}"

  ssl_conf = SSLConfig.new(config)
  ssl_conf.setup_certificate
  ssl_conf.setup_ssl_context
  self.new(@uri, soc, ssl_conf, false)
end

Возвращает экземпляр DRb::DRbSSLSocket в качестве подключения на стороне сервера с установленным SSL. Вызывается из DRb.start_service или при подключении к удалённому объекту:

DRb.start_service 'drbssl://localhost:0', front, config

uri — URI, к которому мы подключены, 'drbssl://localhost:0' выше, config — наша конфигурация. Либо Hash, либо DRb::DRbSSLSocket::SSLConfig

Ruby Core © 1993–2017 Yukihiro Matsumoto
Licensed under the Ruby License.
Ruby Standard Library © contributors
Licensed under their own licenses.

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API