]> ruderich.org/simon Gitweb - safcm/safcm.git/blobdiff - cmd/safcm/config/files.go
Update copyright years
[safcm/safcm.git] / cmd / safcm / config / files.go
index 7ffa8b201cfeb5548cb0d2356f19677931218542..e53f8041980cacee0fff061a3e9bd34fdc494c81 100644 (file)
@@ -1,6 +1,6 @@
 // Config: load files/ directory tree
 
-// Copyright (C) 2021  Simon Ruderich
+// Copyright (C) 2021-2024  Simon Ruderich
 //
 // This program is free software: you can redistribute it and/or modify
 // it under the terms of the GNU General Public License as published by
@@ -40,6 +40,9 @@ confusion files must be manually chmodded 0644/0755 and directories 0755 or
 via "safcm fixperms".
 `
 
+       // No permission checks on windows which doesn't track them.
+       windows := runtime.GOOS == "windows"
+
        files := make(map[string]*safcm.File)
        err := filepath.WalkDir(basePath, func(path string, d fs.DirEntry,
                err error) error {
@@ -60,6 +63,11 @@ via "safcm fixperms".
                // permissions they could assume that these permissions are
                // respected. This is not the case.
                if typ == 0 /* regular file */ {
+                       if windows {
+                               perm = 0644
+                               // 0755 must be set via permissions.yaml if
+                               // windows is used
+                       }
                        if perm != 0644 && perm != 0755 {
                                return fmt.Errorf(
                                        "%q: invalid permissions %#o%s",
@@ -70,6 +78,9 @@ via "safcm fixperms".
                                return err
                        }
                } else if typ == fs.ModeDir {
+                       if windows {
+                               perm = 0755
+                       }
                        if perm != 0755 {
                                return fmt.Errorf(
                                        "%q: invalid permissions %#o%s",