class CertificateAuthority::Extensions::CertificatePolicies
Constants
- OPENSSL_IDENTIFIER
Attributes
cps_uris[RW]
critical[RW]
explicit_text[RW]
User notice
notice_numbers[RW]
organization[RW]
policy_identifier[RW]
Public Class Methods
new()
click to toggle source
# File vendor/certificate_authority/lib/certificate_authority/extensions.rb, line 491 def initialize self.critical = false @contains_data = false end
parse(value, critical)
click to toggle source
# File vendor/certificate_authority/lib/certificate_authority/extensions.rb, line 553 def self.parse(value, critical) obj = self.new return obj if value.nil? obj.critical = critical value.split(/,\s*/).each do |v| c = v.split(':', 2) obj.policy_identifier = c.last if c.first == "policyIdentifier" obj.cps_uris << c.last if c.first =~ %r{CPS.\d+} # TODO: explicit_text, organization, notice_numbers end obj end
Public Instance Methods
config_extensions()
click to toggle source
# File vendor/certificate_authority/lib/certificate_authority/extensions.rb, line 506 def config_extensions config_extension = {} custom_policies = {} notice = {} unless self.policy_identifier.nil? custom_policies["policyIdentifier"] = self.policy_identifier end if !self.cps_uris.nil? and self.cps_uris.is_a?(Array) self.cps_uris.each_with_index do |cps_uri,i| custom_policies["CPS.#{i}"] = cps_uri end end unless self.explicit_text.nil? notice["explicitText"] = self.explicit_text end unless self.organization.nil? notice["organization"] = self.organization end unless self.notice_numbers.nil? notice["noticeNumbers"] = self.notice_numbers end if notice.keys.size > 0 custom_policies["userNotice.1"] = "@notice" config_extension["notice"] = notice end if custom_policies.keys.size > 0 config_extension["custom_policies"] = custom_policies @contains_data = true end config_extension end
openssl_identifier()
click to toggle source
# File vendor/certificate_authority/lib/certificate_authority/extensions.rb, line 496 def openssl_identifier OPENSSL_IDENTIFIER end
to_s()
click to toggle source
# File vendor/certificate_authority/lib/certificate_authority/extensions.rb, line 545 def to_s return "" unless @contains_data res = [] res << "ia5org" res += @config_extensions["custom_policies"] unless @config_extensions.nil? res.join(',') end
user_notice=(value={})
click to toggle source
# File vendor/certificate_authority/lib/certificate_authority/extensions.rb, line 500 def user_notice=(value={}) value.keys.each do |key| self.send("#{key}=".to_sym, value[key]) end end