package validator import ( "fmt" "github.com/authelia/authelia/v4/internal/configuration/schema" ) // ValidateDuo validates and updates the Duo configuration. func ValidateDuo(config *schema.Configuration, validator *schema.StructValidator) { if config.DuoAPI.Disable { return } if config.DuoAPI.Hostname == "" && config.DuoAPI.IntegrationKey == "" && config.DuoAPI.SecretKey == "" { config.DuoAPI.Disable = true } if config.DuoAPI.Disable { return } if config.DuoAPI.Hostname == "" { validator.Push(fmt.Errorf(errFmtDuoMissingOption, "hostname")) } if config.DuoAPI.IntegrationKey == "" { validator.Push(fmt.Errorf(errFmtDuoMissingOption, "integration_key")) } if config.DuoAPI.SecretKey == "" { validator.Push(fmt.Errorf(errFmtDuoMissingOption, "secret_key")) } }