diff --git a/cmd/server-main.go b/cmd/server-main.go index 104806c68..939607d38 100644 --- a/cmd/server-main.go +++ b/cmd/server-main.go @@ -23,6 +23,7 @@ import ( "net/url" "os" "path" + "path/filepath" "sort" "strconv" "strings" @@ -482,6 +483,14 @@ func serverMain(c *cli.Context) { fatalIf(errors.New("empty directory"), "Configuration directory cannot be empty.") } + // Disallow relative paths, figure out absolute paths. + { + configDirAbs, err := filepath.Abs(configDir) + fatalIf(err, "Unable to fetch absolute path for config directory %s", configDir) + + configDir = configDirAbs + } + // Set configuration directory. setConfigDir(configDir)