Merge remote-tracking branch 'origin/main'
This commit is contained in:
commit
0ffc73918a
2 changed files with 26 additions and 1 deletions
|
|
@ -102,3 +102,28 @@ func TestCacheDefaults(t *testing.T) {
|
|||
t.Fatal("expected cache instance")
|
||||
}
|
||||
}
|
||||
|
||||
func TestGitHubKeys(t *testing.T) {
|
||||
key := cache.GitHubReposKey("myorg")
|
||||
if key != "github/myorg/repos" {
|
||||
t.Errorf("unexpected GitHubReposKey: %q", key)
|
||||
}
|
||||
|
||||
key = cache.GitHubRepoKey("myorg", "myrepo")
|
||||
if key != "github/myorg/myrepo/meta" {
|
||||
t.Errorf("unexpected GitHubRepoKey: %q", key)
|
||||
}
|
||||
}
|
||||
|
||||
func TestPathTraversalRejected(t *testing.T) {
|
||||
m := coreio.NewMockMedium()
|
||||
c, err := cache.New(m, "/tmp/cache-traversal", 1*time.Minute)
|
||||
if err != nil {
|
||||
t.Fatalf("failed to create cache: %v", err)
|
||||
}
|
||||
|
||||
_, err = c.Path("../../etc/passwd")
|
||||
if err == nil {
|
||||
t.Error("expected error for path traversal key, got nil")
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -179,7 +179,7 @@ paths, then checks that the result is still a prefix of the base:
|
|||
|
||||
```go
|
||||
if !strings.HasPrefix(absPath, absBase) {
|
||||
return "", fmt.Errorf("invalid cache key: path traversal attempt")
|
||||
return "", coreerr.E("cache.Path", "invalid cache key: path traversal attempt", nil)
|
||||
}
|
||||
```
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue