@marcel91200 / caddy Mirror · read-only / commits / c97292b2
Fork 0

Fast and extensible multi-platform HTTP/1-2-3 web server with automatic HTTPS

Mirrored from https://github.com/Slazee/caddy.git

Synced Nov 12, 13:15 UTC

caddypki: Allow use of root CA without a key. Fixes #6290 (#6298)

* Allow usage of root CA without a key. Fixes #6290 * Update modules/caddypki/crypto.go --------- Co-authored-by: Matt Holt <mholt@users.noreply.github.com>

Florian Apolloner committed May 7, 2024 at 05:38 UTC c97292b255c144dfa9f1ea1dfcdec3b82717110d
1 file changed +11 -8
modules/caddypki/crypto.go
+11 -8
@@ -78,18 +78,21 @@ func (kp KeyPair) Load() (*x509.Certificate, crypto.Signer, error) {
78 if err != nil {
79 return nil, nil, err
80 }
81 - keyData, err := os.ReadFile(kp.PrivateKey)
82 - if err != nil {
83 - return nil, nil, err
84 - }
85 -
81 cert, err := pemDecodeSingleCert(certData)
82 if err != nil {
83 return nil, nil, err
84 }
90 - key, err := certmagic.PEMDecodePrivateKey(keyData)
91 - if err != nil {
92 - return nil, nil, err
85 +
86 + var key crypto.Signer
87 + if kp.PrivateKey != "" {
88 + keyData, err := os.ReadFile(kp.PrivateKey)
89 + if err != nil {
90 + return nil, nil, err
91 + }
92 + key, err = certmagic.PEMDecodePrivateKey(keyData)
93 + if err != nil {
94 + return nil, nil, err
95 + }
96 }
97
98 return cert, key, nil