Class: DhParams
- Inherits:
-
Object
- Object
- DhParams
- Defined in:
- lib/resources/dh_params.rb
Instance Method Summary collapse
-
#dh_params? ⇒ Boolean
it { should be_dh_params }.
-
#generator ⇒ Object
its(‘generator’) { should eq 2 }.
-
#initialize(filename) ⇒ DhParams
constructor
A new instance of DhParams.
-
#modulus ⇒ Object
its(‘modulus’) { should eq ‘00:91:a0:15:89:e5:bc:38:93:12:02:fc:…’ }.
-
#pem ⇒ Object
its(‘pem’) { should eq ‘—–BEGIN DH PARAMETERS…’ }.
-
#prime_length ⇒ Object
its(‘prime_length’) { should be 2048 }.
-
#text ⇒ Object
its(‘text’) { should eq ‘human-readable-text’ }.
- #to_s ⇒ Object
-
#valid? ⇒ Boolean
it { should be_valid }.
Constructor Details
#initialize(filename) ⇒ DhParams
Returns a new instance of DhParams.
26 27 28 29 30 31 32 33 34 35 36 37 |
# File 'lib/resources/dh_params.rb', line 26 def initialize(filename) @dh_params_path = filename file = inspec.file(@dh_params_path) return skip_resource "Unable to find DH parameters file #{@dh_params_path}" unless file.exist? begin @dh_params = OpenSSL::PKey::DH.new file.content rescue @dh_params = nil return skip_resource "Unable to load DH parameters #{@dh_params_path}" end end |
Instance Method Details
#dh_params? ⇒ Boolean
it { should be_dh_params }
40 41 42 |
# File 'lib/resources/dh_params.rb', line 40 def dh_params? !@dh_params.nil? end |
#generator ⇒ Object
its(‘generator’) { should eq 2 }
45 46 47 48 |
# File 'lib/resources/dh_params.rb', line 45 def generator return if @dh_params.nil? @dh_params.g.to_i end |
#modulus ⇒ Object
its(‘modulus’) { should eq ‘00:91:a0:15:89:e5:bc:38:93:12:02:fc:…’ }
51 52 53 54 |
# File 'lib/resources/dh_params.rb', line 51 def modulus return if @dh_params.nil? '00:' + @dh_params.p.to_s(16).downcase.scan(/.{2}/).join(':') end |
#pem ⇒ Object
its(‘pem’) { should eq ‘—–BEGIN DH PARAMETERS…’ }
57 58 59 60 |
# File 'lib/resources/dh_params.rb', line 57 def pem return if @dh_params.nil? @dh_params.to_pem end |
#prime_length ⇒ Object
its(‘prime_length’) { should be 2048 }
63 64 65 66 |
# File 'lib/resources/dh_params.rb', line 63 def prime_length return if @dh_params.nil? @dh_params.p.num_bits end |
#text ⇒ Object
its(‘text’) { should eq ‘human-readable-text’ }
69 70 71 72 |
# File 'lib/resources/dh_params.rb', line 69 def text return if @dh_params.nil? @dh_params.to_text end |
#to_s ⇒ Object
80 81 82 |
# File 'lib/resources/dh_params.rb', line 80 def to_s "dh_params #{@dh_params_path}" end |
#valid? ⇒ Boolean
it { should be_valid }
75 76 77 78 |
# File 'lib/resources/dh_params.rb', line 75 def valid? return if @dh_params.nil? @dh_params.params_ok? end |