diff options
author | Luke Kanies <luke@madstop.com> | 2008-03-07 15:38:41 -0700 |
---|---|---|
committer | Luke Kanies <luke@madstop.com> | 2008-04-15 21:34:03 -0500 |
commit | 3970818881b1f9e108ff6b06d2bc36698a3219d9 (patch) | |
tree | 89d252647e7038641b639faa78206defd4724aa9 /lib/puppet/ssl | |
parent | 4ca6fd3e476dbc582ebc69f5fdf9709a8703613b (diff) | |
download | puppet-3970818881b1f9e108ff6b06d2bc36698a3219d9.tar.gz puppet-3970818881b1f9e108ff6b06d2bc36698a3219d9.tar.xz puppet-3970818881b1f9e108ff6b06d2bc36698a3219d9.zip |
Finished the certificate request wrapper class.
Diffstat (limited to 'lib/puppet/ssl')
-rw-r--r-- | lib/puppet/ssl/certificate_request.rb | 27 |
1 files changed, 27 insertions, 0 deletions
diff --git a/lib/puppet/ssl/certificate_request.rb b/lib/puppet/ssl/certificate_request.rb new file mode 100644 index 000000000..ce3aff477 --- /dev/null +++ b/lib/puppet/ssl/certificate_request.rb @@ -0,0 +1,27 @@ +require 'puppet/ssl' + +# This constant just exists for us to use for adding our request terminii. +class Puppet::SSL::CertificateRequest # :nodoc: + extend Puppet::Indirector + + indirects :certificate_request #, :terminus_class => :file + + attr_reader :name, :content + + # How to create a certificate request with our system defaults. + def generate(key) + Puppet.info "Creating a new SSL certificate request for %s" % name + + csr = OpenSSL::X509::Request.new + csr.version = 0 + csr.subject = OpenSSL::X509::Name.new([["CN", name]]) + csr.public_key = key.public_key + csr.sign(key, OpenSSL::Digest::MD5.new) + + @content = csr + end + + def initialize(name) + @name = name + end +end |