summaryrefslogtreecommitdiffstats
path: root/lib/puppet/ssl/certificate_request.rb
diff options
context:
space:
mode:
Diffstat (limited to 'lib/puppet/ssl/certificate_request.rb')
-rw-r--r--lib/puppet/ssl/certificate_request.rb4
1 files changed, 3 insertions, 1 deletions
diff --git a/lib/puppet/ssl/certificate_request.rb b/lib/puppet/ssl/certificate_request.rb
index fec9e1733..e8cbbbade 100644
--- a/lib/puppet/ssl/certificate_request.rb
+++ b/lib/puppet/ssl/certificate_request.rb
@@ -5,7 +5,7 @@ class Puppet::SSL::CertificateRequest < Puppet::SSL::Base
wraps OpenSSL::X509::Request
extend Puppet::Indirector
- indirects :certificate_request #, :terminus_class => :file
+ indirects :certificate_request, :extend => Puppet::SSL::IndirectionHooks
# How to create a certificate request with our system defaults.
def generate(key)
@@ -17,6 +17,8 @@ class Puppet::SSL::CertificateRequest < Puppet::SSL::Base
csr.public_key = key.public_key
csr.sign(key, OpenSSL::Digest::MD5.new)
+ raise Puppet::Error, "CSR sign verification failed; you need to clean the certificate request for %s on the server" % name unless csr.verify(key.public_key)
+
@content = csr
end
end