Module: Pantry::Communication::Security
- Defined in:
- lib/pantry/communication/security.rb,
lib/pantry/communication/security/null_security.rb,
lib/pantry/communication/security/authentication.rb,
lib/pantry/communication/security/curve_security.rb,
lib/pantry/communication/security/curve_key_store.rb
Defined Under Namespace
Classes: Authentication, CurveKeyStore, CurveSecurity, NullSecurity, UnknownSecurityStrategyError
Constant Summary collapse
- AVAILABLE_SECURITY =
{ nil => Pantry::Communication::Security::NullSecurity, "curve" => Pantry::Communication::Security::CurveSecurity }
Class Method Summary collapse
-
.curve_supported? ⇒ Boolean
Check if ZeroMQ is built properly to support Curve encryption.
- .handler_class(config) ⇒ Object
-
.new_client(config = Pantry.config) ⇒ Object
Build a Client implementation of the security strategy configured in Pantry.config.security.
-
.new_server(config = Pantry.config) ⇒ Object
Build a Server implementation of the security strategy configured in Pantry.config.security.
Class Method Details
.curve_supported? ⇒ Boolean
Check if ZeroMQ is built properly to support Curve encryption
13 14 15 16 17 18 19 20 |
# 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) ⇒ Object
34 35 36 37 38 39 40 |
# 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 |