def certs
      unless @@certs
        pattern = /-{5}BEGIN CERTIFICATE-{5}\n.*?-{5}END CERTIFICATE-{5}\n/m
        dir = @cert_directory
        certs = Dir[File.join(dir, '*.crt')].map {|f| File.read(f) }
        certs = certs.map {|c| c.scan(pattern) }.flatten
        certs.map! {|c| OpenSSL::X509::Certificate.new(c) }
        @@certs = certs.reject {|c| c.not_after < Time.now }
      end
      @@certs
    end
def certs
      unless @@certs
        pattern = /-{5}BEGIN CERTIFICATE-{5}\n.*?-{5}END CERTIFICATE-{5}\n/m
        dir = @cert_directory
        certs = Dir[File.join(dir, '*.crt')].map {|f| File.read(f) }
        certs = certs.map {|c| c.scan(pattern) }.flatten
        certs.map! {|c| OpenSSL::X509::Certificate.new(c) }
        @@certs = certs.reject {|c| c.not_after < Time.now }
      end
      @@certs
    end
def certs unless @@certs pattern = / \n \n /m dir = @cert_directory certs = Dir [ File . join ( dir , '*.crt' ) ] . map { | f | File . read ( f ) } certs = certs . map { | c | c . scan ( pattern ) } . flatten certs . map! { | c | OpenSSL :: X509 :: Certificate . new ( c ) } @@certs = certs . reject { | c | c . not_after < Time . now } end @@certs end
Return the trusted root CA certificates installed in the @cert_directory. These
 certificates are used to start the trust chain needed to validate certs
 we receive from clients and servers.
Return the trusted root CA certificates installed in the