summaryrefslogtreecommitdiffstats
path: root/lib
diff options
context:
space:
mode:
authorLuke Kanies <luke@madstop.com>2008-03-11 15:02:15 -0700
committerLuke Kanies <luke@madstop.com>2008-04-15 21:34:04 -0500
commit00e35bce4e8b7f4e0e4ee039a1d82ad9d08a6b96 (patch)
tree823d3210e4c66643d14752f93334744a12e13ae1 /lib
parent8347b0605612128b1a9e9f2d2d2e5ea73dae288d (diff)
downloadpuppet-00e35bce4e8b7f4e0e4ee039a1d82ad9d08a6b96.tar.gz
puppet-00e35bce4e8b7f4e0e4ee039a1d82ad9d08a6b96.tar.xz
puppet-00e35bce4e8b7f4e0e4ee039a1d82ad9d08a6b96.zip
Adding he last of the indirection classes for the ssl
classes, finally including the certificate requests.
Diffstat (limited to 'lib')
-rw-r--r--lib/puppet/defaults.rb1
-rw-r--r--lib/puppet/indirector/certificate/ca_file.rb8
-rw-r--r--lib/puppet/indirector/certificate_request/ca_file.rb8
-rw-r--r--lib/puppet/indirector/certificate_request/file.rb8
-rw-r--r--lib/puppet/ssl/certificate.rb5
-rw-r--r--lib/puppet/ssl/certificate_request.rb2
-rw-r--r--lib/puppet/ssl/key.rb2
7 files changed, 29 insertions, 5 deletions
diff --git a/lib/puppet/defaults.rb b/lib/puppet/defaults.rb
index eed1a00f3..300f9bad4 100644
--- a/lib/puppet/defaults.rb
+++ b/lib/puppet/defaults.rb
@@ -167,6 +167,7 @@ module Puppet
certificate. By default, only the server gets an alias set up, and only for 'puppet'."],
:certdir => ["$ssldir/certs", "The certificate directory."],
:publickeydir => ["$ssldir/public_keys", "The public key directory."],
+ :requestdir => ["$ssldir/public_keys", "The public key directory."],
:privatekeydir => { :default => "$ssldir/private_keys",
:mode => 0750,
:desc => "The private key directory."
diff --git a/lib/puppet/indirector/certificate/ca_file.rb b/lib/puppet/indirector/certificate/ca_file.rb
new file mode 100644
index 000000000..99941c49e
--- /dev/null
+++ b/lib/puppet/indirector/certificate/ca_file.rb
@@ -0,0 +1,8 @@
+require 'puppet/indirector/ssl_file'
+require 'puppet/ssl/certificate'
+
+class Puppet::SSL::Certificate::CaFile < Puppet::Indirector::SslFile
+ desc "Manage the CA collection of signed SSL certificates on disk."
+
+ store_in :signeddir
+end
diff --git a/lib/puppet/indirector/certificate_request/ca_file.rb b/lib/puppet/indirector/certificate_request/ca_file.rb
new file mode 100644
index 000000000..08aa73eaf
--- /dev/null
+++ b/lib/puppet/indirector/certificate_request/ca_file.rb
@@ -0,0 +1,8 @@
+require 'puppet/indirector/ssl_file'
+require 'puppet/ssl/certificate_request'
+
+class Puppet::SSL::CertificateRequest::CaFile < Puppet::Indirector::SslFile
+ desc "Manage the CA collection of certificate requests on disk."
+
+ store_in :csrdir
+end
diff --git a/lib/puppet/indirector/certificate_request/file.rb b/lib/puppet/indirector/certificate_request/file.rb
new file mode 100644
index 000000000..5eb6745fd
--- /dev/null
+++ b/lib/puppet/indirector/certificate_request/file.rb
@@ -0,0 +1,8 @@
+require 'puppet/indirector/ssl_file'
+require 'puppet/ssl/certificate_request'
+
+class Puppet::SSL::CertificateRequest::CaFile < Puppet::Indirector::SslFile
+ desc "Manage the CA collection of certificate requests on disk."
+
+ store_in :requestdir
+end
diff --git a/lib/puppet/ssl/certificate.rb b/lib/puppet/ssl/certificate.rb
index 9a89b4530..d1687e6f0 100644
--- a/lib/puppet/ssl/certificate.rb
+++ b/lib/puppet/ssl/certificate.rb
@@ -1,13 +1,12 @@
require 'puppet/ssl/base'
-# The class that manages all aspects of our SSL certificates --
-# private keys, public keys, requests, etc.
+# Manage certificates themselves.
class Puppet::SSL::Certificate < Puppet::SSL::Base
# This is defined from the base class
wraps OpenSSL::X509::Certificate
extend Puppet::Indirector
- indirects :certificate #, :terminus_class => :file
+ indirects :certificate, :terminus_class => :file
def generate
raise Puppet::DevError, "Cannot generate certificates directly; they must be generated during signing"
diff --git a/lib/puppet/ssl/certificate_request.rb b/lib/puppet/ssl/certificate_request.rb
index 67f0f23c6..fec9e1733 100644
--- a/lib/puppet/ssl/certificate_request.rb
+++ b/lib/puppet/ssl/certificate_request.rb
@@ -1,6 +1,6 @@
require 'puppet/ssl/base'
-# This constant just exists for us to use for adding our request terminii.
+# Manage certificate requests.
class Puppet::SSL::CertificateRequest < Puppet::SSL::Base
wraps OpenSSL::X509::Request
diff --git a/lib/puppet/ssl/key.rb b/lib/puppet/ssl/key.rb
index 18bf2a4cb..a9c8717f8 100644
--- a/lib/puppet/ssl/key.rb
+++ b/lib/puppet/ssl/key.rb
@@ -6,7 +6,7 @@ class Puppet::SSL::Key < Puppet::SSL::Base
wraps OpenSSL::PKey::RSA
extend Puppet::Indirector
- indirects :key #, :terminus_class => :file
+ indirects :key, :terminus_class => :file
# Knows how to create keys with our system defaults.
def generate