diff options
-rw-r--r-- | api/file.go | 5 | ||||
-rw-r--r-- | i18n/en.json | 4 |
2 files changed, 9 insertions, 0 deletions
diff --git a/api/file.go b/api/file.go index 9150e4bfe..f0873f884 100644 --- a/api/file.go +++ b/api/file.go @@ -394,6 +394,11 @@ func getFile(c *Context, w http.ResponseWriter, r *http.Request) { getFileAndForget(path, fileData) if len(hash) > 0 && len(data) > 0 && len(teamId) == 26 { + if !utils.Cfg.FileSettings.EnablePublicLink { + c.Err = model.NewLocAppError("getFile", "api.file.get_file.public_disabled.app_error", nil, "") + return + } + if !model.ComparePassword(hash, fmt.Sprintf("%v:%v", data, utils.Cfg.FileSettings.PublicLinkSalt)) { c.Err = model.NewLocAppError("getFile", "api.file.get_file.public_invalid.app_error", nil, "") return diff --git a/i18n/en.json b/i18n/en.json index 40bce082c..7dcc351f1 100644 --- a/i18n/en.json +++ b/i18n/en.json @@ -476,6 +476,10 @@ "translation": "Could not find file." }, { + "id": "api.file.get_file.public_disabled.app_error", + "translation": "Public links have been disabled by the system administrator" + }, + { "id": "api.file.get_file.public_invalid.app_error", "translation": "The public link does not appear to be valid" }, |