summaryrefslogtreecommitdiffstats
path: root/core/modules/pam-slx-plug/data/opt/openslx/pam/mkhome
diff options
context:
space:
mode:
Diffstat (limited to 'core/modules/pam-slx-plug/data/opt/openslx/pam/mkhome')
-rwxr-xr-xcore/modules/pam-slx-plug/data/opt/openslx/pam/mkhome13
1 files changed, 13 insertions, 0 deletions
diff --git a/core/modules/pam-slx-plug/data/opt/openslx/pam/mkhome b/core/modules/pam-slx-plug/data/opt/openslx/pam/mkhome
new file mode 100755
index 00000000..64d2260d
--- /dev/null
+++ b/core/modules/pam-slx-plug/data/opt/openslx/pam/mkhome
@@ -0,0 +1,13 @@
+#!/bin/ash
+
+U=$(id -u "$PAM_USER")
+[ -z "$U" ] && exit 1
+E="$(getent passwd "$U")"
+[ -z "$E" ] && exit 2
+G="$(echo "$E" | awk -F: '{print $4}')"
+[ -z "$G" ] && exit 3
+DIR="$(echo "$E" | awk -F: '{print $6}')"
+[ -z "$DIR" ] && exit 4
+mkdir -p "$DIR" || exit 5
+chown "$U:$G" "$DIR"
+