doc/R509/Cert.html in r509-0.8.1 vs doc/R509/Cert.html in r509-0.9
- old
+ new
@@ -4,11 +4,11 @@
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>
Class: R509::Cert
- — Documentation by YARD 0.8.2.1
+ — Documentation by YARD 0.8.5
</title>
<link rel="stylesheet" href="../css/style.css" type="text/css" media="screen" charset="utf-8" />
@@ -163,10 +163,39 @@
<li class="public ">
<span class="summary_signature">
+ <a href="#issuer-instance_method" title="#issuer (instance method)">- (Object) <strong>issuer</strong> </a>
+
+
+
+ </span>
+
+
+
+
+ <span class="note title readonly">readonly</span>
+
+
+
+
+
+
+
+
+
+ <span class="summary_desc"><div class='inline'>
+<p>Returns the value of attribute issuer.</p>
+</div></span>
+
+</li>
+
+
+ <li class="public ">
+ <span class="summary_signature">
+
<a href="#key-instance_method" title="#key (instance method)">- (Object) <strong>key</strong> </a>
</span>
@@ -189,10 +218,39 @@
</div></span>
</li>
+ <li class="public ">
+ <span class="summary_signature">
+
+ <a href="#subject-instance_method" title="#subject (instance method)">- (Object) <strong>subject</strong> </a>
+
+
+
+ </span>
+
+
+
+
+ <span class="note title readonly">readonly</span>
+
+
+
+
+
+
+
+
+
+ <span class="summary_desc"><div class='inline'>
+<p>Returns the value of attribute subject.</p>
+</div></span>
+
+</li>
+
+
</ul>
@@ -238,14 +296,40 @@
<ul class="summary">
<li class="public ">
<span class="summary_signature">
+ <a href="#all_names-instance_method" title="#all_names (instance method)">- (Array) <strong>all_names</strong> </a>
+
+
+
+ </span>
+
+
+
+
+
+
+
+
+
+ <span class="summary_desc"><div class='inline'>
+<p>Return the CN, as well as all the subject alternative names (SANs).</p>
+</div></span>
+
+</li>
+
+
+ <li class="public ">
+ <span class="summary_signature">
+
<a href="#authority_info_access-instance_method" title="#authority_info_access (instance method)">- (R509::Cert::Extensions::AuthorityInfoAccess) <strong>authority_info_access</strong> </a>
+ (also: #aia)
+
</span>
@@ -335,11 +419,11 @@
<li class="public ">
<span class="summary_signature">
- <a href="#crl_distribution_points-instance_method" title="#crl_distribution_points (instance method)">- (R509::Cert::Extensions::CrlDistributionPoints) <strong>crl_distribution_points</strong> </a>
+ <a href="#certificate_policies-instance_method" title="#certificate_policies (instance method)">- (R509::Cert::Extensions::CertificatePolicies) <strong>certificate_policies</strong> </a>
</span>
@@ -350,23 +434,25 @@
<span class="summary_desc"><div class='inline'>
-<p>Returns this object's CrlDistributionPoints extension as an R509 extension.</p>
+<p>Returns this object's CertificatePolicies extension as an R509 extension.</p>
</div></span>
</li>
<li class="public ">
<span class="summary_signature">
- <a href="#dsa%3F-instance_method" title="#dsa? (instance method)">- (Boolean) <strong>dsa?</strong> </a>
+ <a href="#crl_distribution_points-instance_method" title="#crl_distribution_points (instance method)">- (R509::Cert::Extensions::CRLDistributionPoints) <strong>crl_distribution_points</strong> </a>
+ (also: #cdp)
+
</span>
@@ -374,20 +460,20 @@
<span class="summary_desc"><div class='inline'>
-<p>Returns whether the public key is DSA.</p>
+<p>Returns this object's CRLDistributionPoints extension as an R509 extension.</p>
</div></span>
</li>
<li class="public ">
<span class="summary_signature">
- <a href="#extended_key_usage-instance_method" title="#extended_key_usage (instance method)">- (R509::Cert::Extensions::ExtendedKeyUsage) <strong>extended_key_usage</strong> </a>
+ <a href="#curve_name-instance_method" title="#curve_name (instance method)">- (String) <strong>curve_name</strong> </a>
</span>
@@ -398,20 +484,21 @@
<span class="summary_desc"><div class='inline'>
-<p>Returns this object's ExtendedKeyUsage extension as an R509 extension.</p>
+<p>Returns the short name of the elliptic curve used to generate the public
+key if the key is EC.</p>
</div></span>
</li>
<li class="public ">
<span class="summary_signature">
- <a href="#extensions-instance_method" title="#extensions (instance method)">- (Array) <strong>extensions</strong> </a>
+ <a href="#dsa%3F-instance_method" title="#dsa? (instance method)">- (Boolean) <strong>dsa?</strong> </a>
</span>
@@ -422,20 +509,20 @@
<span class="summary_desc"><div class='inline'>
-<p>Return the certificate extensions.</p>
+<p>Returns whether the public key is DSA.</p>
</div></span>
</li>
<li class="public ">
<span class="summary_signature">
- <a href="#fingerprint-instance_method" title="#fingerprint (instance method)">- (String) <strong>fingerprint</strong>(algorithm = 'sha1') </a>
+ <a href="#ec%3F-instance_method" title="#ec? (instance method)">- (Boolean) <strong>ec?</strong> </a>
</span>
@@ -446,24 +533,25 @@
<span class="summary_desc"><div class='inline'>
-<p>Returns the certificate fingerprint with the specified algorithm (default
-sha1).</p>
+<p>Returns whether the public key is EC.</p>
</div></span>
</li>
<li class="public ">
<span class="summary_signature">
- <a href="#has_private_key%3F-instance_method" title="#has_private_key? (instance method)">- (Boolean) <strong>has_private_key?</strong> </a>
+ <a href="#extended_key_usage-instance_method" title="#extended_key_usage (instance method)">- (R509::Cert::Extensions::ExtendedKeyUsage) <strong>extended_key_usage</strong> </a>
+ (also: #eku)
+
</span>
@@ -471,46 +559,45 @@
<span class="summary_desc"><div class='inline'>
-<p>Boolean of whether the object contains a private key.</p>
+<p>Returns this object's ExtendedKeyUsage extension as an R509 extension.</p>
</div></span>
</li>
<li class="public ">
<span class="summary_signature">
- <a href="#initialize-instance_method" title="#initialize (instance method)">- (Cert) <strong>initialize</strong>(opts = {}) </a>
+ <a href="#extensions-instance_method" title="#extensions (instance method)">- (Hash) <strong>extensions</strong> </a>
</span>
- <span class="note title constructor">constructor</span>
-
<span class="summary_desc"><div class='inline'>
-<p>A new instance of Cert.</p>
+<p>Returns the certificate extensions as a hash of R509::Cert::Extensions
+specific objects.</p>
</div></span>
</li>
<li class="public ">
<span class="summary_signature">
- <a href="#is_revoked_by_crl%3F-instance_method" title="#is_revoked_by_crl? (instance method)">- (Boolean) <strong>is_revoked_by_crl?</strong>(r509_crl) </a>
+ <a href="#fingerprint-instance_method" title="#fingerprint (instance method)">- (String) <strong>fingerprint</strong>(algorithm = 'sha1') </a>
</span>
@@ -521,20 +608,21 @@
<span class="summary_desc"><div class='inline'>
-<p>Checks the given CRL for this certificate's serial number.</p>
+<p>Returns the certificate fingerprint with the specified algorithm (default
+sha1).</p>
</div></span>
</li>
<li class="public ">
<span class="summary_signature">
- <a href="#issuer-instance_method" title="#issuer (instance method)">- (OpenSSL::X509::Name) <strong>issuer</strong> </a>
+ <a href="#has_private_key%3F-instance_method" title="#has_private_key? (instance method)">- (Boolean) <strong>has_private_key?</strong> </a>
</span>
@@ -545,20 +633,20 @@
<span class="summary_desc"><div class='inline'>
-<p>Returns the issuer.</p>
+<p>Boolean of whether the object contains a private key.</p>
</div></span>
</li>
<li class="public ">
<span class="summary_signature">
- <a href="#issuer_cn-instance_method" title="#issuer_cn (instance method)">- (String) <strong>issuer_cn</strong> </a>
+ <a href="#hexserial-instance_method" title="#hexserial (instance method)">- (String) <strong>hexserial</strong> </a>
</span>
@@ -569,20 +657,20 @@
<span class="summary_desc"><div class='inline'>
-<p>The common name (CN) component of the issuer.</p>
+<p>Returns the serial number of the certificate in hexadecimal form.</p>
</div></span>
</li>
<li class="public ">
<span class="summary_signature">
- <a href="#key_algorithm-instance_method" title="#key_algorithm (instance method)">- (String) <strong>key_algorithm</strong> </a>
+ <a href="#inhibit_any_policy-instance_method" title="#inhibit_any_policy (instance method)">- (R509::Cert::Extensions::InhibitAnyPolicy) <strong>inhibit_any_policy</strong> </a>
</span>
@@ -593,44 +681,46 @@
<span class="summary_desc"><div class='inline'>
-<p>Returns key algorithm (RSA or DSA).</p>
+<p>Returns this object's InhibitAnyPolicy extension as an R509 extension.</p>
</div></span>
</li>
<li class="public ">
<span class="summary_signature">
- <a href="#key_usage-instance_method" title="#key_usage (instance method)">- (R509::Cert::Extensions::KeyUsage) <strong>key_usage</strong> </a>
+ <a href="#initialize-instance_method" title="#initialize (instance method)">- (Cert) <strong>initialize</strong>(opts = {}) </a>
</span>
+ <span class="note title constructor">constructor</span>
+
<span class="summary_desc"><div class='inline'>
-<p>Returns this object's KeyUsage extension as an R509 extension.</p>
+<p>A new instance of Cert.</p>
</div></span>
</li>
<li class="public ">
<span class="summary_signature">
- <a href="#not_after-instance_method" title="#not_after (instance method)">- (Time) <strong>not_after</strong> </a>
+ <a href="#is_revoked_by_crl%3F-instance_method" title="#is_revoked_by_crl? (instance method)">- (Boolean) <strong>is_revoked_by_crl?</strong>(r509_crl) </a>
</span>
@@ -641,20 +731,20 @@
<span class="summary_desc"><div class='inline'>
-<p>Returns ending (notAfter) of certificate validity period.</p>
+<p>Checks the given CRL for this certificate's serial number.</p>
</div></span>
</li>
<li class="public ">
<span class="summary_signature">
- <a href="#not_before-instance_method" title="#not_before (instance method)">- (Time) <strong>not_before</strong> </a>
+ <a href="#key_algorithm-instance_method" title="#key_algorithm (instance method)">- (Symbol) <strong>key_algorithm</strong> </a>
</span>
@@ -665,23 +755,25 @@
<span class="summary_desc"><div class='inline'>
-<p>Returns beginning (notBefore) of certificate validity period.</p>
+<p>Returns key algorithm (RSA, DSA, EC).</p>
</div></span>
</li>
<li class="public ">
<span class="summary_signature">
- <a href="#public_key-instance_method" title="#public_key (instance method)">- (OpenSSL::PKey::RSA) <strong>public_key</strong> </a>
+ <a href="#key_usage-instance_method" title="#key_usage (instance method)">- (R509::Cert::Extensions::KeyUsage) <strong>key_usage</strong> </a>
+ (also: #ku)
+
</span>
@@ -689,20 +781,20 @@
<span class="summary_desc"><div class='inline'>
-<p>Returns the certificate public key.</p>
+<p>Returns this object's KeyUsage extension as an R509 extension.</p>
</div></span>
</li>
<li class="public ">
<span class="summary_signature">
- <a href="#r509_extensions-instance_method" title="#r509_extensions (instance method)">- (Hash) <strong>r509_extensions</strong> </a>
+ <a href="#name_constraints-instance_method" title="#name_constraints (instance method)">- (R509::Cert::Extensions::NameConstraints) <strong>name_constraints</strong> </a>
</span>
@@ -713,21 +805,20 @@
<span class="summary_desc"><div class='inline'>
-<p>Returns the certificate extensions as a hash of R509::Cert::Extensions
-specific objects.</p>
+<p>Returns this object's NameConstraints extension as an R509 extension.</p>
</div></span>
</li>
<li class="public ">
<span class="summary_signature">
- <a href="#rsa%3F-instance_method" title="#rsa? (instance method)">- (Boolean) <strong>rsa?</strong> </a>
+ <a href="#not_after-instance_method" title="#not_after (instance method)">- (Time) <strong>not_after</strong> </a>
</span>
@@ -738,20 +829,20 @@
<span class="summary_desc"><div class='inline'>
-<p>Returns whether the public key is RSA.</p>
+<p>Returns ending (notAfter) of certificate validity period.</p>
</div></span>
</li>
<li class="public ">
<span class="summary_signature">
- <a href="#san_names-instance_method" title="#san_names (instance method)">- (Array) <strong>san_names</strong> </a>
+ <a href="#not_before-instance_method" title="#not_before (instance method)">- (Time) <strong>not_before</strong> </a>
</span>
@@ -762,20 +853,20 @@
<span class="summary_desc"><div class='inline'>
-<p>List of SAN DNS names.</p>
+<p>Returns beginning (notBefore) of certificate validity period.</p>
</div></span>
</li>
<li class="public ">
<span class="summary_signature">
- <a href="#serial-instance_method" title="#serial (instance method)">- (Integer) <strong>serial</strong> </a>
+ <a href="#ocsp_no_check%3F-instance_method" title="#ocsp_no_check? (instance method)">- (Boolean) <strong>ocsp_no_check?</strong> </a>
</span>
@@ -786,20 +877,21 @@
<span class="summary_desc"><div class='inline'>
-<p>Returns the serial number of the certificate in decimal form.</p>
+<p>Returns true if the OCSP No Check extension is present (value is irrelevant
+to this extension).</p>
</div></span>
</li>
<li class="public ">
<span class="summary_signature">
- <a href="#signature_algorithm-instance_method" title="#signature_algorithm (instance method)">- (String) <strong>signature_algorithm</strong> </a>
+ <a href="#policy_constraints-instance_method" title="#policy_constraints (instance method)">- (R509::Cert::Extensions::PolicyConstraints) <strong>policy_constraints</strong> </a>
</span>
@@ -810,20 +902,20 @@
<span class="summary_desc"><div class='inline'>
-<p>Returns signature algorithm.</p>
+<p>Returns this object's PolicyConstraints extension as an R509 extension.</p>
</div></span>
</li>
<li class="public ">
<span class="summary_signature">
- <a href="#subject-instance_method" title="#subject (instance method)">- (OpenSSL::X509::Name) <strong>subject</strong> </a>
+ <a href="#public_key-instance_method" title="#public_key (instance method)">- (OpenSSL::PKey::RSA) <strong>public_key</strong> </a>
</span>
@@ -834,20 +926,20 @@
<span class="summary_desc"><div class='inline'>
-<p>Returns the subject.</p>
+<p>Returns the certificate public key.</p>
</div></span>
</li>
<li class="public ">
<span class="summary_signature">
- <a href="#subject_alternative_name-instance_method" title="#subject_alternative_name (instance method)">- (R509::Cert::Extensions::SubjectAlternativeName) <strong>subject_alternative_name</strong> </a>
+ <a href="#rsa%3F-instance_method" title="#rsa? (instance method)">- (Boolean) <strong>rsa?</strong> </a>
</span>
@@ -858,21 +950,20 @@
<span class="summary_desc"><div class='inline'>
-<p>Returns this object's SubjectAlternativeName extension as an R509
-extension.</p>
+<p>Returns whether the public key is RSA.</p>
</div></span>
</li>
<li class="public ">
<span class="summary_signature">
- <a href="#subject_cn-instance_method" title="#subject_cn (instance method)">- (String) <strong>subject_cn</strong> </a>
+ <a href="#serial-instance_method" title="#serial (instance method)">- (Integer) <strong>serial</strong> </a>
</span>
@@ -883,20 +974,20 @@
<span class="summary_desc"><div class='inline'>
-<p>Returns the CN component, if any, of the subject.</p>
+<p>Returns the serial number of the certificate in decimal form.</p>
</div></span>
</li>
<li class="public ">
<span class="summary_signature">
- <a href="#subject_component-instance_method" title="#subject_component (instance method)">- (String) <strong>subject_component</strong>(short_name) </a>
+ <a href="#signature_algorithm-instance_method" title="#signature_algorithm (instance method)">- (String) <strong>signature_algorithm</strong> </a>
</span>
@@ -907,23 +998,25 @@
<span class="summary_desc"><div class='inline'>
-<p>Returns subject component.</p>
+<p>Returns signature algorithm.</p>
</div></span>
</li>
<li class="public ">
<span class="summary_signature">
- <a href="#subject_key_identifier-instance_method" title="#subject_key_identifier (instance method)">- (R509::Cert::Extensions::SubjectKeyIdentifier) <strong>subject_key_identifier</strong> </a>
+ <a href="#subject_alternative_name-instance_method" title="#subject_alternative_name (instance method)">- (R509::Cert::Extensions::SubjectAlternativeName) <strong>subject_alternative_name</strong> </a>
+ (also: #san, #subject_alt_name)
+
</span>
@@ -931,20 +1024,21 @@
<span class="summary_desc"><div class='inline'>
-<p>Returns this object's SubjectKeyIdentifier extension as an R509 extension.</p>
+<p>Returns this object's SubjectAlternativeName extension as an R509
+extension.</p>
</div></span>
</li>
<li class="public ">
<span class="summary_signature">
- <a href="#subject_names-instance_method" title="#subject_names (instance method)">- (Array) <strong>subject_names</strong> </a>
+ <a href="#subject_key_identifier-instance_method" title="#subject_key_identifier (instance method)">- (R509::Cert::Extensions::SubjectKeyIdentifier) <strong>subject_key_identifier</strong> </a>
</span>
@@ -955,11 +1049,11 @@
<span class="summary_desc"><div class='inline'>
-<p>Return the CN, as well as all the subject alternative names (SANs).</p>
+<p>Returns this object's SubjectKeyIdentifier extension as an R509 extension.</p>
</div></span>
</li>
@@ -1312,48 +1406,40 @@
37
38
39
40
41
-42
-43
-44
-45
-46</pre>
+42</pre>
</td>
<td>
<pre class="code"><span class="info file"># File 'lib/r509/cert.rb', line 17</span>
<span class='kw'>def</span> <span class='id identifier rubyid_initialize'>initialize</span><span class='lparen'>(</span><span class='id identifier rubyid_opts'>opts</span><span class='op'>=</span><span class='lbrace'>{</span><span class='rbrace'>}</span><span class='rparen'>)</span>
- <span class='kw'>if</span> <span class='kw'>not</span> <span class='id identifier rubyid_opts'>opts</span><span class='period'>.</span><span class='id identifier rubyid_kind_of?'>kind_of?</span><span class='lparen'>(</span><span class='const'>Hash</span><span class='rparen'>)</span>
- <span class='id identifier rubyid_raise'>raise</span> <span class='const'>ArgumentError</span><span class='comma'>,</span> <span class='tstring'><span class='tstring_beg'>'</span><span class='tstring_content'>Must provide a hash of options</span><span class='tstring_end'>'</span></span>
- <span class='kw'>end</span>
- <span class='kw'>if</span> <span class='id identifier rubyid_opts'>opts</span><span class='period'>.</span><span class='id identifier rubyid_has_key?'>has_key?</span><span class='lparen'>(</span><span class='symbol'>:pkcs12</span><span class='rparen'>)</span> <span class='kw'>and</span> <span class='lparen'>(</span> <span class='id identifier rubyid_opts'>opts</span><span class='period'>.</span><span class='id identifier rubyid_has_key?'>has_key?</span><span class='lparen'>(</span><span class='symbol'>:key</span><span class='rparen'>)</span> <span class='kw'>or</span> <span class='id identifier rubyid_opts'>opts</span><span class='period'>.</span><span class='id identifier rubyid_has_key?'>has_key?</span><span class='lparen'>(</span><span class='symbol'>:cert</span><span class='rparen'>)</span> <span class='rparen'>)</span>
- <span class='id identifier rubyid_raise'>raise</span> <span class='const'>ArgumentError</span><span class='comma'>,</span> <span class='tstring'><span class='tstring_beg'>"</span><span class='tstring_content'>When providing pkcs12, do not pass cert or key</span><span class='tstring_end'>"</span></span>
- <span class='kw'>elsif</span> <span class='id identifier rubyid_opts'>opts</span><span class='period'>.</span><span class='id identifier rubyid_has_key?'>has_key?</span><span class='lparen'>(</span><span class='symbol'>:pkcs12</span><span class='rparen'>)</span>
- <span class='id identifier rubyid_pkcs12'>pkcs12</span> <span class='op'>=</span> <span class='const'>OpenSSL</span><span class='op'>::</span><span class='const'>PKCS12</span><span class='period'>.</span><span class='id identifier rubyid_new'>new</span><span class='lparen'>(</span> <span class='id identifier rubyid_opts'>opts</span><span class='lbracket'>[</span><span class='symbol'>:pkcs12</span><span class='rbracket'>]</span><span class='comma'>,</span> <span class='id identifier rubyid_opts'>opts</span><span class='lbracket'>[</span><span class='symbol'>:password</span><span class='rbracket'>]</span> <span class='rparen'>)</span>
- <span class='id identifier rubyid_parse_certificate'>parse_certificate</span><span class='lparen'>(</span><span class='id identifier rubyid_pkcs12'>pkcs12</span><span class='period'>.</span><span class='id identifier rubyid_certificate'>certificate</span><span class='rparen'>)</span>
- <span class='ivar'>@key</span> <span class='op'>=</span> <span class='const'>R509</span><span class='op'>::</span><span class='const'>PrivateKey</span><span class='period'>.</span><span class='id identifier rubyid_new'>new</span><span class='lparen'>(</span> <span class='symbol'>:key</span> <span class='op'>=></span> <span class='id identifier rubyid_pkcs12'>pkcs12</span><span class='period'>.</span><span class='id identifier rubyid_key'>key</span> <span class='rparen'>)</span>
- <span class='kw'>elsif</span> <span class='kw'>not</span> <span class='id identifier rubyid_opts'>opts</span><span class='period'>.</span><span class='id identifier rubyid_has_key?'>has_key?</span><span class='lparen'>(</span><span class='symbol'>:cert</span><span class='rparen'>)</span>
- <span class='id identifier rubyid_raise'>raise</span> <span class='const'>ArgumentError</span><span class='comma'>,</span> <span class='tstring'><span class='tstring_beg'>'</span><span class='tstring_content'>Must provide :cert or :pkcs12</span><span class='tstring_end'>'</span></span>
+ <span class='kw'>if</span> <span class='kw'>not</span> <span class='id identifier rubyid_opts'>opts</span><span class='period'>.</span><span class='id identifier rubyid_kind_of?'>kind_of?</span><span class='lparen'>(</span><span class='const'>Hash</span><span class='rparen'>)</span>
+ <span class='id identifier rubyid_raise'>raise</span> <span class='const'>ArgumentError</span><span class='comma'>,</span> <span class='tstring'><span class='tstring_beg'>'</span><span class='tstring_content'>Must provide a hash of options</span><span class='tstring_end'>'</span></span>
+ <span class='kw'>end</span>
+ <span class='kw'>if</span> <span class='id identifier rubyid_opts'>opts</span><span class='period'>.</span><span class='id identifier rubyid_has_key?'>has_key?</span><span class='lparen'>(</span><span class='symbol'>:pkcs12</span><span class='rparen'>)</span> <span class='kw'>and</span> <span class='lparen'>(</span> <span class='id identifier rubyid_opts'>opts</span><span class='period'>.</span><span class='id identifier rubyid_has_key?'>has_key?</span><span class='lparen'>(</span><span class='symbol'>:key</span><span class='rparen'>)</span> <span class='kw'>or</span> <span class='id identifier rubyid_opts'>opts</span><span class='period'>.</span><span class='id identifier rubyid_has_key?'>has_key?</span><span class='lparen'>(</span><span class='symbol'>:cert</span><span class='rparen'>)</span> <span class='rparen'>)</span>
+ <span class='id identifier rubyid_raise'>raise</span> <span class='const'>ArgumentError</span><span class='comma'>,</span> <span class='tstring'><span class='tstring_beg'>"</span><span class='tstring_content'>When providing pkcs12, do not pass cert or key</span><span class='tstring_end'>"</span></span>
+ <span class='kw'>elsif</span> <span class='id identifier rubyid_opts'>opts</span><span class='period'>.</span><span class='id identifier rubyid_has_key?'>has_key?</span><span class='lparen'>(</span><span class='symbol'>:pkcs12</span><span class='rparen'>)</span>
+ <span class='id identifier rubyid_pkcs12'>pkcs12</span> <span class='op'>=</span> <span class='const'>OpenSSL</span><span class='op'>::</span><span class='const'>PKCS12</span><span class='period'>.</span><span class='id identifier rubyid_new'>new</span><span class='lparen'>(</span> <span class='id identifier rubyid_opts'>opts</span><span class='lbracket'>[</span><span class='symbol'>:pkcs12</span><span class='rbracket'>]</span><span class='comma'>,</span> <span class='id identifier rubyid_opts'>opts</span><span class='lbracket'>[</span><span class='symbol'>:password</span><span class='rbracket'>]</span> <span class='rparen'>)</span>
+ <span class='id identifier rubyid_parse_certificate'>parse_certificate</span><span class='lparen'>(</span><span class='id identifier rubyid_pkcs12'>pkcs12</span><span class='period'>.</span><span class='id identifier rubyid_certificate'>certificate</span><span class='rparen'>)</span>
+ <span class='id identifier rubyid_key'>key</span> <span class='op'>=</span> <span class='const'>R509</span><span class='op'>::</span><span class='const'>PrivateKey</span><span class='period'>.</span><span class='id identifier rubyid_new'>new</span><span class='lparen'>(</span> <span class='symbol'>:key</span> <span class='op'>=></span> <span class='id identifier rubyid_pkcs12'>pkcs12</span><span class='period'>.</span><span class='id identifier rubyid_key'>key</span> <span class='rparen'>)</span>
+ <span class='kw'>elsif</span> <span class='kw'>not</span> <span class='id identifier rubyid_opts'>opts</span><span class='period'>.</span><span class='id identifier rubyid_has_key?'>has_key?</span><span class='lparen'>(</span><span class='symbol'>:cert</span><span class='rparen'>)</span>
+ <span class='id identifier rubyid_raise'>raise</span> <span class='const'>ArgumentError</span><span class='comma'>,</span> <span class='tstring'><span class='tstring_beg'>'</span><span class='tstring_content'>Must provide :cert or :pkcs12</span><span class='tstring_end'>'</span></span>
+ <span class='kw'>else</span>
+ <span class='id identifier rubyid_csr_check'>csr_check</span><span class='lparen'>(</span><span class='id identifier rubyid_opts'>opts</span><span class='lbracket'>[</span><span class='symbol'>:cert</span><span class='rbracket'>]</span><span class='rparen'>)</span>
+ <span class='id identifier rubyid_parse_certificate'>parse_certificate</span><span class='lparen'>(</span><span class='id identifier rubyid_opts'>opts</span><span class='lbracket'>[</span><span class='symbol'>:cert</span><span class='rbracket'>]</span><span class='rparen'>)</span>
+ <span class='kw'>end</span>
+
+ <span class='kw'>if</span> <span class='id identifier rubyid_opts'>opts</span><span class='period'>.</span><span class='id identifier rubyid_has_key?'>has_key?</span><span class='lparen'>(</span><span class='symbol'>:key</span><span class='rparen'>)</span>
+ <span class='kw'>if</span> <span class='id identifier rubyid_opts'>opts</span><span class='lbracket'>[</span><span class='symbol'>:key</span><span class='rbracket'>]</span><span class='period'>.</span><span class='id identifier rubyid_kind_of?'>kind_of?</span><span class='lparen'>(</span><span class='const'>R509</span><span class='op'>::</span><span class='const'>PrivateKey</span><span class='rparen'>)</span>
+ <span class='id identifier rubyid_key'>key</span> <span class='op'>=</span> <span class='id identifier rubyid_opts'>opts</span><span class='lbracket'>[</span><span class='symbol'>:key</span><span class='rbracket'>]</span>
<span class='kw'>else</span>
- <span class='id identifier rubyid_csr_check'>csr_check</span><span class='lparen'>(</span><span class='id identifier rubyid_opts'>opts</span><span class='lbracket'>[</span><span class='symbol'>:cert</span><span class='rbracket'>]</span><span class='rparen'>)</span>
- <span class='id identifier rubyid_parse_certificate'>parse_certificate</span><span class='lparen'>(</span><span class='id identifier rubyid_opts'>opts</span><span class='lbracket'>[</span><span class='symbol'>:cert</span><span class='rbracket'>]</span><span class='rparen'>)</span>
+ <span class='id identifier rubyid_key'>key</span> <span class='op'>=</span> <span class='const'>R509</span><span class='op'>::</span><span class='const'>PrivateKey</span><span class='period'>.</span><span class='id identifier rubyid_new'>new</span><span class='lparen'>(</span> <span class='symbol'>:key</span> <span class='op'>=></span> <span class='id identifier rubyid_opts'>opts</span><span class='lbracket'>[</span><span class='symbol'>:key</span><span class='rbracket'>]</span><span class='comma'>,</span> <span class='symbol'>:password</span> <span class='op'>=></span> <span class='id identifier rubyid_opts'>opts</span><span class='lbracket'>[</span><span class='symbol'>:password</span><span class='rbracket'>]</span> <span class='rparen'>)</span>
<span class='kw'>end</span>
-
- <span class='kw'>if</span> <span class='id identifier rubyid_opts'>opts</span><span class='period'>.</span><span class='id identifier rubyid_has_key?'>has_key?</span><span class='lparen'>(</span><span class='symbol'>:key</span><span class='rparen'>)</span>
- <span class='kw'>if</span> <span class='id identifier rubyid_opts'>opts</span><span class='lbracket'>[</span><span class='symbol'>:key</span><span class='rbracket'>]</span><span class='period'>.</span><span class='id identifier rubyid_kind_of?'>kind_of?</span><span class='lparen'>(</span><span class='const'>R509</span><span class='op'>::</span><span class='const'>PrivateKey</span><span class='rparen'>)</span>
- <span class='ivar'>@key</span> <span class='op'>=</span> <span class='id identifier rubyid_opts'>opts</span><span class='lbracket'>[</span><span class='symbol'>:key</span><span class='rbracket'>]</span>
- <span class='kw'>else</span>
- <span class='ivar'>@key</span> <span class='op'>=</span> <span class='const'>R509</span><span class='op'>::</span><span class='const'>PrivateKey</span><span class='period'>.</span><span class='id identifier rubyid_new'>new</span><span class='lparen'>(</span> <span class='symbol'>:key</span> <span class='op'>=></span> <span class='id identifier rubyid_opts'>opts</span><span class='lbracket'>[</span><span class='symbol'>:key</span><span class='rbracket'>]</span><span class='comma'>,</span> <span class='symbol'>:password</span> <span class='op'>=></span> <span class='id identifier rubyid_opts'>opts</span><span class='lbracket'>[</span><span class='symbol'>:password</span><span class='rbracket'>]</span> <span class='rparen'>)</span>
- <span class='kw'>end</span>
- <span class='kw'>end</span>
- <span class='kw'>if</span> <span class='kw'>not</span> <span class='ivar'>@key</span><span class='period'>.</span><span class='id identifier rubyid_nil?'>nil?</span>
- <span class='kw'>if</span> <span class='kw'>not</span> <span class='ivar'>@cert</span><span class='period'>.</span><span class='id identifier rubyid_public_key'>public_key</span><span class='period'>.</span><span class='id identifier rubyid_to_s'>to_s</span> <span class='op'>==</span> <span class='ivar'>@key</span><span class='period'>.</span><span class='id identifier rubyid_public_key'>public_key</span><span class='period'>.</span><span class='id identifier rubyid_to_s'>to_s</span> <span class='kw'>then</span>
- <span class='id identifier rubyid_raise'>raise</span> <span class='const'>R509Error</span><span class='comma'>,</span> <span class='tstring'><span class='tstring_beg'>'</span><span class='tstring_content'>Key does not match cert.</span><span class='tstring_end'>'</span></span>
- <span class='kw'>end</span>
- <span class='kw'>end</span>
+ <span class='kw'>end</span>
+ <span class='id identifier rubyid_associate_private_key'>associate_private_key</span><span class='lparen'>(</span><span class='id identifier rubyid_key'>key</span><span class='rparen'>)</span>
<span class='kw'>end</span></pre>
</td>
</tr>
</table>
</div>
@@ -1407,10 +1493,53 @@
</div>
<span id=""></span>
<div class="method_details ">
+ <h3 class="signature " id="issuer-instance_method">
+
+ - (<tt>Object</tt>) <strong>issuer</strong> <span class="extras">(readonly)</span>
+
+
+
+
+
+</h3><div class="docstring">
+ <div class="discussion">
+
+<p>Returns the value of attribute issuer</p>
+
+
+ </div>
+</div>
+<div class="tags">
+
+
+</div><table class="source_code">
+ <tr>
+ <td>
+ <pre class="lines">
+
+
+11
+12
+13</pre>
+ </td>
+ <td>
+ <pre class="code"><span class="info file"># File 'lib/r509/cert.rb', line 11</span>
+
+<span class='kw'>def</span> <span class='id identifier rubyid_issuer'>issuer</span>
+ <span class='ivar'>@issuer</span>
+<span class='kw'>end</span></pre>
+ </td>
+ </tr>
+</table>
+</div>
+
+
+ <span id=""></span>
+ <div class="method_details ">
<h3 class="signature " id="key-instance_method">
- (<tt>Object</tt>) <strong>key</strong> <span class="extras">(readonly)</span>
@@ -1447,13 +1576,56 @@
</td>
</tr>
</table>
</div>
+
+ <span id=""></span>
+ <div class="method_details ">
+ <h3 class="signature " id="subject-instance_method">
+
+ - (<tt>Object</tt>) <strong>subject</strong> <span class="extras">(readonly)</span>
+
+
+
+
+
+</h3><div class="docstring">
+ <div class="discussion">
+
+<p>Returns the value of attribute subject</p>
+
+
</div>
+</div>
+<div class="tags">
+
+</div><table class="source_code">
+ <tr>
+ <td>
+ <pre class="lines">
+
+11
+12
+13</pre>
+ </td>
+ <td>
+ <pre class="code"><span class="info file"># File 'lib/r509/cert.rb', line 11</span>
+
+<span class='kw'>def</span> <span class='id identifier rubyid_subject'>subject</span>
+ <span class='ivar'>@subject</span>
+<span class='kw'>end</span></pre>
+ </td>
+ </tr>
+</table>
+</div>
+
+ </div>
+
+
<div id="class_method_details" class="method_details_list">
<h2>Class Method Details</h2>
<div class="method_details first">
@@ -1518,19 +1690,19 @@
<tr>
<td>
<pre class="lines">
-52
-53
-54</pre>
+48
+49
+50</pre>
</td>
<td>
- <pre class="code"><span class="info file"># File 'lib/r509/cert.rb', line 52</span>
+ <pre class="code"><span class="info file"># File 'lib/r509/cert.rb', line 48</span>
<span class='kw'>def</span> <span class='kw'>self</span><span class='period'>.</span><span class='id identifier rubyid_load_from_file'>load_from_file</span><span class='lparen'>(</span> <span class='id identifier rubyid_filename'>filename</span> <span class='rparen'>)</span>
- <span class='kw'>return</span> <span class='const'>R509</span><span class='op'>::</span><span class='const'>Cert</span><span class='period'>.</span><span class='id identifier rubyid_new'>new</span><span class='lparen'>(</span><span class='symbol'>:cert</span> <span class='op'>=></span> <span class='const'>IOHelpers</span><span class='period'>.</span><span class='id identifier rubyid_read_data'>read_data</span><span class='lparen'>(</span><span class='id identifier rubyid_filename'>filename</span><span class='rparen'>)</span> <span class='rparen'>)</span>
+ <span class='kw'>return</span> <span class='const'>R509</span><span class='op'>::</span><span class='const'>Cert</span><span class='period'>.</span><span class='id identifier rubyid_new'>new</span><span class='lparen'>(</span><span class='symbol'>:cert</span> <span class='op'>=></span> <span class='const'>IOHelpers</span><span class='period'>.</span><span class='id identifier rubyid_read_data'>read_data</span><span class='lparen'>(</span><span class='id identifier rubyid_filename'>filename</span><span class='rparen'>)</span> <span class='rparen'>)</span>
<span class='kw'>end</span></pre>
</td>
</tr>
</table>
</div>
@@ -1540,24 +1712,98 @@
<div id="instance_method_details" class="method_details_list">
<h2>Instance Method Details</h2>
<div class="method_details first">
- <h3 class="signature first" id="authority_info_access-instance_method">
+ <h3 class="signature first" id="all_names-instance_method">
+ - (<tt>Array</tt>) <strong>all_names</strong>
+
+
+
+
+
+</h3><div class="docstring">
+ <div class="discussion">
+
+<p>Return the CN, as well as all the subject alternative names (SANs).</p>
+
+
+ </div>
+</div>
+<div class="tags">
+
+<p class="tag_title">Returns:</p>
+<ul class="return">
+
+ <li>
+
+
+ <span class='type'>(<tt>Array</tt>)</span>
+
+
+
+ —
+ <div class='inline'>
+<p>the array of names. Returns an empty array if there are no names, at all.
+Discards SAN types</p>
+</div>
+
+ </li>
+
+</ul>
+
+</div><table class="source_code">
+ <tr>
+ <td>
+ <pre class="lines">
+
+
+156
+157
+158
+159
+160
+161
+162</pre>
+ </td>
+ <td>
+ <pre class="code"><span class="info file"># File 'lib/r509/cert.rb', line 156</span>
+
+<span class='kw'>def</span> <span class='id identifier rubyid_all_names'>all_names</span>
+ <span class='id identifier rubyid_ret'>ret</span> <span class='op'>=</span> <span class='lbracket'>[</span><span class='rbracket'>]</span>
+ <span class='id identifier rubyid_ret'>ret</span> <span class='op'><<</span> <span class='ivar'>@subject</span><span class='period'>.</span><span class='const'>CN</span> <span class='kw'>unless</span> <span class='ivar'>@subject</span><span class='period'>.</span><span class='const'>CN</span><span class='period'>.</span><span class='id identifier rubyid_nil?'>nil?</span>
+ <span class='id identifier rubyid_ret'>ret</span><span class='period'>.</span><span class='id identifier rubyid_concat'>concat</span><span class='lparen'>(</span> <span class='kw'>self</span><span class='period'>.</span><span class='id identifier rubyid_san'>san</span><span class='period'>.</span><span class='id identifier rubyid_names'>names</span><span class='period'>.</span><span class='id identifier rubyid_map'>map</span> <span class='lbrace'>{</span> <span class='op'>|</span><span class='id identifier rubyid_n'>n</span><span class='op'>|</span> <span class='id identifier rubyid_n'>n</span><span class='period'>.</span><span class='id identifier rubyid_value'>value</span> <span class='rbrace'>}</span> <span class='rparen'>)</span> <span class='kw'>unless</span> <span class='kw'>self</span><span class='period'>.</span><span class='id identifier rubyid_san'>san</span><span class='period'>.</span><span class='id identifier rubyid_nil?'>nil?</span>
+
+ <span class='kw'>return</span> <span class='id identifier rubyid_ret'>ret</span><span class='period'>.</span><span class='id identifier rubyid_sort'>sort</span><span class='period'>.</span><span class='id identifier rubyid_uniq'>uniq</span>
+<span class='kw'>end</span></pre>
+ </td>
+ </tr>
+</table>
+</div>
+
+ <div class="method_details ">
+ <h3 class="signature " id="authority_info_access-instance_method">
+
- (<tt><span class='object_link'><a href="Cert/Extensions/AuthorityInfoAccess.html" title="R509::Cert::Extensions::AuthorityInfoAccess (class)">R509::Cert::Extensions::AuthorityInfoAccess</a></span></tt>) <strong>authority_info_access</strong>
+ <span class="aliases">Also known as:
+ <span class="names"><span id='aia-instance_method'>aia</span></span>
+ </span>
+
</h3><div class="docstring">
<div class="discussion">
<p>Returns this object's AuthorityInfoAccess extension as an R509 extension</p>
+<p>if this cert does not have a AuthorityInfoAccess extension.</p>
+
</div>
</div>
<div class="tags">
<p class="tag_title">Returns:</p>
@@ -1570,12 +1816,11 @@
—
<div class='inline'>
-<p>The object, or nil if this cert does not have a AuthorityInfoAccess
-extension.</p>
+<p>The object, or nil</p>
</div>
</li>
</ul>
@@ -1584,19 +1829,19 @@
<tr>
<td>
<pre class="lines">
-385
-386
-387</pre>
+349
+350
+351</pre>
</td>
<td>
- <pre class="code"><span class="info file"># File 'lib/r509/cert.rb', line 385</span>
+ <pre class="code"><span class="info file"># File 'lib/r509/cert.rb', line 349</span>
<span class='kw'>def</span> <span class='id identifier rubyid_authority_info_access'>authority_info_access</span>
- <span class='kw'>return</span> <span class='id identifier rubyid_r509_extensions'>r509_extensions</span><span class='lbracket'>[</span><span class='const'>R509</span><span class='op'>::</span><span class='const'>Cert</span><span class='op'>::</span><span class='const'>Extensions</span><span class='op'>::</span><span class='const'>AuthorityInfoAccess</span><span class='rbracket'>]</span>
+ <span class='kw'>return</span> <span class='id identifier rubyid_extensions'>extensions</span><span class='lbracket'>[</span><span class='const'>R509</span><span class='op'>::</span><span class='const'>Cert</span><span class='op'>::</span><span class='const'>Extensions</span><span class='op'>::</span><span class='const'>AuthorityInfoAccess</span><span class='rbracket'>]</span>
<span class='kw'>end</span></pre>
</td>
</tr>
</table>
</div>
@@ -1613,11 +1858,13 @@
</h3><div class="docstring">
<div class="discussion">
<p>Returns this object's AuthorityKeyIdentifier extension as an R509 extension</p>
+<p>if this cert does not have a AuthorityKeyIdentifier extension.</p>
+
</div>
</div>
<div class="tags">
<p class="tag_title">Returns:</p>
@@ -1630,12 +1877,11 @@
—
<div class='inline'>
-<p>The object, or nil if this cert does not have a AuthorityKeyIdentifier
-extension.</p>
+<p>The object, or nil</p>
</div>
</li>
</ul>
@@ -1644,19 +1890,19 @@
<tr>
<td>
<pre class="lines">
-369
-370
-371</pre>
+331
+332
+333</pre>
</td>
<td>
- <pre class="code"><span class="info file"># File 'lib/r509/cert.rb', line 369</span>
+ <pre class="code"><span class="info file"># File 'lib/r509/cert.rb', line 331</span>
<span class='kw'>def</span> <span class='id identifier rubyid_authority_key_identifier'>authority_key_identifier</span>
- <span class='kw'>return</span> <span class='id identifier rubyid_r509_extensions'>r509_extensions</span><span class='lbracket'>[</span><span class='const'>R509</span><span class='op'>::</span><span class='const'>Cert</span><span class='op'>::</span><span class='const'>Extensions</span><span class='op'>::</span><span class='const'>AuthorityKeyIdentifier</span><span class='rbracket'>]</span>
+ <span class='kw'>return</span> <span class='id identifier rubyid_extensions'>extensions</span><span class='lbracket'>[</span><span class='const'>R509</span><span class='op'>::</span><span class='const'>Cert</span><span class='op'>::</span><span class='const'>Extensions</span><span class='op'>::</span><span class='const'>AuthorityKeyIdentifier</span><span class='rbracket'>]</span>
<span class='kw'>end</span></pre>
</td>
</tr>
</table>
</div>
@@ -1673,11 +1919,13 @@
</h3><div class="docstring">
<div class="discussion">
<p>Returns this object's BasicConstraints extension as an R509 extension</p>
+<p>if this cert does not have a BasicConstraints extension.</p>
+
</div>
</div>
<div class="tags">
<p class="tag_title">Returns:</p>
@@ -1690,11 +1938,11 @@
—
<div class='inline'>
-<p>The object, or nil if this cert does not have a BasicConstraints extension.</p>
+<p>The object, or nil</p>
</div>
</li>
</ul>
@@ -1703,19 +1951,19 @@
<tr>
<td>
<pre class="lines">
-337
-338
-339</pre>
+297
+298
+299</pre>
</td>
<td>
- <pre class="code"><span class="info file"># File 'lib/r509/cert.rb', line 337</span>
+ <pre class="code"><span class="info file"># File 'lib/r509/cert.rb', line 297</span>
<span class='kw'>def</span> <span class='id identifier rubyid_basic_constraints'>basic_constraints</span>
- <span class='kw'>return</span> <span class='id identifier rubyid_r509_extensions'>r509_extensions</span><span class='lbracket'>[</span><span class='const'>R509</span><span class='op'>::</span><span class='const'>Cert</span><span class='op'>::</span><span class='const'>Extensions</span><span class='op'>::</span><span class='const'>BasicConstraints</span><span class='rbracket'>]</span>
+ <span class='kw'>return</span> <span class='id identifier rubyid_extensions'>extensions</span><span class='lbracket'>[</span><span class='const'>R509</span><span class='op'>::</span><span class='const'>Cert</span><span class='op'>::</span><span class='const'>Extensions</span><span class='op'>::</span><span class='const'>BasicConstraints</span><span class='rbracket'>]</span>
<span class='kw'>end</span></pre>
</td>
</tr>
</table>
</div>
@@ -1762,66 +2010,71 @@
<tr>
<td>
<pre class="lines">
-230
-231
-232
-233
-234
-235
-236</pre>
+188
+189
+190
+191
+192
+193
+194
+195
+196</pre>
</td>
<td>
- <pre class="code"><span class="info file"># File 'lib/r509/cert.rb', line 230</span>
+ <pre class="code"><span class="info file"># File 'lib/r509/cert.rb', line 188</span>
<span class='kw'>def</span> <span class='id identifier rubyid_bit_strength'>bit_strength</span>
- <span class='kw'>if</span> <span class='kw'>self</span><span class='period'>.</span><span class='id identifier rubyid_rsa?'>rsa?</span>
- <span class='kw'>return</span> <span class='ivar'>@cert</span><span class='period'>.</span><span class='id identifier rubyid_public_key'>public_key</span><span class='period'>.</span><span class='id identifier rubyid_n'>n</span><span class='period'>.</span><span class='id identifier rubyid_num_bits'>num_bits</span>
- <span class='kw'>elsif</span> <span class='kw'>self</span><span class='period'>.</span><span class='id identifier rubyid_dsa?'>dsa?</span>
- <span class='kw'>return</span> <span class='ivar'>@cert</span><span class='period'>.</span><span class='id identifier rubyid_public_key'>public_key</span><span class='period'>.</span><span class='id identifier rubyid_p'>p</span><span class='period'>.</span><span class='id identifier rubyid_num_bits'>num_bits</span>
- <span class='kw'>end</span>
+ <span class='kw'>if</span> <span class='kw'>self</span><span class='period'>.</span><span class='id identifier rubyid_rsa?'>rsa?</span>
+ <span class='kw'>return</span> <span class='ivar'>@cert</span><span class='period'>.</span><span class='id identifier rubyid_public_key'>public_key</span><span class='period'>.</span><span class='id identifier rubyid_n'>n</span><span class='period'>.</span><span class='id identifier rubyid_num_bits'>num_bits</span>
+ <span class='kw'>elsif</span> <span class='kw'>self</span><span class='period'>.</span><span class='id identifier rubyid_dsa?'>dsa?</span>
+ <span class='kw'>return</span> <span class='ivar'>@cert</span><span class='period'>.</span><span class='id identifier rubyid_public_key'>public_key</span><span class='period'>.</span><span class='id identifier rubyid_p'>p</span><span class='period'>.</span><span class='id identifier rubyid_num_bits'>num_bits</span>
+ <span class='kw'>elsif</span> <span class='kw'>self</span><span class='period'>.</span><span class='id identifier rubyid_ec?'>ec?</span>
+ <span class='id identifier rubyid_raise'>raise</span> <span class='const'>R509</span><span class='op'>::</span><span class='const'>R509Error</span><span class='comma'>,</span> <span class='tstring'><span class='tstring_beg'>'</span><span class='tstring_content'>Bit strength is not available for EC at this time.</span><span class='tstring_end'>'</span></span>
+ <span class='kw'>end</span>
<span class='kw'>end</span></pre>
</td>
</tr>
</table>
</div>
<div class="method_details ">
- <h3 class="signature " id="crl_distribution_points-instance_method">
+ <h3 class="signature " id="certificate_policies-instance_method">
- - (<tt><span class='object_link'><a href="Cert/Extensions/CrlDistributionPoints.html" title="R509::Cert::Extensions::CrlDistributionPoints (class)">R509::Cert::Extensions::CrlDistributionPoints</a></span></tt>) <strong>crl_distribution_points</strong>
+ - (<tt><span class='object_link'><a href="Cert/Extensions/CertificatePolicies.html" title="R509::Cert::Extensions::CertificatePolicies (class)">R509::Cert::Extensions::CertificatePolicies</a></span></tt>) <strong>certificate_policies</strong>
</h3><div class="docstring">
<div class="discussion">
-<p>Returns this object's CrlDistributionPoints extension as an R509 extension</p>
+<p>Returns this object's CertificatePolicies extension as an R509 extension</p>
+<p>if this cert does not have a CertificatePolicies extension.</p>
+
</div>
</div>
<div class="tags">
<p class="tag_title">Returns:</p>
<ul class="return">
<li>
- <span class='type'>(<tt><span class='object_link'><a href="Cert/Extensions/CrlDistributionPoints.html" title="R509::Cert::Extensions::CrlDistributionPoints (class)">R509::Cert::Extensions::CrlDistributionPoints</a></span></tt>)</span>
+ <span class='type'>(<tt><span class='object_link'><a href="Cert/Extensions/CertificatePolicies.html" title="R509::Cert::Extensions::CertificatePolicies (class)">R509::Cert::Extensions::CertificatePolicies</a></span></tt>)</span>
—
<div class='inline'>
-<p>The object, or nil if this cert does not have a CrlDistributionPoints
-extension.</p>
+<p>The object, or nil</p>
</div>
</li>
</ul>
@@ -1830,57 +2083,63 @@
<tr>
<td>
<pre class="lines">
-393
-394
-395</pre>
+375
+376
+377</pre>
</td>
<td>
- <pre class="code"><span class="info file"># File 'lib/r509/cert.rb', line 393</span>
+ <pre class="code"><span class="info file"># File 'lib/r509/cert.rb', line 375</span>
-<span class='kw'>def</span> <span class='id identifier rubyid_crl_distribution_points'>crl_distribution_points</span>
- <span class='kw'>return</span> <span class='id identifier rubyid_r509_extensions'>r509_extensions</span><span class='lbracket'>[</span><span class='const'>R509</span><span class='op'>::</span><span class='const'>Cert</span><span class='op'>::</span><span class='const'>Extensions</span><span class='op'>::</span><span class='const'>CrlDistributionPoints</span><span class='rbracket'>]</span>
+<span class='kw'>def</span> <span class='id identifier rubyid_certificate_policies'>certificate_policies</span>
+ <span class='kw'>return</span> <span class='id identifier rubyid_extensions'>extensions</span><span class='lbracket'>[</span><span class='const'>R509</span><span class='op'>::</span><span class='const'>Cert</span><span class='op'>::</span><span class='const'>Extensions</span><span class='op'>::</span><span class='const'>CertificatePolicies</span><span class='rbracket'>]</span>
<span class='kw'>end</span></pre>
</td>
</tr>
</table>
</div>
<div class="method_details ">
- <h3 class="signature " id="dsa?-instance_method">
+ <h3 class="signature " id="crl_distribution_points-instance_method">
- - (<tt>Boolean</tt>) <strong>dsa?</strong>
+ - (<tt><span class='object_link'><a href="Cert/Extensions/CRLDistributionPoints.html" title="R509::Cert::Extensions::CRLDistributionPoints (class)">R509::Cert::Extensions::CRLDistributionPoints</a></span></tt>) <strong>crl_distribution_points</strong>
+ <span class="aliases">Also known as:
+ <span class="names"><span id='cdp-instance_method'>cdp</span></span>
+ </span>
+
</h3><div class="docstring">
<div class="discussion">
-<p>Returns whether the public key is DSA</p>
+<p>Returns this object's CRLDistributionPoints extension as an R509 extension</p>
+<p>if this cert does not have a CRLDistributionPoints extension.</p>
+
</div>
</div>
<div class="tags">
<p class="tag_title">Returns:</p>
<ul class="return">
<li>
- <span class='type'>(<tt>Boolean</tt>)</span>
+ <span class='type'>(<tt><span class='object_link'><a href="Cert/Extensions/CRLDistributionPoints.html" title="R509::Cert::Extensions::CRLDistributionPoints (class)">R509::Cert::Extensions::CRLDistributionPoints</a></span></tt>)</span>
—
<div class='inline'>
-<p>true if the public key is DSA, false otherwise</p>
+<p>The object, or nil</p>
</div>
</li>
</ul>
@@ -1889,38 +2148,39 @@
<tr>
<td>
<pre class="lines">
-223
-224
-225</pre>
+358
+359
+360</pre>
</td>
<td>
- <pre class="code"><span class="info file"># File 'lib/r509/cert.rb', line 223</span>
+ <pre class="code"><span class="info file"># File 'lib/r509/cert.rb', line 358</span>
-<span class='kw'>def</span> <span class='id identifier rubyid_dsa?'>dsa?</span>
- <span class='ivar'>@cert</span><span class='period'>.</span><span class='id identifier rubyid_public_key'>public_key</span><span class='period'>.</span><span class='id identifier rubyid_kind_of?'>kind_of?</span><span class='lparen'>(</span><span class='const'>OpenSSL</span><span class='op'>::</span><span class='const'>PKey</span><span class='op'>::</span><span class='const'>DSA</span><span class='rparen'>)</span>
+<span class='kw'>def</span> <span class='id identifier rubyid_crl_distribution_points'>crl_distribution_points</span>
+ <span class='kw'>return</span> <span class='id identifier rubyid_extensions'>extensions</span><span class='lbracket'>[</span><span class='const'>R509</span><span class='op'>::</span><span class='const'>Cert</span><span class='op'>::</span><span class='const'>Extensions</span><span class='op'>::</span><span class='const'>CRLDistributionPoints</span><span class='rbracket'>]</span>
<span class='kw'>end</span></pre>
</td>
</tr>
</table>
</div>
<div class="method_details ">
- <h3 class="signature " id="extended_key_usage-instance_method">
+ <h3 class="signature " id="curve_name-instance_method">
- - (<tt><span class='object_link'><a href="Cert/Extensions/ExtendedKeyUsage.html" title="R509::Cert::Extensions::ExtendedKeyUsage (class)">R509::Cert::Extensions::ExtendedKeyUsage</a></span></tt>) <strong>extended_key_usage</strong>
+ - (<tt>String</tt>) <strong>curve_name</strong>
</h3><div class="docstring">
<div class="discussion">
-<p>Returns this object's ExtendedKeyUsage extension as an R509 extension</p>
+<p>Returns the short name of the elliptic curve used to generate the public
+key if the key is EC. If not, raises an error.</p>
</div>
</div>
<div class="tags">
@@ -1929,17 +2189,17 @@
<ul class="return">
<li>
- <span class='type'>(<tt><span class='object_link'><a href="Cert/Extensions/ExtendedKeyUsage.html" title="R509::Cert::Extensions::ExtendedKeyUsage (class)">R509::Cert::Extensions::ExtendedKeyUsage</a></span></tt>)</span>
+ <span class='type'>(<tt>String</tt>)</span>
—
<div class='inline'>
-<p>The object, or nil if this cert does not have a ExtendedKeyUsage extension.</p>
+<p>elliptic curve name</p>
</div>
</li>
</ul>
@@ -1948,38 +2208,46 @@
<tr>
<td>
<pre class="lines">
-353
-354
-355</pre>
+202
+203
+204
+205
+206
+207
+208</pre>
</td>
<td>
- <pre class="code"><span class="info file"># File 'lib/r509/cert.rb', line 353</span>
+ <pre class="code"><span class="info file"># File 'lib/r509/cert.rb', line 202</span>
-<span class='kw'>def</span> <span class='id identifier rubyid_extended_key_usage'>extended_key_usage</span>
- <span class='kw'>return</span> <span class='id identifier rubyid_r509_extensions'>r509_extensions</span><span class='lbracket'>[</span><span class='const'>R509</span><span class='op'>::</span><span class='const'>Cert</span><span class='op'>::</span><span class='const'>Extensions</span><span class='op'>::</span><span class='const'>ExtendedKeyUsage</span><span class='rbracket'>]</span>
+<span class='kw'>def</span> <span class='id identifier rubyid_curve_name'>curve_name</span>
+ <span class='kw'>if</span> <span class='kw'>self</span><span class='period'>.</span><span class='id identifier rubyid_ec?'>ec?</span>
+ <span class='ivar'>@cert</span><span class='period'>.</span><span class='id identifier rubyid_public_key'>public_key</span><span class='period'>.</span><span class='id identifier rubyid_group'>group</span><span class='period'>.</span><span class='id identifier rubyid_curve_name'>curve_name</span>
+ <span class='kw'>else</span>
+ <span class='id identifier rubyid_raise'>raise</span> <span class='const'>R509</span><span class='op'>::</span><span class='const'>R509Error</span><span class='comma'>,</span> <span class='tstring'><span class='tstring_beg'>'</span><span class='tstring_content'>Curve name is only available with EC certs</span><span class='tstring_end'>'</span></span>
+ <span class='kw'>end</span>
<span class='kw'>end</span></pre>
</td>
</tr>
</table>
</div>
<div class="method_details ">
- <h3 class="signature " id="extensions-instance_method">
+ <h3 class="signature " id="dsa?-instance_method">
- - (<tt>Array</tt>) <strong>extensions</strong>
+ - (<tt>Boolean</tt>) <strong>dsa?</strong>
</h3><div class="docstring">
<div class="discussion">
-<p>Return the certificate extensions</p>
+<p>Returns whether the public key is DSA</p>
</div>
</div>
<div class="tags">
@@ -1988,17 +2256,17 @@
<ul class="return">
<li>
- <span class='type'>(<tt>Array</tt>)</span>
+ <span class='type'>(<tt>Boolean</tt>)</span>
—
<div class='inline'>
-<p>an array of hashes representing the extensions in the cert</p>
+<p>true if the public key is DSA, false otherwise</p>
</div>
</li>
</ul>
@@ -2007,95 +2275,57 @@
<tr>
<td>
<pre class="lines">
-295
-296
-297
-298
-299
-300
-301
-302
-303
-304</pre>
+174
+175
+176</pre>
</td>
<td>
- <pre class="code"><span class="info file"># File 'lib/r509/cert.rb', line 295</span>
+ <pre class="code"><span class="info file"># File 'lib/r509/cert.rb', line 174</span>
-<span class='kw'>def</span> <span class='id identifier rubyid_extensions'>extensions</span>
- <span class='kw'>if</span> <span class='ivar'>@extensions</span><span class='period'>.</span><span class='id identifier rubyid_nil?'>nil?</span>
- <span class='ivar'>@extensions</span> <span class='op'>=</span> <span class='const'>Hash</span><span class='period'>.</span><span class='id identifier rubyid_new'>new</span>
- <span class='ivar'>@cert</span><span class='period'>.</span><span class='id identifier rubyid_extensions'>extensions</span><span class='period'>.</span><span class='id identifier rubyid_each'>each</span> <span class='lbrace'>{</span> <span class='op'>|</span><span class='id identifier rubyid_extension'>extension</span><span class='op'>|</span>
- <span class='id identifier rubyid_hash'>hash</span> <span class='op'>=</span> <span class='lbrace'>{</span><span class='tstring'><span class='tstring_beg'>'</span><span class='tstring_content'>value</span><span class='tstring_end'>'</span></span> <span class='op'>=></span> <span class='id identifier rubyid_extension'>extension</span><span class='period'>.</span><span class='id identifier rubyid_value'>value</span><span class='comma'>,</span> <span class='tstring'><span class='tstring_beg'>'</span><span class='tstring_content'>critical</span><span class='tstring_end'>'</span></span> <span class='op'>=></span> <span class='id identifier rubyid_extension'>extension</span><span class='period'>.</span><span class='id identifier rubyid_critical?'>critical?</span><span class='rbrace'>}</span>
- <span class='ivar'>@extensions</span><span class='lbracket'>[</span><span class='id identifier rubyid_extension'>extension</span><span class='period'>.</span><span class='id identifier rubyid_oid'>oid</span><span class='rbracket'>]</span> <span class='op'>=</span> <span class='id identifier rubyid_hash'>hash</span>
- <span class='rbrace'>}</span>
- <span class='kw'>end</span>
- <span class='ivar'>@extensions</span>
+<span class='kw'>def</span> <span class='id identifier rubyid_dsa?'>dsa?</span>
+ <span class='ivar'>@cert</span><span class='period'>.</span><span class='id identifier rubyid_public_key'>public_key</span><span class='period'>.</span><span class='id identifier rubyid_kind_of?'>kind_of?</span><span class='lparen'>(</span><span class='const'>OpenSSL</span><span class='op'>::</span><span class='const'>PKey</span><span class='op'>::</span><span class='const'>DSA</span><span class='rparen'>)</span>
<span class='kw'>end</span></pre>
</td>
</tr>
</table>
</div>
<div class="method_details ">
- <h3 class="signature " id="fingerprint-instance_method">
+ <h3 class="signature " id="ec?-instance_method">
- - (<tt>String</tt>) <strong>fingerprint</strong>(algorithm = 'sha1')
+ - (<tt>Boolean</tt>) <strong>ec?</strong>
</h3><div class="docstring">
<div class="discussion">
-<p>Returns the certificate fingerprint with the specified algorithm (default
-sha1)</p>
+<p>Returns whether the public key is EC</p>
</div>
</div>
<div class="tags">
- <p class="tag_title">Parameters:</p>
-<ul class="param">
- <li>
-
- <span class='name'>algorithm</span>
-
-
- <span class='type'>(<tt>String</tt>)</span>
-
-
- <em class="default">(defaults to: <tt>'sha1'</tt>)</em>
-
-
- —
- <div class='inline'>
-<p>Which algorithm to use for the fingerprint. See R509::MessageDigest for
-supported algorithm names</p>
-</div>
-
- </li>
-
-</ul>
-
<p class="tag_title">Returns:</p>
<ul class="return">
<li>
- <span class='type'>(<tt>String</tt>)</span>
+ <span class='type'>(<tt>Boolean</tt>)</span>
—
<div class='inline'>
-<p>hex digest of the certificate</p>
+<p>true if the public key is EC, false otherwise</p>
</div>
</li>
</ul>
@@ -2104,63 +2334,63 @@
<tr>
<td>
<pre class="lines">
-129
-130
-131
-132
-133
-134</pre>
+181
+182
+183</pre>
</td>
<td>
- <pre class="code"><span class="info file"># File 'lib/r509/cert.rb', line 129</span>
+ <pre class="code"><span class="info file"># File 'lib/r509/cert.rb', line 181</span>
-<span class='kw'>def</span> <span class='id identifier rubyid_fingerprint'>fingerprint</span><span class='lparen'>(</span><span class='id identifier rubyid_algorithm'>algorithm</span><span class='op'>=</span><span class='tstring'><span class='tstring_beg'>'</span><span class='tstring_content'>sha1</span><span class='tstring_end'>'</span></span><span class='rparen'>)</span>
- <span class='id identifier rubyid_message_digest'>message_digest</span> <span class='op'>=</span> <span class='const'>R509</span><span class='op'>::</span><span class='const'>MessageDigest</span><span class='period'>.</span><span class='id identifier rubyid_new'>new</span><span class='lparen'>(</span><span class='id identifier rubyid_algorithm'>algorithm</span><span class='rparen'>)</span>
- <span class='id identifier rubyid_md'>md</span> <span class='op'>=</span> <span class='id identifier rubyid_message_digest'>message_digest</span><span class='period'>.</span><span class='id identifier rubyid_digest'>digest</span>
- <span class='id identifier rubyid_md'>md</span><span class='period'>.</span><span class='id identifier rubyid_update'>update</span><span class='lparen'>(</span><span class='ivar'>@cert</span><span class='period'>.</span><span class='id identifier rubyid_to_der'>to_der</span><span class='rparen'>)</span>
- <span class='id identifier rubyid_md'>md</span><span class='period'>.</span><span class='id identifier rubyid_to_s'>to_s</span>
+<span class='kw'>def</span> <span class='id identifier rubyid_ec?'>ec?</span>
+ <span class='ivar'>@cert</span><span class='period'>.</span><span class='id identifier rubyid_public_key'>public_key</span><span class='period'>.</span><span class='id identifier rubyid_kind_of?'>kind_of?</span><span class='lparen'>(</span><span class='const'>OpenSSL</span><span class='op'>::</span><span class='const'>PKey</span><span class='op'>::</span><span class='const'>EC</span><span class='rparen'>)</span>
<span class='kw'>end</span></pre>
</td>
</tr>
</table>
</div>
<div class="method_details ">
- <h3 class="signature " id="has_private_key?-instance_method">
+ <h3 class="signature " id="extended_key_usage-instance_method">
- - (<tt>Boolean</tt>) <strong>has_private_key?</strong>
+ - (<tt><span class='object_link'><a href="Cert/Extensions/ExtendedKeyUsage.html" title="R509::Cert::Extensions::ExtendedKeyUsage (class)">R509::Cert::Extensions::ExtendedKeyUsage</a></span></tt>) <strong>extended_key_usage</strong>
+ <span class="aliases">Also known as:
+ <span class="names"><span id='eku-instance_method'>eku</span></span>
+ </span>
+
</h3><div class="docstring">
<div class="discussion">
-<p>Boolean of whether the object contains a private key</p>
+<p>Returns this object's ExtendedKeyUsage extension as an R509 extension</p>
+<p>if this cert does not have a ExtendedKeyUsage extension.</p>
+
</div>
</div>
<div class="tags">
<p class="tag_title">Returns:</p>
<ul class="return">
<li>
- <span class='type'>(<tt>Boolean</tt>)</span>
+ <span class='type'>(<tt><span class='object_link'><a href="Cert/Extensions/ExtendedKeyUsage.html" title="R509::Cert::Extensions::ExtendedKeyUsage (class)">R509::Cert::Extensions::ExtendedKeyUsage</a></span></tt>)</span>
—
<div class='inline'>
-<p>Boolean of whether the object contains a private key</p>
+<p>The object, or nil</p>
</div>
</li>
</ul>
@@ -2169,141 +2399,153 @@
<tr>
<td>
<pre class="lines">
-168
-169
-170
-171
-172
-173
-174</pre>
+314
+315
+316</pre>
</td>
<td>
- <pre class="code"><span class="info file"># File 'lib/r509/cert.rb', line 168</span>
+ <pre class="code"><span class="info file"># File 'lib/r509/cert.rb', line 314</span>
-<span class='kw'>def</span> <span class='id identifier rubyid_has_private_key?'>has_private_key?</span>
- <span class='kw'>if</span> <span class='kw'>not</span> <span class='ivar'>@key</span><span class='period'>.</span><span class='id identifier rubyid_nil?'>nil?</span>
- <span class='kw'>true</span>
- <span class='kw'>else</span>
- <span class='kw'>false</span>
- <span class='kw'>end</span>
+<span class='kw'>def</span> <span class='id identifier rubyid_extended_key_usage'>extended_key_usage</span>
+ <span class='kw'>return</span> <span class='id identifier rubyid_extensions'>extensions</span><span class='lbracket'>[</span><span class='const'>R509</span><span class='op'>::</span><span class='const'>Cert</span><span class='op'>::</span><span class='const'>Extensions</span><span class='op'>::</span><span class='const'>ExtendedKeyUsage</span><span class='rbracket'>]</span>
<span class='kw'>end</span></pre>
</td>
</tr>
</table>
</div>
<div class="method_details ">
- <h3 class="signature " id="is_revoked_by_crl?-instance_method">
+ <h3 class="signature " id="extensions-instance_method">
- - (<tt>Boolean</tt>) <strong>is_revoked_by_crl?</strong>(r509_crl)
+ - (<tt>Hash</tt>) <strong>extensions</strong>
</h3><div class="docstring">
<div class="discussion">
-<p>Checks the given CRL for this certificate's serial number. Note that this
-does NOT check to verify that the CRL you're checking is signed by the same
-CA as the cert so do that check yourself</p>
+<p>Returns the certificate extensions as a hash of R509::Cert::Extensions
+specific objects.</p>
+<p>R509::Cert::Extensions module, each specific to the extension. The hash is
+keyed with the R509 extension class. Extensions without an R509
+implementation are ignored (see #get_unknown_extensions).</p>
+
</div>
</div>
<div class="tags">
- <p class="tag_title">Parameters:</p>
-<ul class="param">
+<p class="tag_title">Returns:</p>
+<ul class="return">
+
<li>
- <span class='name'>r509_crl</span>
+ <span class='type'>(<tt>Hash</tt>)</span>
- <span class='type'>(<tt><span class='object_link'><a href="Crl.html" title="R509::Crl (module)">R509::Crl</a></span></tt>)</span>
-
—
<div class='inline'>
-<p>A CRL from the CA that issued this certificate.</p>
+<p>A hash, in which the values are classes from the</p>
</div>
</li>
</ul>
-<p class="tag_title">Returns:</p>
-<ul class="return">
-
- <li>
-
-
- <span class='type'>(<tt>Boolean</tt>)</span>
-
-
-
- </li>
-
-</ul>
-
</div><table class="source_code">
<tr>
<td>
<pre class="lines">
-288
-289
-290</pre>
+273
+274
+275
+276
+277
+278
+279</pre>
</td>
<td>
- <pre class="code"><span class="info file"># File 'lib/r509/cert.rb', line 288</span>
+ <pre class="code"><span class="info file"># File 'lib/r509/cert.rb', line 273</span>
-<span class='kw'>def</span> <span class='id identifier rubyid_is_revoked_by_crl?'>is_revoked_by_crl?</span><span class='lparen'>(</span> <span class='id identifier rubyid_r509_crl'>r509_crl</span> <span class='rparen'>)</span>
- <span class='kw'>return</span> <span class='id identifier rubyid_r509_crl'>r509_crl</span><span class='period'>.</span><span class='id identifier rubyid_revoked?'>revoked?</span><span class='lparen'>(</span> <span class='kw'>self</span><span class='period'>.</span><span class='id identifier rubyid_serial'>serial</span> <span class='rparen'>)</span>
+<span class='kw'>def</span> <span class='id identifier rubyid_extensions'>extensions</span>
+ <span class='kw'>if</span> <span class='ivar'>@r509_extensions</span><span class='period'>.</span><span class='id identifier rubyid_nil?'>nil?</span>
+ <span class='ivar'>@r509_extensions</span> <span class='op'>=</span> <span class='const'>Extensions</span><span class='period'>.</span><span class='id identifier rubyid_wrap_openssl_extensions'>wrap_openssl_extensions</span><span class='lparen'>(</span> <span class='kw'>self</span><span class='period'>.</span><span class='id identifier rubyid_cert'>cert</span><span class='period'>.</span><span class='id identifier rubyid_extensions'>extensions</span> <span class='rparen'>)</span>
+ <span class='kw'>end</span>
+
+ <span class='kw'>return</span> <span class='ivar'>@r509_extensions</span>
<span class='kw'>end</span></pre>
</td>
</tr>
</table>
</div>
<div class="method_details ">
- <h3 class="signature " id="issuer-instance_method">
+ <h3 class="signature " id="fingerprint-instance_method">
- - (<tt>OpenSSL::X509::Name</tt>) <strong>issuer</strong>
+ - (<tt>String</tt>) <strong>fingerprint</strong>(algorithm = 'sha1')
</h3><div class="docstring">
<div class="discussion">
-<p>Returns the issuer</p>
+<p>Returns the certificate fingerprint with the specified algorithm (default
+sha1)</p>
</div>
</div>
<div class="tags">
+ <p class="tag_title">Parameters:</p>
+<ul class="param">
+ <li>
+
+ <span class='name'>algorithm</span>
+
+
+ <span class='type'>(<tt>String</tt>)</span>
+
+
+ <em class="default">(defaults to: <tt>'sha1'</tt>)</em>
+
+
+ —
+ <div class='inline'>
+<p>Which algorithm to use for the fingerprint. See R509::MessageDigest for
+supported algorithm names</p>
+</div>
+
+ </li>
+
+</ul>
+
<p class="tag_title">Returns:</p>
<ul class="return">
<li>
- <span class='type'>(<tt>OpenSSL::X509::Name</tt>)</span>
+ <span class='type'>(<tt>String</tt>)</span>
—
<div class='inline'>
-<p>issuer object. Can be parsed as string easily</p>
+<p>hex digest of the certificate</p>
</div>
</li>
</ul>
@@ -2312,38 +2554,44 @@
<tr>
<td>
<pre class="lines">
-109
-110
-111</pre>
+112
+113
+114
+115
+116
+117</pre>
</td>
<td>
- <pre class="code"><span class="info file"># File 'lib/r509/cert.rb', line 109</span>
+ <pre class="code"><span class="info file"># File 'lib/r509/cert.rb', line 112</span>
-<span class='kw'>def</span> <span class='id identifier rubyid_issuer'>issuer</span>
- <span class='ivar'>@cert</span><span class='period'>.</span><span class='id identifier rubyid_issuer'>issuer</span>
+<span class='kw'>def</span> <span class='id identifier rubyid_fingerprint'>fingerprint</span><span class='lparen'>(</span><span class='id identifier rubyid_algorithm'>algorithm</span><span class='op'>=</span><span class='tstring'><span class='tstring_beg'>'</span><span class='tstring_content'>sha1</span><span class='tstring_end'>'</span></span><span class='rparen'>)</span>
+ <span class='id identifier rubyid_message_digest'>message_digest</span> <span class='op'>=</span> <span class='const'>R509</span><span class='op'>::</span><span class='const'>MessageDigest</span><span class='period'>.</span><span class='id identifier rubyid_new'>new</span><span class='lparen'>(</span><span class='id identifier rubyid_algorithm'>algorithm</span><span class='rparen'>)</span>
+ <span class='id identifier rubyid_md'>md</span> <span class='op'>=</span> <span class='id identifier rubyid_message_digest'>message_digest</span><span class='period'>.</span><span class='id identifier rubyid_digest'>digest</span>
+ <span class='id identifier rubyid_md'>md</span><span class='period'>.</span><span class='id identifier rubyid_update'>update</span><span class='lparen'>(</span><span class='ivar'>@cert</span><span class='period'>.</span><span class='id identifier rubyid_to_der'>to_der</span><span class='rparen'>)</span>
+ <span class='id identifier rubyid_md'>md</span><span class='period'>.</span><span class='id identifier rubyid_to_s'>to_s</span>
<span class='kw'>end</span></pre>
</td>
</tr>
</table>
</div>
<div class="method_details ">
- <h3 class="signature " id="issuer_cn-instance_method">
+ <h3 class="signature " id="has_private_key?-instance_method">
- - (<tt>String</tt>) <strong>issuer_cn</strong>
+ - (<tt>Boolean</tt>) <strong>has_private_key?</strong>
</h3><div class="docstring">
<div class="discussion">
-<p>The common name (CN) component of the issuer</p>
+<p>Boolean of whether the object contains a private key</p>
</div>
</div>
<div class="tags">
@@ -2352,17 +2600,17 @@
<ul class="return">
<li>
- <span class='type'>(<tt>String</tt>)</span>
+ <span class='type'>(<tt>Boolean</tt>)</span>
—
<div class='inline'>
-<p>The common name (CN) component of the issuer</p>
+<p>Boolean of whether the object contains a private key</p>
</div>
</li>
</ul>
@@ -2371,52 +2619,46 @@
<tr>
<td>
<pre class="lines">
-114
-115
-116
-117
-118
-119
-120
-121
-122
-123</pre>
+144
+145
+146
+147
+148
+149
+150</pre>
</td>
<td>
- <pre class="code"><span class="info file"># File 'lib/r509/cert.rb', line 114</span>
+ <pre class="code"><span class="info file"># File 'lib/r509/cert.rb', line 144</span>
-<span class='kw'>def</span> <span class='id identifier rubyid_issuer_cn'>issuer_cn</span>
- <span class='kw'>return</span> <span class='kw'>nil</span> <span class='kw'>if</span> <span class='kw'>self</span><span class='period'>.</span><span class='id identifier rubyid_issuer'>issuer</span><span class='period'>.</span><span class='id identifier rubyid_nil?'>nil?</span>
-
- <span class='kw'>self</span><span class='period'>.</span><span class='id identifier rubyid_issuer'>issuer</span><span class='period'>.</span><span class='id identifier rubyid_to_a'>to_a</span><span class='period'>.</span><span class='id identifier rubyid_each'>each</span> <span class='kw'>do</span> <span class='op'>|</span><span class='id identifier rubyid_part'>part</span><span class='comma'>,</span> <span class='id identifier rubyid_value'>value</span><span class='comma'>,</span> <span class='id identifier rubyid_length'>length</span><span class='op'>|</span>
- <span class='kw'>return</span> <span class='id identifier rubyid_value'>value</span> <span class='kw'>if</span> <span class='id identifier rubyid_part'>part</span><span class='period'>.</span><span class='id identifier rubyid_upcase'>upcase</span> <span class='op'>==</span> <span class='tstring'><span class='tstring_beg'>'</span><span class='tstring_content'>CN</span><span class='tstring_end'>'</span></span>
- <span class='kw'>end</span>
-
- <span class='comment'># return nil if we didn't find a CN part
-</span> <span class='kw'>return</span> <span class='kw'>nil</span>
+<span class='kw'>def</span> <span class='id identifier rubyid_has_private_key?'>has_private_key?</span>
+ <span class='kw'>if</span> <span class='kw'>not</span> <span class='ivar'>@key</span><span class='period'>.</span><span class='id identifier rubyid_nil?'>nil?</span>
+ <span class='kw'>true</span>
+ <span class='kw'>else</span>
+ <span class='kw'>false</span>
+ <span class='kw'>end</span>
<span class='kw'>end</span></pre>
</td>
</tr>
</table>
</div>
<div class="method_details ">
- <h3 class="signature " id="key_algorithm-instance_method">
+ <h3 class="signature " id="hexserial-instance_method">
- - (<tt>String</tt>) <strong>key_algorithm</strong>
+ - (<tt>String</tt>) <strong>hexserial</strong>
</h3><div class="docstring">
<div class="discussion">
-<p>Returns key algorithm (RSA or DSA)</p>
+<p>Returns the serial number of the certificate in hexadecimal form</p>
</div>
</div>
<div class="tags">
@@ -2429,80 +2671,69 @@
<span class='type'>(<tt>String</tt>)</span>
- —
- <div class='inline'>
-<p>value of the key algorithm. RSA or DSA</p>
-</div>
-
</li>
</ul>
</div><table class="source_code">
<tr>
<td>
<pre class="lines">
-248
-249
-250
-251
-252
-253
-254</pre>
+90
+91
+92</pre>
</td>
<td>
- <pre class="code"><span class="info file"># File 'lib/r509/cert.rb', line 248</span>
+ <pre class="code"><span class="info file"># File 'lib/r509/cert.rb', line 90</span>
-<span class='kw'>def</span> <span class='id identifier rubyid_key_algorithm'>key_algorithm</span>
- <span class='kw'>if</span> <span class='kw'>self</span><span class='period'>.</span><span class='id identifier rubyid_rsa?'>rsa?</span>
- <span class='tstring'><span class='tstring_beg'>"</span><span class='tstring_content'>RSA</span><span class='tstring_end'>"</span></span>
- <span class='kw'>elsif</span> <span class='kw'>self</span><span class='period'>.</span><span class='id identifier rubyid_dsa?'>dsa?</span>
- <span class='tstring'><span class='tstring_beg'>"</span><span class='tstring_content'>DSA</span><span class='tstring_end'>"</span></span>
- <span class='kw'>end</span>
+<span class='kw'>def</span> <span class='id identifier rubyid_hexserial'>hexserial</span>
+ <span class='ivar'>@cert</span><span class='period'>.</span><span class='id identifier rubyid_serial'>serial</span><span class='period'>.</span><span class='id identifier rubyid_to_s'>to_s</span><span class='lparen'>(</span><span class='int'>16</span><span class='rparen'>)</span>
<span class='kw'>end</span></pre>
</td>
</tr>
</table>
</div>
<div class="method_details ">
- <h3 class="signature " id="key_usage-instance_method">
+ <h3 class="signature " id="inhibit_any_policy-instance_method">
- - (<tt><span class='object_link'><a href="Cert/Extensions/KeyUsage.html" title="R509::Cert::Extensions::KeyUsage (class)">R509::Cert::Extensions::KeyUsage</a></span></tt>) <strong>key_usage</strong>
+ - (<tt><span class='object_link'><a href="Cert/Extensions/InhibitAnyPolicy.html" title="R509::Cert::Extensions::InhibitAnyPolicy (class)">R509::Cert::Extensions::InhibitAnyPolicy</a></span></tt>) <strong>inhibit_any_policy</strong>
</h3><div class="docstring">
<div class="discussion">
-<p>Returns this object's KeyUsage extension as an R509 extension</p>
+<p>Returns this object's InhibitAnyPolicy extension as an R509 extension</p>
+<p>if this cert does not have a InhibitAnyPolicy extension.</p>
+
</div>
</div>
<div class="tags">
<p class="tag_title">Returns:</p>
<ul class="return">
<li>
- <span class='type'>(<tt><span class='object_link'><a href="Cert/Extensions/KeyUsage.html" title="R509::Cert::Extensions::KeyUsage (class)">R509::Cert::Extensions::KeyUsage</a></span></tt>)</span>
+ <span class='type'>(<tt><span class='object_link'><a href="Cert/Extensions/InhibitAnyPolicy.html" title="R509::Cert::Extensions::InhibitAnyPolicy (class)">R509::Cert::Extensions::InhibitAnyPolicy</a></span></tt>)</span>
—
<div class='inline'>
-<p>The object, or nil if this cert does not have a KeyUsage extension.</p>
+<p>The object, or nil</p>
</div>
</li>
</ul>
@@ -2511,97 +2742,114 @@
<tr>
<td>
<pre class="lines">
-345
-346
-347</pre>
+383
+384
+385</pre>
</td>
<td>
- <pre class="code"><span class="info file"># File 'lib/r509/cert.rb', line 345</span>
+ <pre class="code"><span class="info file"># File 'lib/r509/cert.rb', line 383</span>
-<span class='kw'>def</span> <span class='id identifier rubyid_key_usage'>key_usage</span>
- <span class='kw'>return</span> <span class='id identifier rubyid_r509_extensions'>r509_extensions</span><span class='lbracket'>[</span><span class='const'>R509</span><span class='op'>::</span><span class='const'>Cert</span><span class='op'>::</span><span class='const'>Extensions</span><span class='op'>::</span><span class='const'>KeyUsage</span><span class='rbracket'>]</span>
+<span class='kw'>def</span> <span class='id identifier rubyid_inhibit_any_policy'>inhibit_any_policy</span>
+ <span class='kw'>return</span> <span class='id identifier rubyid_extensions'>extensions</span><span class='lbracket'>[</span><span class='const'>R509</span><span class='op'>::</span><span class='const'>Cert</span><span class='op'>::</span><span class='const'>Extensions</span><span class='op'>::</span><span class='const'>InhibitAnyPolicy</span><span class='rbracket'>]</span>
<span class='kw'>end</span></pre>
</td>
</tr>
</table>
</div>
<div class="method_details ">
- <h3 class="signature " id="not_after-instance_method">
+ <h3 class="signature " id="is_revoked_by_crl?-instance_method">
- - (<tt>Time</tt>) <strong>not_after</strong>
+ - (<tt>Boolean</tt>) <strong>is_revoked_by_crl?</strong>(r509_crl)
</h3><div class="docstring">
<div class="discussion">
-<p>Returns ending (notAfter) of certificate validity period</p>
+<p>Checks the given CRL for this certificate's serial number. Note that this
+does NOT check to verify that the CRL you're checking is signed by the same
+CA as the cert so do that check yourself</p>
</div>
</div>
<div class="tags">
+ <p class="tag_title">Parameters:</p>
+<ul class="param">
-<p class="tag_title">Returns:</p>
-<ul class="return">
-
<li>
+ <span class='name'>r509_crl</span>
- <span class='type'>(<tt>Time</tt>)</span>
+ <span class='type'>(<tt><span class='object_link'><a href="CRL/SignedList.html" title="R509::CRL::SignedList (class)">R509::CRL::SignedList</a></span></tt>)</span>
+
—
<div class='inline'>
-<p>time object</p>
+<p>A CRL from the CA that issued this certificate.</p>
</div>
</li>
</ul>
+<p class="tag_title">Returns:</p>
+<ul class="return">
+
+ <li>
+
+
+ <span class='type'>(<tt>Boolean</tt>)</span>
+
+
+
+ </li>
+
+</ul>
+
</div><table class="source_code">
<tr>
<td>
<pre class="lines">
-95
-96
-97</pre>
+262
+263
+264</pre>
</td>
<td>
- <pre class="code"><span class="info file"># File 'lib/r509/cert.rb', line 95</span>
+ <pre class="code"><span class="info file"># File 'lib/r509/cert.rb', line 262</span>
-<span class='kw'>def</span> <span class='id identifier rubyid_not_after'>not_after</span>
- <span class='ivar'>@cert</span><span class='period'>.</span><span class='id identifier rubyid_not_after'>not_after</span>
+<span class='kw'>def</span> <span class='id identifier rubyid_is_revoked_by_crl?'>is_revoked_by_crl?</span><span class='lparen'>(</span> <span class='id identifier rubyid_r509_crl'>r509_crl</span> <span class='rparen'>)</span>
+ <span class='kw'>return</span> <span class='id identifier rubyid_r509_crl'>r509_crl</span><span class='period'>.</span><span class='id identifier rubyid_revoked?'>revoked?</span><span class='lparen'>(</span> <span class='kw'>self</span><span class='period'>.</span><span class='id identifier rubyid_serial'>serial</span> <span class='rparen'>)</span>
<span class='kw'>end</span></pre>
</td>
</tr>
</table>
</div>
<div class="method_details ">
- <h3 class="signature " id="not_before-instance_method">
+ <h3 class="signature " id="key_algorithm-instance_method">
- - (<tt>Time</tt>) <strong>not_before</strong>
+ - (<tt>Symbol</tt>) <strong>key_algorithm</strong>
</h3><div class="docstring">
<div class="discussion">
-<p>Returns beginning (notBefore) of certificate validity period</p>
+<p>Returns key algorithm (RSA, DSA, EC)</p>
</div>
</div>
<div class="tags">
@@ -2610,17 +2858,17 @@
<ul class="return">
<li>
- <span class='type'>(<tt>Time</tt>)</span>
+ <span class='type'>(<tt>Symbol</tt>)</span>
—
<div class='inline'>
-<p>time object</p>
+<p>value of the key algorithm. :rsa, :dsa, :ec</p>
</div>
</li>
</ul>
@@ -2629,57 +2877,75 @@
<tr>
<td>
<pre class="lines">
-81
-82
-83</pre>
+220
+221
+222
+223
+224
+225
+226
+227
+228</pre>
</td>
<td>
- <pre class="code"><span class="info file"># File 'lib/r509/cert.rb', line 81</span>
+ <pre class="code"><span class="info file"># File 'lib/r509/cert.rb', line 220</span>
-<span class='kw'>def</span> <span class='id identifier rubyid_not_before'>not_before</span>
- <span class='ivar'>@cert</span><span class='period'>.</span><span class='id identifier rubyid_not_before'>not_before</span>
+<span class='kw'>def</span> <span class='id identifier rubyid_key_algorithm'>key_algorithm</span>
+ <span class='kw'>if</span> <span class='kw'>self</span><span class='period'>.</span><span class='id identifier rubyid_rsa?'>rsa?</span>
+ <span class='symbol'>:rsa</span>
+ <span class='kw'>elsif</span> <span class='kw'>self</span><span class='period'>.</span><span class='id identifier rubyid_dsa?'>dsa?</span>
+ <span class='symbol'>:dsa</span>
+ <span class='kw'>elsif</span> <span class='kw'>self</span><span class='period'>.</span><span class='id identifier rubyid_ec?'>ec?</span>
+ <span class='symbol'>:ec</span>
+ <span class='kw'>end</span>
<span class='kw'>end</span></pre>
</td>
</tr>
</table>
</div>
<div class="method_details ">
- <h3 class="signature " id="public_key-instance_method">
+ <h3 class="signature " id="key_usage-instance_method">
- - (<tt>OpenSSL::PKey::RSA</tt>) <strong>public_key</strong>
+ - (<tt><span class='object_link'><a href="Cert/Extensions/KeyUsage.html" title="R509::Cert::Extensions::KeyUsage (class)">R509::Cert::Extensions::KeyUsage</a></span></tt>) <strong>key_usage</strong>
+ <span class="aliases">Also known as:
+ <span class="names"><span id='ku-instance_method'>ku</span></span>
+ </span>
+
</h3><div class="docstring">
<div class="discussion">
-<p>Returns the certificate public key</p>
+<p>Returns this object's KeyUsage extension as an R509 extension</p>
+<p>if this cert does not have a KeyUsage extension.</p>
+
</div>
</div>
<div class="tags">
<p class="tag_title">Returns:</p>
<ul class="return">
<li>
- <span class='type'>(<tt>OpenSSL::PKey::RSA</tt>)</span>
+ <span class='type'>(<tt><span class='object_link'><a href="Cert/Extensions/KeyUsage.html" title="R509::Cert::Extensions::KeyUsage (class)">R509::Cert::Extensions::KeyUsage</a></span></tt>)</span>
—
<div class='inline'>
-<p>public key object</p>
+<p>The object, or nil</p>
</div>
</li>
</ul>
@@ -2688,43 +2954,40 @@
<tr>
<td>
<pre class="lines">
-102
-103
-104</pre>
+305
+306
+307</pre>
</td>
<td>
- <pre class="code"><span class="info file"># File 'lib/r509/cert.rb', line 102</span>
+ <pre class="code"><span class="info file"># File 'lib/r509/cert.rb', line 305</span>
-<span class='kw'>def</span> <span class='id identifier rubyid_public_key'>public_key</span>
- <span class='ivar'>@cert</span><span class='period'>.</span><span class='id identifier rubyid_public_key'>public_key</span>
+<span class='kw'>def</span> <span class='id identifier rubyid_key_usage'>key_usage</span>
+ <span class='kw'>return</span> <span class='id identifier rubyid_extensions'>extensions</span><span class='lbracket'>[</span><span class='const'>R509</span><span class='op'>::</span><span class='const'>Cert</span><span class='op'>::</span><span class='const'>Extensions</span><span class='op'>::</span><span class='const'>KeyUsage</span><span class='rbracket'>]</span>
<span class='kw'>end</span></pre>
</td>
</tr>
</table>
</div>
<div class="method_details ">
- <h3 class="signature " id="r509_extensions-instance_method">
+ <h3 class="signature " id="name_constraints-instance_method">
- - (<tt>Hash</tt>) <strong>r509_extensions</strong>
+ - (<tt><span class='object_link'><a href="Cert/Extensions/NameConstraints.html" title="R509::Cert::Extensions::NameConstraints (class)">R509::Cert::Extensions::NameConstraints</a></span></tt>) <strong>name_constraints</strong>
</h3><div class="docstring">
<div class="discussion">
-<p>Returns the certificate extensions as a hash of R509::Cert::Extensions
-specific objects.</p>
+<p>Returns this object's NameConstraints extension as an R509 extension</p>
-<p>R509::Cert::Extensions module, each specific to the extension. The hash is
-keyed with the R509 extension class. Extensions without an R509
-implementation are ignored (see #get_unknown_extensions).</p>
+<p>if this cert does not have a NameConstraints extension.</p>
</div>
</div>
<div class="tags">
@@ -2733,17 +2996,17 @@
<ul class="return">
<li>
- <span class='type'>(<tt>Hash</tt>)</span>
+ <span class='type'>(<tt><span class='object_link'><a href="Cert/Extensions/NameConstraints.html" title="R509::Cert::Extensions::NameConstraints (class)">R509::Cert::Extensions::NameConstraints</a></span></tt>)</span>
—
<div class='inline'>
-<p>A hash, in which the values are classes from the</p>
+<p>The object, or nil</p>
</div>
</li>
</ul>
@@ -2752,46 +3015,38 @@
<tr>
<td>
<pre class="lines">
-313
-314
-315
-316
-317
-318
-319</pre>
+399
+400
+401</pre>
</td>
<td>
- <pre class="code"><span class="info file"># File 'lib/r509/cert.rb', line 313</span>
+ <pre class="code"><span class="info file"># File 'lib/r509/cert.rb', line 399</span>
-<span class='kw'>def</span> <span class='id identifier rubyid_r509_extensions'>r509_extensions</span>
- <span class='kw'>if</span> <span class='ivar'>@r509_extensions</span><span class='period'>.</span><span class='id identifier rubyid_nil?'>nil?</span>
- <span class='ivar'>@r509_extensions</span> <span class='op'>=</span> <span class='const'>Extensions</span><span class='period'>.</span><span class='id identifier rubyid_wrap_openssl_extensions'>wrap_openssl_extensions</span><span class='lparen'>(</span> <span class='kw'>self</span><span class='period'>.</span><span class='id identifier rubyid_cert'>cert</span><span class='period'>.</span><span class='id identifier rubyid_extensions'>extensions</span> <span class='rparen'>)</span>
- <span class='kw'>end</span>
-
- <span class='kw'>return</span> <span class='ivar'>@r509_extensions</span>
+<span class='kw'>def</span> <span class='id identifier rubyid_name_constraints'>name_constraints</span>
+ <span class='kw'>return</span> <span class='id identifier rubyid_extensions'>extensions</span><span class='lbracket'>[</span><span class='const'>R509</span><span class='op'>::</span><span class='const'>Cert</span><span class='op'>::</span><span class='const'>Extensions</span><span class='op'>::</span><span class='const'>NameConstraints</span><span class='rbracket'>]</span>
<span class='kw'>end</span></pre>
</td>
</tr>
</table>
</div>
<div class="method_details ">
- <h3 class="signature " id="rsa?-instance_method">
+ <h3 class="signature " id="not_after-instance_method">
- - (<tt>Boolean</tt>) <strong>rsa?</strong>
+ - (<tt>Time</tt>) <strong>not_after</strong>
</h3><div class="docstring">
<div class="discussion">
-<p>Returns whether the public key is RSA</p>
+<p>Returns ending (notAfter) of certificate validity period</p>
</div>
</div>
<div class="tags">
@@ -2800,17 +3055,17 @@
<ul class="return">
<li>
- <span class='type'>(<tt>Boolean</tt>)</span>
+ <span class='type'>(<tt>Time</tt>)</span>
—
<div class='inline'>
-<p>true if the public key is RSA, false otherwise</p>
+<p>time object</p>
</div>
</li>
</ul>
@@ -2819,38 +3074,38 @@
<tr>
<td>
<pre class="lines">
-216
-217
-218</pre>
+97
+98
+99</pre>
</td>
<td>
- <pre class="code"><span class="info file"># File 'lib/r509/cert.rb', line 216</span>
+ <pre class="code"><span class="info file"># File 'lib/r509/cert.rb', line 97</span>
-<span class='kw'>def</span> <span class='id identifier rubyid_rsa?'>rsa?</span>
- <span class='ivar'>@cert</span><span class='period'>.</span><span class='id identifier rubyid_public_key'>public_key</span><span class='period'>.</span><span class='id identifier rubyid_kind_of?'>kind_of?</span><span class='lparen'>(</span><span class='const'>OpenSSL</span><span class='op'>::</span><span class='const'>PKey</span><span class='op'>::</span><span class='const'>RSA</span><span class='rparen'>)</span>
+<span class='kw'>def</span> <span class='id identifier rubyid_not_after'>not_after</span>
+ <span class='ivar'>@cert</span><span class='period'>.</span><span class='id identifier rubyid_not_after'>not_after</span>
<span class='kw'>end</span></pre>
</td>
</tr>
</table>
</div>
<div class="method_details ">
- <h3 class="signature " id="san_names-instance_method">
+ <h3 class="signature " id="not_before-instance_method">
- - (<tt>Array</tt>) <strong>san_names</strong>
+ - (<tt>Time</tt>) <strong>not_before</strong>
</h3><div class="docstring">
<div class="discussion">
-<p>List of SAN DNS names</p>
+<p>Returns beginning (notBefore) of certificate validity period</p>
</div>
</div>
<div class="tags">
@@ -2859,17 +3114,17 @@
<ul class="return">
<li>
- <span class='type'>(<tt>Array</tt>)</span>
+ <span class='type'>(<tt>Time</tt>)</span>
—
<div class='inline'>
-<p>list of SAN DNS names</p>
+<p>time object</p>
</div>
</li>
</ul>
@@ -2878,46 +3133,39 @@
<tr>
<td>
<pre class="lines">
-177
-178
-179
-180
-181
-182
-183</pre>
+76
+77
+78</pre>
</td>
<td>
- <pre class="code"><span class="info file"># File 'lib/r509/cert.rb', line 177</span>
+ <pre class="code"><span class="info file"># File 'lib/r509/cert.rb', line 76</span>
-<span class='kw'>def</span> <span class='id identifier rubyid_san_names'>san_names</span>
- <span class='kw'>if</span> <span class='kw'>self</span><span class='period'>.</span><span class='id identifier rubyid_subject_alternative_name'>subject_alternative_name</span><span class='period'>.</span><span class='id identifier rubyid_nil?'>nil?</span>
- <span class='kw'>return</span> <span class='lbracket'>[</span><span class='rbracket'>]</span>
- <span class='kw'>else</span>
- <span class='kw'>return</span> <span class='kw'>self</span><span class='period'>.</span><span class='id identifier rubyid_subject_alternative_name'>subject_alternative_name</span><span class='period'>.</span><span class='id identifier rubyid_dns_names'>dns_names</span>
- <span class='kw'>end</span>
+<span class='kw'>def</span> <span class='id identifier rubyid_not_before'>not_before</span>
+ <span class='ivar'>@cert</span><span class='period'>.</span><span class='id identifier rubyid_not_before'>not_before</span>
<span class='kw'>end</span></pre>
</td>
</tr>
</table>
</div>
<div class="method_details ">
- <h3 class="signature " id="serial-instance_method">
+ <h3 class="signature " id="ocsp_no_check?-instance_method">
- - (<tt>Integer</tt>) <strong>serial</strong>
+ - (<tt>Boolean</tt>) <strong>ocsp_no_check?</strong>
</h3><div class="docstring">
<div class="discussion">
-<p>Returns the serial number of the certificate in decimal form</p>
+<p>Returns true if the OCSP No Check extension is present (value is irrelevant
+to this extension)</p>
</div>
</div>
<div class="tags">
@@ -2926,72 +3174,78 @@
<ul class="return">
<li>
- <span class='type'>(<tt>Integer</tt>)</span>
+ <span class='type'>(<tt>Boolean</tt>)</span>
+ —
+ <div class='inline'>
+<p>presence/absence of the nocheck extension</p>
+</div>
+
</li>
</ul>
</div><table class="source_code">
<tr>
<td>
<pre class="lines">
-88
-89
-90</pre>
+367
+368
+369</pre>
</td>
<td>
- <pre class="code"><span class="info file"># File 'lib/r509/cert.rb', line 88</span>
+ <pre class="code"><span class="info file"># File 'lib/r509/cert.rb', line 367</span>
-<span class='kw'>def</span> <span class='id identifier rubyid_serial'>serial</span>
- <span class='ivar'>@cert</span><span class='period'>.</span><span class='id identifier rubyid_serial'>serial</span><span class='period'>.</span><span class='id identifier rubyid_to_i'>to_i</span>
+<span class='kw'>def</span> <span class='id identifier rubyid_ocsp_no_check?'>ocsp_no_check?</span>
+ <span class='kw'>return</span> <span class='lparen'>(</span><span class='id identifier rubyid_extensions'>extensions</span><span class='period'>.</span><span class='id identifier rubyid_has_key?'>has_key?</span><span class='lparen'>(</span><span class='const'>R509</span><span class='op'>::</span><span class='const'>Cert</span><span class='op'>::</span><span class='const'>Extensions</span><span class='op'>::</span><span class='const'>OCSPNoCheck</span><span class='rparen'>)</span><span class='rparen'>)</span>
<span class='kw'>end</span></pre>
</td>
</tr>
</table>
</div>
<div class="method_details ">
- <h3 class="signature " id="signature_algorithm-instance_method">
+ <h3 class="signature " id="policy_constraints-instance_method">
- - (<tt>String</tt>) <strong>signature_algorithm</strong>
+ - (<tt><span class='object_link'><a href="Cert/Extensions/PolicyConstraints.html" title="R509::Cert::Extensions::PolicyConstraints (class)">R509::Cert::Extensions::PolicyConstraints</a></span></tt>) <strong>policy_constraints</strong>
</h3><div class="docstring">
<div class="discussion">
-<p>Returns signature algorithm</p>
+<p>Returns this object's PolicyConstraints extension as an R509 extension</p>
+<p>if this cert does not have a PolicyConstraints extension.</p>
+
</div>
</div>
<div class="tags">
<p class="tag_title">Returns:</p>
<ul class="return">
<li>
- <span class='type'>(<tt>String</tt>)</span>
+ <span class='type'>(<tt><span class='object_link'><a href="Cert/Extensions/PolicyConstraints.html" title="R509::Cert::Extensions::PolicyConstraints (class)">R509::Cert::Extensions::PolicyConstraints</a></span></tt>)</span>
—
<div class='inline'>
-<p>value of the signature algorithm. E.g. sha1WithRSAEncryption,
-sha256WithRSAEncryption, md5WithRSAEncryption</p>
+<p>The object, or nil</p>
</div>
</li>
</ul>
@@ -3000,38 +3254,38 @@
<tr>
<td>
<pre class="lines">
-241
-242
-243</pre>
+391
+392
+393</pre>
</td>
<td>
- <pre class="code"><span class="info file"># File 'lib/r509/cert.rb', line 241</span>
+ <pre class="code"><span class="info file"># File 'lib/r509/cert.rb', line 391</span>
-<span class='kw'>def</span> <span class='id identifier rubyid_signature_algorithm'>signature_algorithm</span>
- <span class='ivar'>@cert</span><span class='period'>.</span><span class='id identifier rubyid_signature_algorithm'>signature_algorithm</span>
+<span class='kw'>def</span> <span class='id identifier rubyid_policy_constraints'>policy_constraints</span>
+ <span class='kw'>return</span> <span class='id identifier rubyid_extensions'>extensions</span><span class='lbracket'>[</span><span class='const'>R509</span><span class='op'>::</span><span class='const'>Cert</span><span class='op'>::</span><span class='const'>Extensions</span><span class='op'>::</span><span class='const'>PolicyConstraints</span><span class='rbracket'>]</span>
<span class='kw'>end</span></pre>
</td>
</tr>
</table>
</div>
<div class="method_details ">
- <h3 class="signature " id="subject-instance_method">
+ <h3 class="signature " id="public_key-instance_method">
- - (<tt>OpenSSL::X509::Name</tt>) <strong>subject</strong>
+ - (<tt>OpenSSL::PKey::RSA</tt>) <strong>public_key</strong>
</h3><div class="docstring">
<div class="discussion">
-<p>Returns the subject</p>
+<p>Returns the certificate public key</p>
</div>
</div>
<div class="tags">
@@ -3040,17 +3294,17 @@
<ul class="return">
<li>
- <span class='type'>(<tt>OpenSSL::X509::Name</tt>)</span>
+ <span class='type'>(<tt>OpenSSL::PKey::RSA</tt>)</span>
—
<div class='inline'>
-<p>subject object. Can be parsed as string easily</p>
+<p>public key object</p>
</div>
</li>
</ul>
@@ -3059,38 +3313,38 @@
<tr>
<td>
<pre class="lines">
-163
-164
-165</pre>
+104
+105
+106</pre>
</td>
<td>
- <pre class="code"><span class="info file"># File 'lib/r509/cert.rb', line 163</span>
+ <pre class="code"><span class="info file"># File 'lib/r509/cert.rb', line 104</span>
-<span class='kw'>def</span> <span class='id identifier rubyid_subject'>subject</span>
- <span class='ivar'>@cert</span><span class='period'>.</span><span class='id identifier rubyid_subject'>subject</span>
+<span class='kw'>def</span> <span class='id identifier rubyid_public_key'>public_key</span>
+ <span class='ivar'>@cert</span><span class='period'>.</span><span class='id identifier rubyid_public_key'>public_key</span>
<span class='kw'>end</span></pre>
</td>
</tr>
</table>
</div>
<div class="method_details ">
- <h3 class="signature " id="subject_alternative_name-instance_method">
+ <h3 class="signature " id="rsa?-instance_method">
- - (<tt><span class='object_link'><a href="Cert/Extensions/SubjectAlternativeName.html" title="R509::Cert::Extensions::SubjectAlternativeName (class)">R509::Cert::Extensions::SubjectAlternativeName</a></span></tt>) <strong>subject_alternative_name</strong>
+ - (<tt>Boolean</tt>) <strong>rsa?</strong>
</h3><div class="docstring">
<div class="discussion">
-<p>Returns this object's SubjectAlternativeName extension as an R509 extension</p>
+<p>Returns whether the public key is RSA</p>
</div>
</div>
<div class="tags">
@@ -3099,18 +3353,17 @@
<ul class="return">
<li>
- <span class='type'>(<tt><span class='object_link'><a href="Cert/Extensions/SubjectAlternativeName.html" title="R509::Cert::Extensions::SubjectAlternativeName (class)">R509::Cert::Extensions::SubjectAlternativeName</a></span></tt>)</span>
+ <span class='type'>(<tt>Boolean</tt>)</span>
—
<div class='inline'>
-<p>The object, or nil if this cert does not have a SubjectAlternativeName
-extension.</p>
+<p>true if the public key is RSA, false otherwise</p>
</div>
</li>
</ul>
@@ -3119,38 +3372,38 @@
<tr>
<td>
<pre class="lines">
-377
-378
-379</pre>
+167
+168
+169</pre>
</td>
<td>
- <pre class="code"><span class="info file"># File 'lib/r509/cert.rb', line 377</span>
+ <pre class="code"><span class="info file"># File 'lib/r509/cert.rb', line 167</span>
-<span class='kw'>def</span> <span class='id identifier rubyid_subject_alternative_name'>subject_alternative_name</span>
- <span class='kw'>return</span> <span class='id identifier rubyid_r509_extensions'>r509_extensions</span><span class='lbracket'>[</span><span class='const'>R509</span><span class='op'>::</span><span class='const'>Cert</span><span class='op'>::</span><span class='const'>Extensions</span><span class='op'>::</span><span class='const'>SubjectAlternativeName</span><span class='rbracket'>]</span>
+<span class='kw'>def</span> <span class='id identifier rubyid_rsa?'>rsa?</span>
+ <span class='ivar'>@cert</span><span class='period'>.</span><span class='id identifier rubyid_public_key'>public_key</span><span class='period'>.</span><span class='id identifier rubyid_kind_of?'>kind_of?</span><span class='lparen'>(</span><span class='const'>OpenSSL</span><span class='op'>::</span><span class='const'>PKey</span><span class='op'>::</span><span class='const'>RSA</span><span class='rparen'>)</span>
<span class='kw'>end</span></pre>
</td>
</tr>
</table>
</div>
<div class="method_details ">
- <h3 class="signature " id="subject_cn-instance_method">
+ <h3 class="signature " id="serial-instance_method">
- - (<tt>String</tt>) <strong>subject_cn</strong>
+ - (<tt>Integer</tt>) <strong>serial</strong>
</h3><div class="docstring">
<div class="discussion">
-<p>Returns the CN component, if any, of the subject</p>
+<p>Returns the serial number of the certificate in decimal form</p>
</div>
</div>
<div class="tags">
@@ -3159,11 +3412,11 @@
<ul class="return">
<li>
- <span class='type'>(<tt>String</tt>)</span>
+ <span class='type'>(<tt>Integer</tt>)</span>
</li>
@@ -3173,38 +3426,38 @@
<tr>
<td>
<pre class="lines">
-188
-189
-190</pre>
+83
+84
+85</pre>
</td>
<td>
- <pre class="code"><span class="info file"># File 'lib/r509/cert.rb', line 188</span>
+ <pre class="code"><span class="info file"># File 'lib/r509/cert.rb', line 83</span>
-<span class='kw'>def</span> <span class='id identifier rubyid_subject_cn'>subject_cn</span><span class='lparen'>(</span><span class='rparen'>)</span>
- <span class='kw'>return</span> <span class='kw'>self</span><span class='period'>.</span><span class='id identifier rubyid_subject_component'>subject_component</span><span class='lparen'>(</span><span class='tstring'><span class='tstring_beg'>'</span><span class='tstring_content'>CN</span><span class='tstring_end'>'</span></span><span class='rparen'>)</span>
+<span class='kw'>def</span> <span class='id identifier rubyid_serial'>serial</span>
+ <span class='ivar'>@cert</span><span class='period'>.</span><span class='id identifier rubyid_serial'>serial</span><span class='period'>.</span><span class='id identifier rubyid_to_i'>to_i</span>
<span class='kw'>end</span></pre>
</td>
</tr>
</table>
</div>
<div class="method_details ">
- <h3 class="signature " id="subject_component-instance_method">
+ <h3 class="signature " id="signature_algorithm-instance_method">
- - (<tt>String</tt>) <strong>subject_component</strong>(short_name)
+ - (<tt>String</tt>) <strong>signature_algorithm</strong>
</h3><div class="docstring">
<div class="discussion">
-<p>Returns subject component</p>
+<p>Returns signature algorithm</p>
</div>
</div>
<div class="tags">
@@ -3219,11 +3472,12 @@
—
<div class='inline'>
-<p>value of the subject component requested</p>
+<p>value of the signature algorithm. E.g. sha1WithRSAEncryption,
+sha256WithRSAEncryption, md5WithRSAEncryption, et cetera</p>
</div>
</li>
</ul>
@@ -3232,62 +3486,63 @@
<tr>
<td>
<pre class="lines">
-195
-196
-197
-198
-199</pre>
+213
+214
+215</pre>
</td>
<td>
- <pre class="code"><span class="info file"># File 'lib/r509/cert.rb', line 195</span>
+ <pre class="code"><span class="info file"># File 'lib/r509/cert.rb', line 213</span>
-<span class='kw'>def</span> <span class='id identifier rubyid_subject_component'>subject_component</span> <span class='id identifier rubyid_short_name'>short_name</span>
- <span class='id identifier rubyid_match'>match</span> <span class='op'>=</span> <span class='ivar'>@cert</span><span class='period'>.</span><span class='id identifier rubyid_subject'>subject</span><span class='period'>.</span><span class='id identifier rubyid_to_a'>to_a</span><span class='period'>.</span><span class='id identifier rubyid_find'>find</span> <span class='lbrace'>{</span> <span class='op'>|</span><span class='id identifier rubyid_x'>x</span><span class='op'>|</span> <span class='id identifier rubyid_x'>x</span><span class='lbracket'>[</span><span class='int'>0</span><span class='rbracket'>]</span> <span class='op'>==</span> <span class='id identifier rubyid_short_name'>short_name</span> <span class='rbrace'>}</span>
- <span class='kw'>return</span> <span class='kw'>nil</span> <span class='kw'>if</span> <span class='id identifier rubyid_match'>match</span><span class='period'>.</span><span class='id identifier rubyid_nil?'>nil?</span>
- <span class='kw'>return</span> <span class='id identifier rubyid_match'>match</span><span class='lbracket'>[</span><span class='int'>1</span><span class='rbracket'>]</span>
+<span class='kw'>def</span> <span class='id identifier rubyid_signature_algorithm'>signature_algorithm</span>
+ <span class='ivar'>@cert</span><span class='period'>.</span><span class='id identifier rubyid_signature_algorithm'>signature_algorithm</span>
<span class='kw'>end</span></pre>
</td>
</tr>
</table>
</div>
<div class="method_details ">
- <h3 class="signature " id="subject_key_identifier-instance_method">
+ <h3 class="signature " id="subject_alternative_name-instance_method">
- - (<tt><span class='object_link'><a href="Cert/Extensions/SubjectKeyIdentifier.html" title="R509::Cert::Extensions::SubjectKeyIdentifier (class)">R509::Cert::Extensions::SubjectKeyIdentifier</a></span></tt>) <strong>subject_key_identifier</strong>
+ - (<tt><span class='object_link'><a href="Cert/Extensions/SubjectAlternativeName.html" title="R509::Cert::Extensions::SubjectAlternativeName (class)">R509::Cert::Extensions::SubjectAlternativeName</a></span></tt>) <strong>subject_alternative_name</strong>
+ <span class="aliases">Also known as:
+ <span class="names"><span id='san-instance_method'>san</span>, <span id='subject_alt_name-instance_method'>subject_alt_name</span></span>
+ </span>
+
</h3><div class="docstring">
<div class="discussion">
-<p>Returns this object's SubjectKeyIdentifier extension as an R509 extension</p>
+<p>Returns this object's SubjectAlternativeName extension as an R509 extension</p>
+<p>if this cert does not have a SubjectAlternativeName extension.</p>
+
</div>
</div>
<div class="tags">
<p class="tag_title">Returns:</p>
<ul class="return">
<li>
- <span class='type'>(<tt><span class='object_link'><a href="Cert/Extensions/SubjectKeyIdentifier.html" title="R509::Cert::Extensions::SubjectKeyIdentifier (class)">R509::Cert::Extensions::SubjectKeyIdentifier</a></span></tt>)</span>
+ <span class='type'>(<tt><span class='object_link'><a href="Cert/Extensions/SubjectAlternativeName.html" title="R509::Cert::Extensions::SubjectAlternativeName (class)">R509::Cert::Extensions::SubjectAlternativeName</a></span></tt>)</span>
—
<div class='inline'>
-<p>The object, or nil if this cert does not have a SubjectKeyIdentifier
-extension.</p>
+<p>The object, or nil</p>
</div>
</li>
</ul>
@@ -3296,57 +3551,59 @@
<tr>
<td>
<pre class="lines">
-361
-362
-363</pre>
+339
+340
+341</pre>
</td>
<td>
- <pre class="code"><span class="info file"># File 'lib/r509/cert.rb', line 361</span>
+ <pre class="code"><span class="info file"># File 'lib/r509/cert.rb', line 339</span>
-<span class='kw'>def</span> <span class='id identifier rubyid_subject_key_identifier'>subject_key_identifier</span>
- <span class='kw'>return</span> <span class='id identifier rubyid_r509_extensions'>r509_extensions</span><span class='lbracket'>[</span><span class='const'>R509</span><span class='op'>::</span><span class='const'>Cert</span><span class='op'>::</span><span class='const'>Extensions</span><span class='op'>::</span><span class='const'>SubjectKeyIdentifier</span><span class='rbracket'>]</span>
+<span class='kw'>def</span> <span class='id identifier rubyid_subject_alternative_name'>subject_alternative_name</span>
+ <span class='kw'>return</span> <span class='id identifier rubyid_extensions'>extensions</span><span class='lbracket'>[</span><span class='const'>R509</span><span class='op'>::</span><span class='const'>Cert</span><span class='op'>::</span><span class='const'>Extensions</span><span class='op'>::</span><span class='const'>SubjectAlternativeName</span><span class='rbracket'>]</span>
<span class='kw'>end</span></pre>
</td>
</tr>
</table>
</div>
<div class="method_details ">
- <h3 class="signature " id="subject_names-instance_method">
+ <h3 class="signature " id="subject_key_identifier-instance_method">
- - (<tt>Array</tt>) <strong>subject_names</strong>
+ - (<tt><span class='object_link'><a href="Cert/Extensions/SubjectKeyIdentifier.html" title="R509::Cert::Extensions::SubjectKeyIdentifier (class)">R509::Cert::Extensions::SubjectKeyIdentifier</a></span></tt>) <strong>subject_key_identifier</strong>
</h3><div class="docstring">
<div class="discussion">
-<p>Return the CN, as well as all the subject alternative names (SANs).</p>
+<p>Returns this object's SubjectKeyIdentifier extension as an R509 extension</p>
+<p>if this cert does not have a SubjectKeyIdentifier extension.</p>
+
</div>
</div>
<div class="tags">
<p class="tag_title">Returns:</p>
<ul class="return">
<li>
- <span class='type'>(<tt>Array</tt>)</span>
+ <span class='type'>(<tt><span class='object_link'><a href="Cert/Extensions/SubjectKeyIdentifier.html" title="R509::Cert::Extensions::SubjectKeyIdentifier (class)">R509::Cert::Extensions::SubjectKeyIdentifier</a></span></tt>)</span>
—
<div class='inline'>
-<p>the array of names. Returns an empty array if there are no names, at all.</p>
+<p>The object, or nil</p>
</div>
</li>
</ul>
@@ -3355,27 +3612,19 @@
<tr>
<td>
<pre class="lines">
-205
-206
-207
-208
-209
-210
-211</pre>
+323
+324
+325</pre>
</td>
<td>
- <pre class="code"><span class="info file"># File 'lib/r509/cert.rb', line 205</span>
+ <pre class="code"><span class="info file"># File 'lib/r509/cert.rb', line 323</span>
-<span class='kw'>def</span> <span class='id identifier rubyid_subject_names'>subject_names</span>
- <span class='id identifier rubyid_ret'>ret</span> <span class='op'>=</span> <span class='lbracket'>[</span><span class='rbracket'>]</span>
- <span class='id identifier rubyid_ret'>ret</span> <span class='op'><<</span> <span class='id identifier rubyid_subject_cn'>subject_cn</span> <span class='kw'>unless</span> <span class='id identifier rubyid_subject_cn'>subject_cn</span><span class='period'>.</span><span class='id identifier rubyid_nil?'>nil?</span>
- <span class='id identifier rubyid_ret'>ret</span><span class='period'>.</span><span class='id identifier rubyid_concat'>concat</span><span class='lparen'>(</span> <span class='kw'>self</span><span class='period'>.</span><span class='id identifier rubyid_san_names'>san_names</span> <span class='rparen'>)</span>
-
- <span class='kw'>return</span> <span class='id identifier rubyid_ret'>ret</span><span class='period'>.</span><span class='id identifier rubyid_sort'>sort</span><span class='period'>.</span><span class='id identifier rubyid_uniq'>uniq</span>
+<span class='kw'>def</span> <span class='id identifier rubyid_subject_key_identifier'>subject_key_identifier</span>
+ <span class='kw'>return</span> <span class='id identifier rubyid_extensions'>extensions</span><span class='lbracket'>[</span><span class='const'>R509</span><span class='op'>::</span><span class='const'>Cert</span><span class='op'>::</span><span class='const'>Extensions</span><span class='op'>::</span><span class='const'>SubjectKeyIdentifier</span><span class='rbracket'>]</span>
<span class='kw'>end</span></pre>
</td>
</tr>
</table>
</div>
@@ -3422,23 +3671,23 @@
<tr>
<td>
<pre class="lines">
-72
-73
-74
-75
-76</pre>
+67
+68
+69
+70
+71</pre>
</td>
<td>
- <pre class="code"><span class="info file"># File 'lib/r509/cert.rb', line 72</span>
+ <pre class="code"><span class="info file"># File 'lib/r509/cert.rb', line 67</span>
<span class='kw'>def</span> <span class='id identifier rubyid_to_der'>to_der</span>
- <span class='kw'>if</span> <span class='ivar'>@cert</span><span class='period'>.</span><span class='id identifier rubyid_kind_of?'>kind_of?</span><span class='lparen'>(</span><span class='const'>OpenSSL</span><span class='op'>::</span><span class='const'>X509</span><span class='op'>::</span><span class='const'>Certificate</span><span class='rparen'>)</span>
- <span class='kw'>return</span> <span class='ivar'>@cert</span><span class='period'>.</span><span class='id identifier rubyid_to_der'>to_der</span>
- <span class='kw'>end</span>
+ <span class='kw'>if</span> <span class='ivar'>@cert</span><span class='period'>.</span><span class='id identifier rubyid_kind_of?'>kind_of?</span><span class='lparen'>(</span><span class='const'>OpenSSL</span><span class='op'>::</span><span class='const'>X509</span><span class='op'>::</span><span class='const'>Certificate</span><span class='rparen'>)</span>
+ <span class='kw'>return</span> <span class='ivar'>@cert</span><span class='period'>.</span><span class='id identifier rubyid_to_der'>to_der</span>
+ <span class='kw'>end</span>
<span class='kw'>end</span></pre>
</td>
</tr>
</table>
</div>
@@ -3489,23 +3738,23 @@
<tr>
<td>
<pre class="lines">
-61
-62
-63
-64
-65</pre>
+56
+57
+58
+59
+60</pre>
</td>
<td>
- <pre class="code"><span class="info file"># File 'lib/r509/cert.rb', line 61</span>
+ <pre class="code"><span class="info file"># File 'lib/r509/cert.rb', line 56</span>
<span class='kw'>def</span> <span class='id identifier rubyid_to_pem'>to_pem</span>
- <span class='kw'>if</span> <span class='ivar'>@cert</span><span class='period'>.</span><span class='id identifier rubyid_kind_of?'>kind_of?</span><span class='lparen'>(</span><span class='const'>OpenSSL</span><span class='op'>::</span><span class='const'>X509</span><span class='op'>::</span><span class='const'>Certificate</span><span class='rparen'>)</span>
- <span class='kw'>return</span> <span class='ivar'>@cert</span><span class='period'>.</span><span class='id identifier rubyid_to_pem'>to_pem</span><span class='period'>.</span><span class='id identifier rubyid_chomp'>chomp</span>
- <span class='kw'>end</span>
+ <span class='kw'>if</span> <span class='ivar'>@cert</span><span class='period'>.</span><span class='id identifier rubyid_kind_of?'>kind_of?</span><span class='lparen'>(</span><span class='const'>OpenSSL</span><span class='op'>::</span><span class='const'>X509</span><span class='op'>::</span><span class='const'>Certificate</span><span class='rparen'>)</span>
+ <span class='kw'>return</span> <span class='ivar'>@cert</span><span class='period'>.</span><span class='id identifier rubyid_to_pem'>to_pem</span><span class='period'>.</span><span class='id identifier rubyid_chomp'>chomp</span>
+ <span class='kw'>end</span>
<span class='kw'>end</span></pre>
</td>
</tr>
</table>
</div>
@@ -3553,19 +3802,19 @@
<tr>
<td>
<pre class="lines">
-325
-326
-327</pre>
+285
+286
+287</pre>
</td>
<td>
- <pre class="code"><span class="info file"># File 'lib/r509/cert.rb', line 325</span>
+ <pre class="code"><span class="info file"># File 'lib/r509/cert.rb', line 285</span>
<span class='kw'>def</span> <span class='id identifier rubyid_unknown_extensions'>unknown_extensions</span>
- <span class='kw'>return</span> <span class='const'>Extensions</span><span class='period'>.</span><span class='id identifier rubyid_get_unknown_extensions'>get_unknown_extensions</span><span class='lparen'>(</span> <span class='kw'>self</span><span class='period'>.</span><span class='id identifier rubyid_cert'>cert</span><span class='period'>.</span><span class='id identifier rubyid_extensions'>extensions</span> <span class='rparen'>)</span>
+ <span class='kw'>return</span> <span class='const'>Extensions</span><span class='period'>.</span><span class='id identifier rubyid_get_unknown_extensions'>get_unknown_extensions</span><span class='lparen'>(</span> <span class='kw'>self</span><span class='period'>.</span><span class='id identifier rubyid_cert'>cert</span><span class='period'>.</span><span class='id identifier rubyid_extensions'>extensions</span> <span class='rparen'>)</span>
<span class='kw'>end</span></pre>
</td>
</tr>
</table>
</div>
@@ -3608,19 +3857,19 @@
<tr>
<td>
<pre class="lines">
-140
-141
-142</pre>
+123
+124
+125</pre>
</td>
<td>
- <pre class="code"><span class="info file"># File 'lib/r509/cert.rb', line 140</span>
+ <pre class="code"><span class="info file"># File 'lib/r509/cert.rb', line 123</span>
<span class='kw'>def</span> <span class='id identifier rubyid_valid?'>valid?</span>
- <span class='id identifier rubyid_valid_at?'>valid_at?</span><span class='lparen'>(</span><span class='const'>Time</span><span class='period'>.</span><span class='id identifier rubyid_now'>now</span><span class='rparen'>)</span>
+ <span class='id identifier rubyid_valid_at?'>valid_at?</span><span class='lparen'>(</span><span class='const'>Time</span><span class='period'>.</span><span class='id identifier rubyid_now'>now</span><span class='rparen'>)</span>
<span class='kw'>end</span></pre>
</td>
</tr>
</table>
</div>
@@ -3683,35 +3932,35 @@
<tr>
<td>
<pre class="lines">
-148
-149
-150
-151
-152
-153
-154
-155
-156
-157
-158</pre>
+131
+132
+133
+134
+135
+136
+137
+138
+139
+140
+141</pre>
</td>
<td>
- <pre class="code"><span class="info file"># File 'lib/r509/cert.rb', line 148</span>
+ <pre class="code"><span class="info file"># File 'lib/r509/cert.rb', line 131</span>
<span class='kw'>def</span> <span class='id identifier rubyid_valid_at?'>valid_at?</span><span class='lparen'>(</span><span class='id identifier rubyid_time'>time</span><span class='rparen'>)</span>
- <span class='kw'>if</span> <span class='id identifier rubyid_time'>time</span><span class='period'>.</span><span class='id identifier rubyid_kind_of?'>kind_of?</span><span class='lparen'>(</span><span class='const'>Integer</span><span class='rparen'>)</span>
- <span class='id identifier rubyid_time'>time</span> <span class='op'>=</span> <span class='const'>Time</span><span class='period'>.</span><span class='id identifier rubyid_at'>at</span><span class='lparen'>(</span><span class='id identifier rubyid_time'>time</span><span class='rparen'>)</span>
- <span class='kw'>end</span>
+ <span class='kw'>if</span> <span class='id identifier rubyid_time'>time</span><span class='period'>.</span><span class='id identifier rubyid_kind_of?'>kind_of?</span><span class='lparen'>(</span><span class='const'>Integer</span><span class='rparen'>)</span>
+ <span class='id identifier rubyid_time'>time</span> <span class='op'>=</span> <span class='const'>Time</span><span class='period'>.</span><span class='id identifier rubyid_at'>at</span><span class='lparen'>(</span><span class='id identifier rubyid_time'>time</span><span class='rparen'>)</span>
+ <span class='kw'>end</span>
- <span class='kw'>if</span> <span class='lparen'>(</span><span class='kw'>self</span><span class='period'>.</span><span class='id identifier rubyid_not_after'>not_after</span> <span class='op'><</span> <span class='id identifier rubyid_time'>time</span><span class='rparen'>)</span> <span class='kw'>or</span> <span class='lparen'>(</span><span class='kw'>self</span><span class='period'>.</span><span class='id identifier rubyid_not_before'>not_before</span> <span class='op'>></span> <span class='id identifier rubyid_time'>time</span><span class='rparen'>)</span>
- <span class='kw'>false</span>
- <span class='kw'>else</span>
- <span class='kw'>true</span>
- <span class='kw'>end</span>
+ <span class='kw'>if</span> <span class='lparen'>(</span><span class='kw'>self</span><span class='period'>.</span><span class='id identifier rubyid_not_after'>not_after</span> <span class='op'><</span> <span class='id identifier rubyid_time'>time</span><span class='rparen'>)</span> <span class='kw'>or</span> <span class='lparen'>(</span><span class='kw'>self</span><span class='period'>.</span><span class='id identifier rubyid_not_before'>not_before</span> <span class='op'>></span> <span class='id identifier rubyid_time'>time</span><span class='rparen'>)</span>
+ <span class='kw'>false</span>
+ <span class='kw'>else</span>
+ <span class='kw'>true</span>
+ <span class='kw'>end</span>
<span class='kw'>end</span></pre>
</td>
</tr>
</table>
</div>
@@ -3761,19 +4010,19 @@
<tr>
<td>
<pre class="lines">
-266
-267
-268</pre>
+240
+241
+242</pre>
</td>
<td>
- <pre class="code"><span class="info file"># File 'lib/r509/cert.rb', line 266</span>
+ <pre class="code"><span class="info file"># File 'lib/r509/cert.rb', line 240</span>
<span class='kw'>def</span> <span class='id identifier rubyid_write_der'>write_der</span><span class='lparen'>(</span><span class='id identifier rubyid_filename_or_io'>filename_or_io</span><span class='rparen'>)</span>
- <span class='id identifier rubyid_write_data'>write_data</span><span class='lparen'>(</span><span class='id identifier rubyid_filename_or_io'>filename_or_io</span><span class='comma'>,</span> <span class='ivar'>@cert</span><span class='period'>.</span><span class='id identifier rubyid_to_der'>to_der</span><span class='rparen'>)</span>
+ <span class='id identifier rubyid_write_data'>write_data</span><span class='lparen'>(</span><span class='id identifier rubyid_filename_or_io'>filename_or_io</span><span class='comma'>,</span> <span class='ivar'>@cert</span><span class='period'>.</span><span class='id identifier rubyid_to_der'>to_der</span><span class='rparen'>)</span>
<span class='kw'>end</span></pre>
</td>
</tr>
</table>
</div>
@@ -3823,19 +4072,19 @@
<tr>
<td>
<pre class="lines">
-259
-260
-261</pre>
+233
+234
+235</pre>
</td>
<td>
- <pre class="code"><span class="info file"># File 'lib/r509/cert.rb', line 259</span>
+ <pre class="code"><span class="info file"># File 'lib/r509/cert.rb', line 233</span>
<span class='kw'>def</span> <span class='id identifier rubyid_write_pem'>write_pem</span><span class='lparen'>(</span><span class='id identifier rubyid_filename_or_io'>filename_or_io</span><span class='rparen'>)</span>
- <span class='id identifier rubyid_write_data'>write_data</span><span class='lparen'>(</span><span class='id identifier rubyid_filename_or_io'>filename_or_io</span><span class='comma'>,</span> <span class='ivar'>@cert</span><span class='period'>.</span><span class='id identifier rubyid_to_pem'>to_pem</span><span class='rparen'>)</span>
+ <span class='id identifier rubyid_write_data'>write_data</span><span class='lparen'>(</span><span class='id identifier rubyid_filename_or_io'>filename_or_io</span><span class='comma'>,</span> <span class='ivar'>@cert</span><span class='period'>.</span><span class='id identifier rubyid_to_pem'>to_pem</span><span class='rparen'>)</span>
<span class='kw'>end</span></pre>
</td>
</tr>
</table>
</div>
@@ -3921,27 +4170,27 @@
<tr>
<td>
<pre class="lines">
-275
-276
-277
-278
-279
-280
-281</pre>
+249
+250
+251
+252
+253
+254
+255</pre>
</td>
<td>
- <pre class="code"><span class="info file"># File 'lib/r509/cert.rb', line 275</span>
+ <pre class="code"><span class="info file"># File 'lib/r509/cert.rb', line 249</span>
<span class='kw'>def</span> <span class='id identifier rubyid_write_pkcs12'>write_pkcs12</span><span class='lparen'>(</span><span class='id identifier rubyid_filename_or_io'>filename_or_io</span><span class='comma'>,</span><span class='id identifier rubyid_password'>password</span><span class='comma'>,</span><span class='id identifier rubyid_friendly_name'>friendly_name</span><span class='op'>=</span><span class='tstring'><span class='tstring_beg'>'</span><span class='tstring_content'>r509 pkcs12</span><span class='tstring_end'>'</span></span><span class='rparen'>)</span>
- <span class='kw'>if</span> <span class='ivar'>@key</span><span class='period'>.</span><span class='id identifier rubyid_nil?'>nil?</span>
- <span class='id identifier rubyid_raise'>raise</span> <span class='const'>R509</span><span class='op'>::</span><span class='const'>R509Error</span><span class='comma'>,</span> <span class='tstring'><span class='tstring_beg'>"</span><span class='tstring_content'>Writing a PKCS12 requires both key and cert</span><span class='tstring_end'>"</span></span>
- <span class='kw'>end</span>
- <span class='id identifier rubyid_pkcs12'>pkcs12</span> <span class='op'>=</span> <span class='const'>OpenSSL</span><span class='op'>::</span><span class='const'>PKCS12</span><span class='period'>.</span><span class='id identifier rubyid_create'>create</span><span class='lparen'>(</span><span class='id identifier rubyid_password'>password</span><span class='comma'>,</span><span class='id identifier rubyid_friendly_name'>friendly_name</span><span class='comma'>,</span><span class='ivar'>@key</span><span class='period'>.</span><span class='id identifier rubyid_key'>key</span><span class='comma'>,</span><span class='ivar'>@cert</span><span class='rparen'>)</span>
- <span class='id identifier rubyid_write_data'>write_data</span><span class='lparen'>(</span><span class='id identifier rubyid_filename_or_io'>filename_or_io</span><span class='comma'>,</span> <span class='id identifier rubyid_pkcs12'>pkcs12</span><span class='period'>.</span><span class='id identifier rubyid_to_der'>to_der</span><span class='rparen'>)</span>
+ <span class='kw'>if</span> <span class='ivar'>@key</span><span class='period'>.</span><span class='id identifier rubyid_nil?'>nil?</span>
+ <span class='id identifier rubyid_raise'>raise</span> <span class='const'>R509</span><span class='op'>::</span><span class='const'>R509Error</span><span class='comma'>,</span> <span class='tstring'><span class='tstring_beg'>"</span><span class='tstring_content'>Writing a PKCS12 requires both key and cert</span><span class='tstring_end'>"</span></span>
+ <span class='kw'>end</span>
+ <span class='id identifier rubyid_pkcs12'>pkcs12</span> <span class='op'>=</span> <span class='const'>OpenSSL</span><span class='op'>::</span><span class='const'>PKCS12</span><span class='period'>.</span><span class='id identifier rubyid_create'>create</span><span class='lparen'>(</span><span class='id identifier rubyid_password'>password</span><span class='comma'>,</span><span class='id identifier rubyid_friendly_name'>friendly_name</span><span class='comma'>,</span><span class='ivar'>@key</span><span class='period'>.</span><span class='id identifier rubyid_key'>key</span><span class='comma'>,</span><span class='ivar'>@cert</span><span class='rparen'>)</span>
+ <span class='id identifier rubyid_write_data'>write_data</span><span class='lparen'>(</span><span class='id identifier rubyid_filename_or_io'>filename_or_io</span><span class='comma'>,</span> <span class='id identifier rubyid_pkcs12'>pkcs12</span><span class='period'>.</span><span class='id identifier rubyid_to_der'>to_der</span><span class='rparen'>)</span>
<span class='kw'>end</span></pre>
</td>
</tr>
</table>
</div>
@@ -3949,12 +4198,12 @@
</div>
</div>
<div id="footer">
- Generated on Thu Nov 8 14:19:26 2012 by
+ Generated on Tue Apr 16 10:49:56 2013 by
<a href="http://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>
- 0.8.2.1 (ruby-1.9.3).
+ 0.8.5 (ruby-1.9.3).
</div>
</body>
</html>
\ No newline at end of file