MCPcopy Create free account
hub / github.com/1Panel-dev/1Panel / isPathInsideOrEqual

Function isPathInsideOrEqual

agent/app/service/runtime_utils.go:84–92  ·  view source on GitHub ↗
(baseDir, targetDir string)

Source from the content-addressed store, hash-verified

82}
83
84func isPathInsideOrEqual(baseDir, targetDir string) bool {
85 baseAbs := resolveRuntimePath(baseDir)
86 targetAbs := resolveRuntimePath(targetDir)
87 rel, err := filepath.Rel(baseAbs, targetAbs)
88 if err != nil {
89 return false
90 }
91 return rel == "." || (rel != ".." && !strings.HasPrefix(rel, ".."+string(os.PathSeparator)))
92}
93
94func resolveRuntimePath(dir string) string {
95 cleanDir := filepath.Clean(dir)

Callers 2

handleRuntimeFunction · 0.85
handlePHPFunction · 0.85

Calls 1

resolveRuntimePathFunction · 0.85

Tested by

no test coverage detected