lib/resources/dh_params.rb in inspec-1.51.15 vs lib/resources/dh_params.rb in inspec-1.51.18
- old
+ new
@@ -1,83 +1,83 @@
-# encoding: utf-8
-# author: Doc Walker
-
-require 'openssl'
-
-class DhParams < Inspec.resource(1)
- name 'dh_params'
-
- desc '
- Use the `dh_params` InSpec audit resource to test Diffie-Hellman (DH)
- parameters.
- '
-
- example "
- describe dh_params('/path/to/file.dh_pem') do
- it { should be_dh_params }
- it { should be_valid }
- its('generator') { should eq 2 }
- its('modulus') { should eq '00:91:a0:15:89:e5:bc:38:93:12:02:fc:...' }
- its('prime_length') { should eq 2048 }
- its('pem') { should eq '-----BEGIN DH PARAMETERS...' }
- its('text') { should eq 'PKCS#3 DH Parameters: (2048 bit)...' }
- end
- "
-
- 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
-
- # it { should be_dh_params }
- def dh_params?
- !@dh_params.nil?
- end
-
- # its('generator') { should eq 2 }
- def generator
- return if @dh_params.nil?
- @dh_params.g.to_i
- end
-
- # its('modulus') { should eq '00:91:a0:15:89:e5:bc:38:93:12:02:fc:...' }
- def modulus
- return if @dh_params.nil?
- '00:' + @dh_params.p.to_s(16).downcase.scan(/.{2}/).join(':')
- end
-
- # its('pem') { should eq '-----BEGIN DH PARAMETERS...' }
- def pem
- return if @dh_params.nil?
- @dh_params.to_pem
- end
-
- # its('prime_length') { should be 2048 }
- def prime_length
- return if @dh_params.nil?
- @dh_params.p.num_bits
- end
-
- # its('text') { should eq 'human-readable-text' }
- def text
- return if @dh_params.nil?
- @dh_params.to_text
- end
-
- # it { should be_valid }
- def valid?
- return if @dh_params.nil?
- @dh_params.params_ok?
- end
-
- def to_s
- "dh_params #{@dh_params_path}"
- end
-end
+# encoding: utf-8
+# author: Doc Walker
+
+require 'openssl'
+
+class DhParams < Inspec.resource(1)
+ name 'dh_params'
+
+ desc '
+ Use the `dh_params` InSpec audit resource to test Diffie-Hellman (DH)
+ parameters.
+ '
+
+ example "
+ describe dh_params('/path/to/file.dh_pem') do
+ it { should be_dh_params }
+ it { should be_valid }
+ its('generator') { should eq 2 }
+ its('modulus') { should eq '00:91:a0:15:89:e5:bc:38:93:12:02:fc:...' }
+ its('prime_length') { should eq 2048 }
+ its('pem') { should eq '-----BEGIN DH PARAMETERS...' }
+ its('text') { should eq 'PKCS#3 DH Parameters: (2048 bit)...' }
+ end
+ "
+
+ 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
+
+ # it { should be_dh_params }
+ def dh_params?
+ !@dh_params.nil?
+ end
+
+ # its('generator') { should eq 2 }
+ def generator
+ return if @dh_params.nil?
+ @dh_params.g.to_i
+ end
+
+ # its('modulus') { should eq '00:91:a0:15:89:e5:bc:38:93:12:02:fc:...' }
+ def modulus
+ return if @dh_params.nil?
+ '00:' + @dh_params.p.to_s(16).downcase.scan(/.{2}/).join(':')
+ end
+
+ # its('pem') { should eq '-----BEGIN DH PARAMETERS...' }
+ def pem
+ return if @dh_params.nil?
+ @dh_params.to_pem
+ end
+
+ # its('prime_length') { should be 2048 }
+ def prime_length
+ return if @dh_params.nil?
+ @dh_params.p.num_bits
+ end
+
+ # its('text') { should eq 'human-readable-text' }
+ def text
+ return if @dh_params.nil?
+ @dh_params.to_text
+ end
+
+ # it { should be_valid }
+ def valid?
+ return if @dh_params.nil?
+ @dh_params.params_ok?
+ end
+
+ def to_s
+ "dh_params #{@dh_params_path}"
+ end
+end