allow to disable SFTP service

Fixes #228
This commit is contained in:
Nicola Murino
2020-11-24 13:44:57 +01:00
parent 99cd1ccfe5
commit 0609188d3f
9 changed files with 112 additions and 48 deletions

View File

@@ -2,6 +2,7 @@
package service
import (
"errors"
"fmt"
"io/ioutil"
"os"
@@ -73,6 +74,12 @@ func (s *Service) Start() error {
logger.Error(logSender, "", "error loading configuration: %v", err)
}
}
if !config.HasServicesToStart() {
infoString := "No service configured, nothing to do"
logger.Info(logSender, "", infoString)
logger.InfoToConsole(infoString)
return errors.New(infoString)
}
common.Initialize(config.GetCommonConfig())
@@ -115,15 +122,19 @@ func (s *Service) startServices() {
httpdConf := config.GetHTTPDConfig()
webDavDConf := config.GetWebDAVDConfig()
go func() {
logger.Debug(logSender, "", "initializing SFTP server with config %+v", sftpdConf)
if err := sftpdConf.Initialize(s.ConfigDir); err != nil {
logger.Error(logSender, "", "could not start SFTP server: %v", err)
logger.ErrorToConsole("could not start SFTP server: %v", err)
s.Error = err
}
s.Shutdown <- true
}()
if sftpdConf.BindPort > 0 {
go func() {
logger.Debug(logSender, "", "initializing SFTP server with config %+v", sftpdConf)
if err := sftpdConf.Initialize(s.ConfigDir); err != nil {
logger.Error(logSender, "", "could not start SFTP server: %v", err)
logger.ErrorToConsole("could not start SFTP server: %v", err)
s.Error = err
}
s.Shutdown <- true
}()
} else {
logger.Debug(logSender, "", "SFTP server not started, disabled in config file")
}
if httpdConf.BindPort > 0 {
go func() {
@@ -162,7 +173,7 @@ func (s *Service) startServices() {
s.Shutdown <- true
}()
} else {
logger.Debug(logSender, "", "WevDAV server not started, disabled in config file")
logger.Debug(logSender, "", "WebDAV server not started, disabled in config file")
}
}