From 46f2dfa7a51487e1b21c329dfb2e4cac3e6ada11 Mon Sep 17 00:00:00 2001 From: Michael Adam Date: Fri, 23 Nov 2012 01:35:30 +0100 Subject: selftest:Samba3: provision the BUILTIN\Users group if the environment runs winbindd Note that in order to create a local group (alias), the id-allocator of id-mapping is needed, so this can only work if winbindd is running. Signed-off-by: Michael Adam Reviewed-by: Stefan Metzmacher --- selftest/target/Samba3.pm | 24 ++++++++++++++++++++++++ 1 file changed, 24 insertions(+) diff --git a/selftest/target/Samba3.pm b/selftest/target/Samba3.pm index 99f126c96d..ea2e21d6f3 100755 --- a/selftest/target/Samba3.pm +++ b/selftest/target/Samba3.pm @@ -1158,6 +1158,30 @@ sub wait_for_start($$$$$) return 1; } + if ($winbindd eq "yes") { + # note: creating builtin groups requires winbindd for the + # unix id allocator + $ret = system("WINBINDD_SOCKET_DIR=" . $envvars->{WINBINDD_SOCKET_DIR} . " " . Samba::bindir_path($self, "net") ." $envvars->{CONFIGURATION} sam createbuiltingroup Users"); + if ($ret != 0) { + print "Failed to create BUILTIN\\Users group\n"; + return 0; + } + my $count = 0; + do { + system(Samba::bindir_path($self, "net") . " $envvars->{CONFIGURATION} cache flush"); + $ret = system("WINBINDD_SOCKET_DIR=" . $envvars->{WINBINDD_SOCKET_DIR} . " " . Samba::bindir_path($self, "wbinfo") . " --sid-to-gid=S-1-5-32-545"); + if ($ret != 0) { + sleep(2); + } + $count++; + } while ($ret != 0 && $count < 10); + if ($count == 10) { + print "WINBINDD not reachable after 20 seconds\n"; + teardown_env($self, $envvars); + return 0; + } + } + print $self->getlog_env($envvars); return 1; -- cgit