diff options
Diffstat (limited to 'src')
| -rwxr-xr-x | src/init | 14 |
1 files changed, 10 insertions, 4 deletions
@@ -101,13 +101,19 @@ function setupRepo set -l user $parsedConfig[1] set -l permission $parsedConfig[2] - if not checkUsername "$user" - continue + if not doesUserExist "$user" + echo "WARN: repo '$repo' entry for unknown user '$user' skipped" + continue end - # check for valid permission - if not contains $permission $_PERMISSIONS + # check for valid permission: + # omitted (empty) -> default read (documented behavior) + # explicit typo -> deny (fail closed) + if test -z $permission set permission "r" + else if not contains $permission $_PERMISSIONS + echo "WARN: repo '$repo' user '$user' invalid permission '$permission' (allowed: r w) - no access granted" + continue end echo "$repoDir:$user:$permission" >> $_REPO_PERMISSIONS_FILE end |
