summaryrefslogtreecommitdiffstats
path: root/modules/setting/repository.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/repository.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/repository.go')
-rw-r--r--modules/setting/repository.go16
1 files changed, 13 insertions, 3 deletions
diff --git a/modules/setting/repository.go b/modules/setting/repository.go
index 5203a1bbeb..96159e2f4a 100644
--- a/modules/setting/repository.go
+++ b/modules/setting/repository.go
@@ -58,7 +58,7 @@ var (
Upload struct {
Enabled bool
TempPath string
- AllowedTypes []string `delim:"|"`
+ AllowedTypes string
FileMaxSize int64
MaxFiles int
} `ini:"-"`
@@ -85,6 +85,10 @@ var (
LockReasons []string
} `ini:"repository.issue"`
+ Release struct {
+ AllowedTypes string
+ } `ini:"repository.release"`
+
Signing struct {
SigningKey string
SigningName string
@@ -165,13 +169,13 @@ var (
Upload: struct {
Enabled bool
TempPath string
- AllowedTypes []string `delim:"|"`
+ AllowedTypes string
FileMaxSize int64
MaxFiles int
}{
Enabled: true,
TempPath: "data/tmp/uploads",
- AllowedTypes: []string{},
+ AllowedTypes: "",
FileMaxSize: 3,
MaxFiles: 5,
},
@@ -213,6 +217,12 @@ var (
LockReasons: strings.Split("Too heated,Off-topic,Spam,Resolved", ","),
},
+ Release: struct {
+ AllowedTypes string
+ }{
+ AllowedTypes: "",
+ },
+
// Signing settings
Signing: struct {
SigningKey string