diff --git a/util/localconfig/file_perm_unix.go b/util/localconfig/file_perm_unix.go new file mode 100644 index 000000000000..558d2b1b38a8 --- /dev/null +++ b/util/localconfig/file_perm_unix.go @@ -0,0 +1,16 @@ +//go:build !windows + +package localconfig + +import ( + "fmt" + "os" +) + +func getFilePermission(fi os.FileInfo) error { + if fi.Mode().Perm() == 0600 || fi.Mode().Perm() == 0400 { + return nil + } + return fmt.Errorf("config file has incorrect permission flags:%s."+ + "change the file permission either to 0400 or 0600.", fi.Mode().Perm().String()) +} diff --git a/util/localconfig/file_perm_windows.go b/util/localconfig/file_perm_windows.go new file mode 100644 index 000000000000..945461a9021e --- /dev/null +++ b/util/localconfig/file_perm_windows.go @@ -0,0 +1,16 @@ +//go:build windows + +package localconfig + +import ( + "fmt" + "os" +) + +func getFilePermission(fi os.FileInfo) error { + if fi.Mode().Perm() == 0666 || fi.Mode().Perm() == 0444 { + return nil + } + return fmt.Errorf("config file has incorrect permission flags:%s."+ + "change the file permission either to 0444 or 0666.", fi.Mode().Perm().String()) +} diff --git a/util/localconfig/localconfig.go b/util/localconfig/localconfig.go index 7ca3da56ed6b..1a3828e24070 100644 --- a/util/localconfig/localconfig.go +++ b/util/localconfig/localconfig.go @@ -311,11 +311,3 @@ func GetUsername(subject string) string { } return subject } - -func getFilePermission(fi os.FileInfo) error { - if fi.Mode().Perm() == 0600 || fi.Mode().Perm() == 0400 { - return nil - } - return fmt.Errorf("config file has incorrect permission flags:%s."+ - "change the file permission either to 0400 or 0600.", fi.Mode().Perm().String()) -} diff --git a/util/localconfig/localconfig_test.go b/util/localconfig/localconfig_test.go index 59dae1159a39..74a5a5d546ff 100644 --- a/util/localconfig/localconfig_test.go +++ b/util/localconfig/localconfig_test.go @@ -1,3 +1,5 @@ +//go:build !windows + package localconfig import ( @@ -83,7 +85,7 @@ func TestFilePermission(t *testing.T) { if err := getFilePermission(fi); err != nil { assert.EqualError(t, err, c.expectedError.Error()) } else { - require.Nil(t, err) + require.Nil(t, c.expectedError) } }) }