class SPF::Mech::SPF::Mech::Include
Constants
- NAME
Public Instance Methods
intitialize(options = {})
click to toggle source
Calls superclass method
# File lib/spf/model.rb, line 532 def intitialize(options = {}) super(options) @nested_record = nil end
match(server, request, want_result = true)
click to toggle source
# File lib/spf/model.rb, line 546 def match(server, request, want_result = true) server.count_dns_interactive_term(request) # Create sub-request with mutated authority domain: authority_domain = self.domain(server, request) sub_request = request.new_sub_request({:authority_domain => authority_domain}) # Process sub-request: result = server.process(sub_request) # Translate result of sub-request (RFC 4408, 5.9): return false unless want_result return true if SPF::Result::Pass === result return false if SPF::Result::Fail === result or SPF::Result::SoftFail === result or SPF::Result::Neutral === result server.throw_result(:permerror, request, "Include domain '#{authority_domain}' has no applicable sender policy") if SPF::Result::None === result # Propagate any other results (including {Perm,Temp}Error) as-is: raise result end
nested_record(server=nil, request=nil, loose_match = false)
click to toggle source
# File lib/spf/model.rb, line 576 def nested_record(server=nil, request=nil, loose_match = false) return @nested_record if @nested_record return nil unless server and request authority_domain = self.domain(server, request) sub_request = request.new_sub_request({:authority_domain => authority_domain}) return @nested_record = server.select_record(sub_request, loose_match) end
params()
click to toggle source
# File lib/spf/model.rb, line 542 def params return @domain_spec ? @domain_spec.to_s : nil end
parse_params(required = true)
click to toggle source
# File lib/spf/model.rb, line 537 def parse_params(required = true) @raw_params = @parse_text.dup self.parse_domain_spec(required) end