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 38 |
# 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 }
41 42 43 |
# File 'lib/resources/dh_params.rb', line 41 def dh_params? !@dh_params.nil? end |
#generator ⇒ Object
its(‘generator’) { should eq 2 }
46 47 48 49 |
# File 'lib/resources/dh_params.rb', line 46 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:…’ }
52 53 54 55 |
# File 'lib/resources/dh_params.rb', line 52 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…’ }
58 59 60 61 |
# File 'lib/resources/dh_params.rb', line 58 def pem return if @dh_params.nil? @dh_params.to_pem end |
#prime_length ⇒ Object
its(‘prime_length’) { should be 2048 }
64 65 66 67 |
# File 'lib/resources/dh_params.rb', line 64 def prime_length return if @dh_params.nil? @dh_params.p.num_bits end |
#text ⇒ Object
its(‘text’) { should eq ‘human-readable-text’ }
70 71 72 73 |
# File 'lib/resources/dh_params.rb', line 70 def text return if @dh_params.nil? @dh_params.to_text end |
#to_s ⇒ Object
81 82 83 |
# File 'lib/resources/dh_params.rb', line 81 def to_s "dh_params #{@dh_params_path}" end |
#valid? ⇒ Boolean
it { should be_valid }
76 77 78 79 |
# File 'lib/resources/dh_params.rb', line 76 def valid? return if @dh_params.nil? @dh_params.params_ok? end |