Skip to content

cache: too much permissions #782

Closed
Closed
@jimen0

Description

@jimen0
  1. Version of golangci-lint: golangci-lint --version: current HEAD: fd997edeeb4ac277823750d746394d80f03d7ec1
  2. Config file: cat .golangci.yml: N/A
  3. Go environment: go version && go env: N/A
  4. Verbose output of running: golangci-lint run -v: N/A

While reading golangci-lint source code I found that the cache initialization method creates the directory using too many permissions:

// initDefaultCache does the work of finding the default cache
// the first time Default is called.
func initDefaultCache() {
dir := DefaultDir()
if err := os.MkdirAll(dir, 0777); err != nil {
log.Fatalf("failed to initialize build cache at %s: %s\n", dir, err)
}
if _, err := os.Stat(filepath.Join(dir, "README")); err != nil {
// Best effort.
ioutil.WriteFile(filepath.Join(dir, "README"), []byte(cacheREADME), 0666)
}
c, err := Open(dir)
if err != nil {
log.Fatalf("failed to initialize build cache at %s: %s\n", dir, err)
}
defaultCache = c
}

Are world executable and world-writable really needed? If not, I'd be open to creating a PR.

Thanks!

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions