diff options
| author | elijah <elijah@riseup.net> | 2016-02-24 11:10:25 -0800 | 
|---|---|---|
| committer | elijah <elijah@riseup.net> | 2016-02-24 11:10:25 -0800 | 
| commit | 393d46feb9890a87c5764f40b61c51d03fe0a4fe (patch) | |
| tree | cb64beb4cd4a1e6cef96c1f9bdad5c8cfaf0a62b | |
| parent | e1d0289eb3b5e386b4db39fdc9d2d7c3b4fbf17e (diff) | |
check server cert expiry in tests, closes #7910
| -rw-r--r-- | tests/white-box/network.rb | 18 | 
1 files changed, 18 insertions, 0 deletions
diff --git a/tests/white-box/network.rb b/tests/white-box/network.rb index 382f857b..2436230b 100644 --- a/tests/white-box/network.rb +++ b/tests/white-box/network.rb @@ -1,4 +1,5 @@  require 'socket' +require 'openssl'  raise SkipTest if $node["dummy"] @@ -69,4 +70,21 @@ class Network < LeapTest      pass    end +  THIRTY_DAYS = 60*60*24*30 + +  def test_04_Are_server_certificates_valid? +    cert_paths = ["/etc/x509/certs/leap_commercial.crt", "/etc/x509/certs/leap.crt"] +    cert_paths.each do |cert_path| +      if File.exists?(cert_path) +        cert = OpenSSL::X509::Certificate.new(File.read(cert_path)) +        if cert.not_after > Time.now +          fail "The certificate #{cert_path} expired on #{cert.not_after}" +        elsif cert.not_after > Time.now + THIRTY_DAYS +          fail "The certificate #{cert_path} will expire soon, on #{cert.not_after}" +        end +      end +    end +    pass +  end +  end  | 
