summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
...
* | Switched puppetmasterd to use the new-style server plumbing.Luke Kanies2008-05-025-105/+43
| | | | | | | | | | | | | | | | The code is much cleaner, and it seems to be mostly functional, but we have to pick a strategy for signing the host's certificate on first startup. Also, I haven't actually done end-to-end testing yet, which needs the certs working first.
* | Adding xmlrpc backward compatibility to the new Mongrel code.Luke Kanies2008-05-023-11/+48
| |
* | Adding xmlrpc support to webrick.Luke Kanies2008-05-025-42/+115
| | | | | | | | | | This provides the backward compatibility for webrick, and only Mongrel is left.
* | Fixing some whitespaceLuke Kanies2008-05-021-4/+3
| |
* | Adding configuration support for XMLRPC handlers.Luke Kanies2008-05-022-125/+255
| | | | | | | | | | | | | | | | | | This provides the interface for configuring backward compatibility in the new-style server code. It requires a completely different configuration step, in that REST and xmlrpc handlers are configured separately, rather than using the same handler names, but this was considered less evil than having a large abstraction layer for specifying how the handlers are related.
* | I think I've now got the Webrick SSL support working.Luke Kanies2008-04-2810-14/+73
| | | | | | | | | | Now I just need to get xmlrpc working alongside REST in both mongrel and webrick.
* | Interim commit, since I want to work but have no network available.Luke Kanies2008-04-285-76/+259
| |
* | Merge branch '0.24.x'Luke Kanies2008-04-2111-19/+93
|\| | | | | | | | | | | Conflicts: bin/puppetca
| * Fixed some tests broken by #1176James Turnbull2008-04-191-8/+8
| |
| * Added puppetlast script to ext directoryJames Turnbull2008-04-191-0/+40
| |
| * Pushed patch for #1176 - configtimeout fixJames Turnbull2008-04-192-3/+4
| |
| * Pushed patch for ticket #1191 - adding globbing support to ports providerJames Turnbull2008-04-191-1/+6
| |
| * Pushed patch for ticket #1187 - freebsd pkg_add supportJames Turnbull2008-04-191-4/+15
| |
| * Fixed #1195 - support for gentoo openrcJames Turnbull2008-04-181-1/+2
| |
| * Pushed schema patch for #1193James Turnbull2008-04-172-0/+10
| |
| * Fixed #1189 and added support for --all to puppetca --cleanJames Turnbull2008-04-152-12/+33
| |
* | Changing the File certificate terminus so that itLuke Kanies2008-04-212-3/+3
| | | | | | | | | | | | | | saves to the :localcacert instead of :cacert. This way the :ca terminus saves to :cacert and the :file terminus saves to :localcacert.
* | Renaming the 'ca_file' ssl terminus type to 'ca'.Luke Kanies2008-04-2110-28/+28
| |
* | Temporarily disabling the revoke/verify test in the CA.Luke Kanies2008-04-191-3/+5
| | | | | | | | | | It looks like it's not taking the CRL into account, so I can't seem to actually get a cert to fail verification.
* | Fixing how the CRL is used for certificate verification.Luke Kanies2008-04-192-3/+3
| | | | | | | | | | | | | | | | The CRL was not correctly being added to the Store used for verification. It does not appear to be working, though, since revoked certificates still pass verification.
* | Fixing puppetca so it uses the :local ca setting.Luke Kanies2008-04-191-0/+2
| | | | | | | | | | This causes it to use both the :ca_file and :file terminus types.
* | Added an Interface class to the CA to model puppetca's usage.Luke Kanies2008-04-196-286/+426
| | | | | | | | | | | | | | | | | | | | This class provides all of the semantics from puppetca, and appears to entirely duplicate the behaviour of the existing executable, with basically all of the code in a library file, instead of the executable. As such, I've deleted the test for the executable. We should have one, but it's not nearly as important.
* | Making the SSL::Host's destroy method a class method,Luke Kanies2008-04-192-23/+40
| | | | | | | | rather than an instance method.
* | Adding the last functionality needed for puppetca to use the Indirector.Luke Kanies2008-04-192-0/+34
| | | | | | | | | | | | | | This commit adds 'list' and 'print' support to the CA. They're mostly delegator methods, but now the CA should be the sole interface for puppetca.
* | Finishing the interface between the CA and the CRL.Luke Kanies2008-04-199-78/+405
| | | | | | | | | | | | Certificate revocation now works, the CA knows how to generate the CRL, and the SSL::Host class knows how to configure the CRL class for indirection.
* | Adding inventory support to the new certificate authority.Luke Kanies2008-04-184-5/+32
| | | | | | | | | | The new-style CA now keeps track of all of its signed certificates in its inventory file.
* | Adding support within the inventory for real certs or Puppet cert wrappers.Luke Kanies2008-04-182-0/+14
| |
* | Changing the Inventory class to rebuild when theLuke Kanies2008-04-182-42/+48
| | | | | | | | first cert is added, so it's easier to test.
* | Adding a comment to the inventory class.Luke Kanies2008-04-181-1/+1
| |
* | Adding an SSl::Inventory class for managing the ssl inventory.Luke Kanies2008-04-182-0/+174
| | | | | | | | | | This models the existing Inventory module in the sslcertificates/ directory, but does so as an instance, rather than a module.
* | All SSL terminus classes now force the CA information into the right place.Luke Kanies2008-04-185-0/+30
| | | | | | | | | | | | | | | | | | Without this, then you could end up duplicating your CA key into the normal directory depending on how caching was set up. Again, this design aspect isn't the most straightforward, but at least it's functional now.
* | Switching the SSL::Host class to return Puppet instances.Luke Kanies2008-04-177-41/+52
| | | | | | | | | | | | | | | | | | Previously, the class was returning OpenSSL instances (e.g, OpenSSL::X509::Certificate) instead of Puppet instances (e.g., Puppet::SSL::Certificate). This made some things easier, but it made them asymmetric (e.g., you assigned the key as a Puppet instance but got back an OpenSSL instance), and it also reduced your flexibility and introspectiveness.
* | Setting the expiration date of certificate objects to the expiry of the actualLuke Kanies2008-04-172-0/+20
| | | | | | | | cert.
* | Adding integration tests for a lot of the SSL code.Luke Kanies2008-04-1710-12/+246
| | | | | | | | | | This flushed out some problems, and things mostly look good now, but I don't think we're quite there yet.
* | Moving the password file handling into the SSL::Key class.Luke Kanies2008-04-177-47/+78
| | | | | | | | | | | | | | | | | | | | | | | | | | | | This was necessary because when the Indirector is used, there isn't necessarily enough context available to know when a password file should be used (e.g., when reading a Key from disk, you don't know if that key was encrypted). Now, the Key class automatically uses the right password file, and only tries to use those files that actually exist. This isn't very flexible, in that it only allows one CA file and one non-CA file, but no one really uses anything but the CA file anyway.
* | Moving all of the ca-specific settings to the ca_fileLuke Kanies2008-04-178-20/+64
| | | | | | | | | | | | | | | | terminus classes, rather than the normal :file classes. This is unfortunately complicated, and it means that the Key :ca_file is only ever actually used for retrieving the CA key itself.
* | Adding SSL::Host-level support for managing the terminus andLuke Kanies2008-04-1711-28/+177
| | | | | | | | | | cache classes. Also, defaulting to the :file terminus for all of the SSL classes.
* | Fixing the CA so it actually automatically generates its certificate.Luke Kanies2008-04-172-19/+19
| |
* | The certificate authority now uses a Host instance named 'ca'.Luke Kanies2008-04-173-156/+84
| | | | | | | | | | | | It previously was a subclass of Host, but this should make it easier to separate between the thing doing the signing and the thing managing the necessary files.
* | Changing all of the SSL terminus classes to treat CA files specially.Luke Kanies2008-04-1715-173/+397
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This is a kind of weird design situation. For instance, we've got a collection of certificates in the :certdir, but then there's a special CA certificate off by itself. Rather than build a whole separate infrastructure for managing those separate files (cert and key, at least), I decided to add special support for specifying where to find the CA-specific bits, and then code for handling them when necessary. This requires that we have a standard way of knowing whether we should be managing the CA bits or normal host files. The Puppet::SSL::Host class now has a 'ca_name' method that returns the string we're using for the CA name; this name is currently 'ca'. We have to use a name, because the name is the only thing that all methods have access to (e.g., when trying to 'find' the right cert, we only have the name available). What this means is that if you want access to the CA key or cert, then create a Puppet::SSL::Host instance with the name 'ca'. You'll still get the CA cert created with the host's :certname; it will just be stored in a different location.
* | The 'destroy' method for the ssl_file terminus base classLuke Kanies2008-04-162-3/+3
| | | | | | | | now returns false on missing files, rather than failing.
* | Marking a test as pending, because it's not ready yet.Luke Kanies2008-04-161-7/+7
| |
* | Removing all the cases where the ssl host specifiesLuke Kanies2008-04-162-198/+24
| | | | | | | | | | a terminus. Also, getting rid of some metaprogramming that wasn't really helping.
* | Making the first pass at using requests instead ofLuke Kanies2008-04-1513-165/+47
| | | | | | | | | | specifying the terminus class. The individual ssl classes now work, but the ssl host class doesn't yet.
* | Adding a :to_text method that will convert the containedLuke Kanies2008-04-154-0/+27
| | | | | | | | thing to readable human text.
* | Actually signing the certificates in the CA.Luke Kanies2008-04-152-1/+40
| |
* | Adding the first attempt at managing the certificateLuke Kanies2008-04-152-0/+239
| | | | | | | | revocation list.
* | Adding a :search method to the ssl_file terminus typeLuke Kanies2008-04-154-0/+140
| | | | | | | | and the SSL::Host class.
* | Fixing a failing test that had not been updated from previous codingLuke Kanies2008-04-152-3/+1
| |
* | We have a basically functional CA -- it can signLuke Kanies2008-04-1510-52/+186
| | | | | | | | | | | | requests and return certificates. There's still plenty more work to do, but I'm probably not much more than a day away from redoing puppetca to use this code.