diff options
author | Daniel Baumann <daniel.baumann@progress-linux.org> | 2024-05-05 17:47:29 +0000 |
---|---|---|
committer | Daniel Baumann <daniel.baumann@progress-linux.org> | 2024-05-05 17:47:29 +0000 |
commit | 4f5791ebd03eaec1c7da0865a383175b05102712 (patch) | |
tree | 8ce7b00f7a76baa386372422adebbe64510812d4 /testsuite/nsswitch/domusers.exp | |
parent | Initial commit. (diff) | |
download | samba-upstream.tar.xz samba-upstream.zip |
Adding upstream version 2:4.17.12+dfsg.upstream/2%4.17.12+dfsgupstream
Signed-off-by: Daniel Baumann <daniel.baumann@progress-linux.org>
Diffstat (limited to '')
-rw-r--r-- | testsuite/nsswitch/domusers.exp | 38 |
1 files changed, 38 insertions, 0 deletions
diff --git a/testsuite/nsswitch/domusers.exp b/testsuite/nsswitch/domusers.exp new file mode 100644 index 0000000..3b291ab --- /dev/null +++ b/testsuite/nsswitch/domusers.exp @@ -0,0 +1,38 @@ +# +# @(#) Test that all users are members of the Domain Users group. +# +# Note that this isn't necessarily true all the time but you have to +# explicitly move people out of that group so it should be OK for te +# + +load_lib util-defs.exp +load_lib $srcdir/lib/nsswitch-config.exp + +# Get list of users and stick usernames in a hash + +set user_list [util_start "getent" "passwd" ""] + +foreach { user } [split $user_list "\n"] { + set user_elts [split $user ":"] + set users([lindex $user_elts 0]) 1 +} + +# Get list of groups + +set group_list [util_start "getent" "group" ""] + +foreach { group } [split $group_list "\n"] { + set group_elts [split $group ":"] + + # Look for domain users group + + if { ![regexp "Domain Users" [lindex $group_elts 0]] } { + continue + } + + # Check each member of group was found in getent passwd + + foreach { mem } [split [lindex $group_elts 3] ","] { + set mems($mem) 1 + } +} |