| Add a method to Puppet::SSL::SSLProvider for loading a system ssl context. This will be needed in order to retrieve file content from HTTPS servers whose certs are not signed by Puppet, but by well known CAs like VeriSign. The method should require a cacerts argument containing an array of {{OpenSSL::X509::Certificate}}s. It's ok if the array is empty, but should raise ArgumentError if nil. The method should return a Puppet::SSL::SSLContext:
- The context's store should have VERIFY_PEER set
- Each cacert should be added to the store.
- The set_default_paths method should be called on the store.
- Revocation should be disabled.
- The private key and client cert should be nil
|