mirror of
https://github.com/opencloud-eu/opencloud.git
synced 2026-01-06 20:29:54 -06:00
notifications: Deprecate redundant encryptions settings
'tls' and 'ssl' are duplicates of 'starttls' and 'ssltls' and have been deprecated in the upstream modules we use for sending mail notifications. Let's deprecate them as well and issue a warning when they are still used. Fixes: #7345
This commit is contained in:
committed by
Ralf Haferkamp
parent
e03de5da04
commit
246ec1ecc9
@@ -0,0 +1,8 @@
|
||||
Bugfix: Deprecate redundant encryptions settings for notification service
|
||||
|
||||
The values `tls` and `ssl` for the `smtp_encryption` configuration setting are
|
||||
duplicates of `starttls` and `ssltls`. They have been marked as deprecated.
|
||||
A warning will be logged when they are still used. Please use `starttls` instead
|
||||
for `tls` and `ssltls` instead of `ssl.
|
||||
|
||||
https://github.com/owncloud/ocis/issues/7345
|
||||
@@ -44,7 +44,7 @@ type SMTP struct {
|
||||
Password string `yaml:"smtp_password" env:"NOTIFICATIONS_SMTP_PASSWORD" desc:"Password for the SMTP host to connect to."`
|
||||
Insecure bool `yaml:"insecure" env:"NOTIFICATIONS_SMTP_INSECURE" desc:"Allow insecure connections to the SMTP server."`
|
||||
Authentication string `yaml:"smtp_authentication" env:"NOTIFICATIONS_SMTP_AUTHENTICATION" desc:"Authentication method for the SMTP communication. Possible values are 'login', 'plain', 'crammd5', 'none'"`
|
||||
Encryption string `yaml:"smtp_encryption" env:"NOTIFICATIONS_SMTP_ENCRYPTION" desc:"Encryption method for the SMTP communication. Possible values are 'starttls', 'ssl', 'ssltls', 'tls' and 'none'."`
|
||||
Encryption string `yaml:"smtp_encryption" env:"NOTIFICATIONS_SMTP_ENCRYPTION" desc:"Encryption method for the SMTP communication. Possible values are 'starttls', 'ssl', 'ssltls', 'tls' and 'none'." deprecationVersion:"5.0.0" removalVersion:"6.0.0" deprecationInfo:"The NOTIFICATIONS_SMTP_ENCRYPTION values 'ssl' and 'tls' are deprecated and will be removed in the future." deprecationReplacement:"Use 'starttls' instead of 'tls' and 'ssltls' instead of 'ssl'."`
|
||||
}
|
||||
|
||||
// Events combines the configuration options for the event bus.
|
||||
|
||||
@@ -2,10 +2,12 @@ package parser
|
||||
|
||||
import (
|
||||
"errors"
|
||||
"fmt"
|
||||
|
||||
ociscfg "github.com/owncloud/ocis/v2/ocis-pkg/config"
|
||||
"github.com/owncloud/ocis/v2/services/notifications/pkg/config"
|
||||
"github.com/owncloud/ocis/v2/services/notifications/pkg/config/defaults"
|
||||
"github.com/owncloud/ocis/v2/services/notifications/pkg/logging"
|
||||
|
||||
"github.com/owncloud/ocis/v2/ocis-pkg/config/envdecode"
|
||||
)
|
||||
@@ -33,5 +35,22 @@ func ParseConfig(cfg *config.Config) error {
|
||||
}
|
||||
|
||||
func Validate(cfg *config.Config) error {
|
||||
logger := logging.Configure(cfg.Service.Name, cfg.Log)
|
||||
|
||||
if cfg.Notifications.SMTP.Host != "" {
|
||||
switch cfg.Notifications.SMTP.Encryption {
|
||||
case "tls":
|
||||
logger.Warn().Msg("The smtp_encryption value 'tls' is deprecated. Please use the value 'starttls' instead.")
|
||||
case "ssl":
|
||||
logger.Warn().Msg("The smtp_encryption value 'ssl' is deprecated. Please use the value 'ssltls' instead.")
|
||||
case "starttls", "ssltls", "none":
|
||||
break
|
||||
default:
|
||||
return fmt.Errorf(
|
||||
"unknown value '%s' for 'smtp_encryption' in service %s. Allowed values are 'starttls', 'ssltls' or 'none'",
|
||||
cfg.Notifications.SMTP.Encryption, cfg.Service.Name,
|
||||
)
|
||||
}
|
||||
}
|
||||
return nil
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user