fix(settings): read PEM files but b64 env vars
- Extract base64 data from PEM files and secret files - Environment variables are not PEM encoded and only the base64 data - Affects OpenVPN certificate, key and encrypted key
This commit is contained in:
@@ -1,6 +1,7 @@
|
||||
package settings
|
||||
|
||||
import (
|
||||
"encoding/base64"
|
||||
"fmt"
|
||||
"regexp"
|
||||
"strings"
|
||||
@@ -193,7 +194,7 @@ func validateOpenVPNClientCertificate(vpnProvider,
|
||||
return nil
|
||||
}
|
||||
|
||||
_, err = extract.PEM([]byte(clientCert))
|
||||
_, err = base64.StdEncoding.DecodeString(clientCert)
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
@@ -215,7 +216,7 @@ func validateOpenVPNClientKey(vpnProvider, clientKey string) (err error) {
|
||||
return nil
|
||||
}
|
||||
|
||||
_, err = extract.PEM([]byte(clientKey))
|
||||
_, err = base64.StdEncoding.DecodeString(clientKey)
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
@@ -232,9 +233,9 @@ func validateOpenVPNEncryptedKey(vpnProvider,
|
||||
return nil
|
||||
}
|
||||
|
||||
_, err = extract.PEM([]byte(encryptedPrivateKey))
|
||||
_, err = base64.StdEncoding.DecodeString(encryptedPrivateKey)
|
||||
if err != nil {
|
||||
return fmt.Errorf("extracting encrypted key: %w", err)
|
||||
return err
|
||||
}
|
||||
return nil
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user