summaryrefslogtreecommitdiffstats
path: root/modules/setting/attachment.go
diff options
context:
space:
mode:
authorsilverwind <me@silverwind.io>2020-10-05 07:49:33 +0200
committerGitHub <noreply@github.com>2020-10-05 01:49:33 -0400
commitcda44750cbdc7a8460666a4f0ac7f652d84a3964 (patch)
tree207745d1b529a0cde5207111d23bfc07c1e0312c /modules/setting/attachment.go
parent67a5573310cf23726e3c2ef4651221c6dc150075 (diff)
downloadgitea-cda44750cbdc7a8460666a4f0ac7f652d84a3964.tar.gz
gitea-cda44750cbdc7a8460666a4f0ac7f652d84a3964.zip
Attachments: Add extension support, allow all types for releases (#12465)
* Attachments: Add extension support, allow all types for releases - Add support for file extensions, matching the `accept` attribute of `<input type="file">` - Add support for type wildcard mime types, e.g. `image/*` - Create repository.release.ALLOWED_TYPES setting (default unrestricted) - Change default for attachment.ALLOWED_TYPES to a list of extensions - Split out POST /attachments into two endpoints for issue/pr and releases to prevent circumvention of allowed types check Fixes: https://github.com/go-gitea/gitea/pull/10172 Fixes: https://github.com/go-gitea/gitea/issues/7266 Fixes: https://github.com/go-gitea/gitea/pull/12460 Ref: https://developer.mozilla.org/en-US/docs/Web/HTML/Element/input/file#Unique_file_type_specifiers * rename function * extract GET routes out of RepoMustNotBeArchived Co-authored-by: Lauris BH <lauris@nix.lv>
Diffstat (limited to 'modules/setting/attachment.go')
-rw-r--r--modules/setting/attachment.go3
1 files changed, 1 insertions, 2 deletions
diff --git a/modules/setting/attachment.go b/modules/setting/attachment.go
index 56ccf5bc57..a51b23913a 100644
--- a/modules/setting/attachment.go
+++ b/modules/setting/attachment.go
@@ -6,7 +6,6 @@ package setting
import (
"path/filepath"
- "strings"
"code.gitea.io/gitea/modules/log"
)
@@ -65,7 +64,7 @@ func newAttachmentService() {
Attachment.Minio.BasePath = sec.Key("MINIO_BASE_PATH").MustString("attachments/")
}
- Attachment.AllowedTypes = strings.Replace(sec.Key("ALLOWED_TYPES").MustString("image/jpeg,image/png,application/zip,application/gzip"), "|", ",", -1)
+ Attachment.AllowedTypes = sec.Key("ALLOWED_TYPES").MustString(".docx,.gif,.gz,.jpeg,.jpg,.log,.pdf,.png,.pptx,.txt,.xlsx,.zip")
Attachment.MaxSize = sec.Key("MAX_SIZE").MustInt64(4)
Attachment.MaxFiles = sec.Key("MAX_FILES").MustInt(5)
Attachment.Enabled = sec.Key("ENABLED").MustBool(true)