diff --git a/app.go b/app.go index 07c67916..90575090 100644 --- a/app.go +++ b/app.go @@ -179,7 +179,7 @@ func run(args options) { address := net.JoinHostPort(config.BindHost, strconv.Itoa(config.TLS.PortHTTPS)) // validate current TLS config and update warnings (it could have been loaded from file) data := validateCertificates(config.TLS.CertificateChain, config.TLS.PrivateKey, config.TLS.ServerName) - if !data.usable { + if !data.ValidPair { log.Fatal(data.WarningValidation) os.Exit(1) } diff --git a/config.go b/config.go index 87e5c6a8..1afc8f17 100644 --- a/config.go +++ b/config.go @@ -87,7 +87,7 @@ type tlsConfigStatus struct { KeyType string `yaml:"-" json:"key_type,omitempty"` // KeyType is one of RSA or ECDSA // is usable? set by validator - usable bool + ValidPair bool `yaml:"-" json:"valid_pair"` // ValidPair is true if both certificate and private key are correct // warnings WarningValidation string `yaml:"-" json:"warning_validation,omitempty"` // WarningValidation is a validation warning message with the issue description diff --git a/control.go b/control.go index 57e614ca..eba3fd6e 100644 --- a/control.go +++ b/control.go @@ -1227,7 +1227,7 @@ func validateCertificates(certChain, pkey, serverName string) tlsConfigStatus { data.WarningValidation = fmt.Sprintf("Invalid certificate or key: %s", err) return data } - data.usable = true + data.ValidPair = true } return data diff --git a/control_test.go b/control_test.go index c5df3b45..b823b252 100644 --- a/control_test.go +++ b/control_test.go @@ -71,7 +71,7 @@ kXS9jgARhhiWXJrk data.NotBefore == notBefore && data.NotAfter == notAfter && // data.DNSNames[0] == && - data.usable) { + data.ValidPair) { t.Fatalf("valid cert & priv key: validateCertificates(): %v", data) } } diff --git a/openapi/openapi.yaml b/openapi/openapi.yaml index f1e23f86..4cf406e0 100644 --- a/openapi/openapi.yaml +++ b/openapi/openapi.yaml @@ -1247,6 +1247,10 @@ definitions: type: "string" example: "You have specified an empty certificate" description: "warning_validation is a validation warning message with the issue description" + valid_pair: + type: "boolean" + example: "true" + description: "valid_pair is true if both certificate and private key are correct" NetInterface: type: "object" description: "Network interface info"