module Pantry::Communication::Security

Constants

AVAILABLE_SECURITY

Public Class Methods

curve_supported?() click to toggle source

Check if ZeroMQ is built properly to support Curve encryption

# File lib/pantry/communication/security.rb, line 13
def self.curve_supported?
  begin
    ZMQ::Util.curve_keypair
    true
  rescue
    false
  end
end
handler_class(config) click to toggle source
# File lib/pantry/communication/security.rb, line 34
def self.handler_class(config)
  if handler = AVAILABLE_SECURITY[config.security]
    handler
  else
    raise UnknownSecurityStrategyError, "Unknown security strategy #{config.security.inspect}"
  end
end
new_client(config = Pantry.config) click to toggle source

Build a Client implementation of the security strategy configured in Pantry.config.security

# File lib/pantry/communication/security.rb, line 24
def self.new_client(config = Pantry.config)
  handler_class(config).client
end
new_server(config = Pantry.config) click to toggle source

Build a Server implementation of the security strategy configured in Pantry.config.security

# File lib/pantry/communication/security.rb, line 30
def self.new_server(config = Pantry.config)
  handler_class(config).server
end