Module: Certmeister::Policy

Defined in:
lib/certmeister/policy.rb,
lib/certmeister/policy/ip.rb,
lib/certmeister/policy/psk.rb,
lib/certmeister/policy/noop.rb,
lib/certmeister/policy/domain.rb,
lib/certmeister/policy/fcrdns.rb,
lib/certmeister/policy/existing.rb,
lib/certmeister/policy/response.rb,
lib/certmeister/policy/blackhole.rb,
lib/certmeister/policy/chain_all.rb,
lib/certmeister/policy/chain_any.rb

Defined Under Namespace

Classes: Blackhole, ChainAll, ChainAny, Domain, Existing, Fcrdns, IP, Noop, Psk, Response

Class Method Summary collapse

Class Method Details

.validate_authenticate_returns_response(policy) ⇒ Object



9
10
11
12
# File 'lib/certmeister/policy.rb', line 9

def self.validate_authenticate_returns_response(policy)
  response = policy.authenticate({})
  response.respond_to?(:authenticated?) and response.respond_to?(:error)
end

.validate_authenticate_signature(policy) ⇒ Object



5
6
7
# File 'lib/certmeister/policy.rb', line 5

def self.validate_authenticate_signature(policy)
  policy and policy.respond_to?(:authenticate) and policy.method(:authenticate).arity == 1
end

.validate_policies(policies) ⇒ Object



14
15
16
17
18
19
# File 'lib/certmeister/policy.rb', line 14

def self.validate_policies(policies)
  unless policies.is_a?(Enumerable) and policies.respond_to?(:size) and policies.size > 0 and
      policies.all? { |policy| self.validate_authenticate_signature(policy) }
    raise ArgumentError.new("enumerable collection of policies required")
  end
end