class CertificateAuthority::Extensions::SubjectAlternativeName
Specifies additional “names” for which this certificate is valid. Reference: Section 4.2.1.7 of RFC3280 tools.ietf.org/html/rfc3280#section-4.2.1.7
Constants
- OPENSSL_IDENTIFIER
Attributes
critical[RW]
dns_names[RW]
emails[RW]
ips[RW]
uris[RW]
Public Class Methods
new()
click to toggle source
# File vendor/certificate_authority/lib/certificate_authority/extensions.rb, line 413 def initialize @critical = false @uris = [] @dns_names = [] @ips = [] @emails = [] end
parse(value, critical)
click to toggle source
# File vendor/certificate_authority/lib/certificate_authority/extensions.rb, line 458 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.uris << c.last if c.first == "URI" obj.dns_names << c.last if c.first == "DNS" obj.ips << c.last if c.first == "IP" obj.emails << c.last if c.first == "EMAIL" end obj end
Public Instance Methods
==(o)
click to toggle source
# File vendor/certificate_authority/lib/certificate_authority/extensions.rb, line 454 def ==(o) o.class == self.class && o.state == state end
dns_names=(value)
click to toggle source
# File vendor/certificate_authority/lib/certificate_authority/extensions.rb, line 430 def dns_names=(value) raise "DNS names must be an array" unless value.is_a?(Array) @dns_names = value end
emails=(value)
click to toggle source
# File vendor/certificate_authority/lib/certificate_authority/extensions.rb, line 440 def emails=(value) raise "Emails must be an array" unless value.is_a?(Array) @emails = value end
ips=(value)
click to toggle source
# File vendor/certificate_authority/lib/certificate_authority/extensions.rb, line 435 def ips=(value) raise "IPs must be an array" unless value.is_a?(Array) @ips = value end
openssl_identifier()
click to toggle source
# File vendor/certificate_authority/lib/certificate_authority/extensions.rb, line 421 def openssl_identifier OPENSSL_IDENTIFIER end
to_s()
click to toggle source
# File vendor/certificate_authority/lib/certificate_authority/extensions.rb, line 445 def to_s res = [] res += @uris.map {|u| "URI:#{u}" } res += @dns_names.map {|d| "DNS:#{d}" } res += @ips.map {|i| "IP:#{i}" } res += @emails.map {|i| "email:#{i}" } res.join(',') end
uris=(value)
click to toggle source
# File vendor/certificate_authority/lib/certificate_authority/extensions.rb, line 425 def uris=(value) raise "URIs must be an array" unless value.is_a?(Array) @uris = value end
Protected Instance Methods
state()
click to toggle source
# File vendor/certificate_authority/lib/certificate_authority/extensions.rb, line 473 def state [@critical,@uris,@dns_names,@ips,@emails] end