fix workarounds

This commit is contained in:
crapStone 2024-11-27 22:55:18 +01:00
parent e3ec4f948c
commit 40196377e3
No known key found for this signature in database
GPG key ID: 22D4BF0CF7CC29C8
3 changed files with 4 additions and 5 deletions

View file

@ -3,6 +3,7 @@ package acme
import (
"errors"
"fmt"
"strings"
"codeberg.org/codeberg/pages/config"
"codeberg.org/codeberg/pages/server/cache"
@ -13,8 +14,8 @@ var ErrAcmeMissConfig = errors.New("ACME client has wrong config")
func CreateAcmeClient(cfg config.ACMEConfig, enableHTTPServer bool, challengeCache cache.ICache) (*certificates.AcmeClient, error) {
// check config
if (!cfg.AcceptTerms || (cfg.DNSProvider == "" && !cfg.NoDNS01)) && cfg.APIEndpoint != "https://acme.mock.directory" {
return nil, fmt.Errorf("%w: you must set $ACME_ACCEPT_TERMS and $DNS_PROVIDER or $NO_DNS_01, unless $ACME_API is set to https://acme.mock.directory", ErrAcmeMissConfig)
if (!cfg.AcceptTerms || (cfg.DNSProvider == "" && !cfg.NoDNS01)) && (cfg.APIEndpoint != "https://acme.mock.directory" || strings.HasPrefix(cfg.APIEndpoint, "https://localhost")) {
return nil, fmt.Errorf("%w: you must set $ACME_ACCEPT_TERMS and $DNS_PROVIDER or $NO_DNS_01, unless $ACME_API is set to https://acme.mock.directory or starts with https://localhost", ErrAcmeMissConfig)
}
if cfg.EAB_HMAC != "" && cfg.EAB_KID == "" {
return nil, fmt.Errorf("%w: ACME_EAB_HMAC also needs ACME_EAB_KID to be set", ErrAcmeMissConfig)