diff options
author | ᴜɴᴋɴᴡᴏɴ <u@gogs.io> | 2020-02-19 23:45:02 +0800 |
---|---|---|
committer | ᴜɴᴋɴᴡᴏɴ <u@gogs.io> | 2020-02-19 23:45:02 +0800 |
commit | ce1ec81d6fa4b9531eee8c51a6ce1a095ea9beb2 (patch) | |
tree | 66d77fa7507ad3c5a8fcfbdefe1451b1d06a810d /internal/pathutil/pathutil.go | |
parent | 33c6341ccd765fa631d6863aeeca12a6a5e04658 (diff) |
repo/editor: clean up tree path
Fixes a security issue reported by @zeripath.
Diffstat (limited to 'internal/pathutil/pathutil.go')
-rw-r--r-- | internal/pathutil/pathutil.go | 15 |
1 files changed, 15 insertions, 0 deletions
diff --git a/internal/pathutil/pathutil.go b/internal/pathutil/pathutil.go new file mode 100644 index 00000000..6a7286e1 --- /dev/null +++ b/internal/pathutil/pathutil.go @@ -0,0 +1,15 @@ +// Copyright 2020 The Gogs Authors. All rights reserved. +// Use of this source code is governed by a MIT-style +// license that can be found in the LICENSE file. + +package pathutil + +import ( + "path" + "strings" +) + +// Clean cleans up given path and returns a relative path that goes straight down. +func Clean(p string) string { + return strings.Trim(path.Clean("/"+p), "/") +} |