mirror of
https://github.com/opencloud-eu/opencloud.git
synced 2025-12-26 15:50:47 -05:00
13 lines
376 B
Go
13 lines
376 B
Go
package filepathx
|
|
|
|
import (
|
|
"path/filepath"
|
|
)
|
|
|
|
// JailJoin joins any number of path elements into a single path,
|
|
// it protects against directory traversal by removing any "../" elements
|
|
// and ensuring that the path is always under the jail.
|
|
func JailJoin(jail string, elem ...string) string {
|
|
return filepath.Join(jail, filepath.Join(append([]string{"/"}, elem...)...))
|
|
}
|