From b375589db3b890f3379a7082cf84555fd709b14d Mon Sep 17 00:00:00 2001 From: Andrew Bartlett Date: Thu, 15 Jun 2017 16:20:11 +1200 Subject: [PATCH] selftest: Also wait for winbindd to start This ensures that the posixacl.py test does not race against winbindd starting up and so give wrong mappings BUG: https://bugzilla.samba.org/show_bug.cgi?id=12843 Signed-off-by: Andrew Bartlett Reviewed-by: Jeremy Allison Reviewed-by: Stefan Metzmacher (cherry picked from commit 1b88c5d4c0e5da2e4092a06f6cd6bf3c8b767883) --- selftest/target/Samba4.pm | 22 ++++++++++++++++++++++ 1 file changed, 22 insertions(+) diff --git a/selftest/target/Samba4.pm b/selftest/target/Samba4.pm index 7e1be64..a89773f 100755 --- a/selftest/target/Samba4.pm +++ b/selftest/target/Samba4.pm @@ -237,6 +237,28 @@ sub wait_for_start($$) sleep(1); } } + + my $wbinfo = Samba::bindir_path($self, "wbinfo"); + + $count = 0; + do { + my $cmd = "NSS_WRAPPER_PASSWD=$testenv_vars->{NSS_WRAPPER_PASSWD} "; + $cmd .= "NSS_WRAPPER_GROUP=$testenv_vars->{NSS_WRAPPER_GROUP} "; + $cmd .= "SELFTEST_WINBINDD_SOCKET_DIR=$testenv_vars->{SELFTEST_WINBINDD_SOCKET_DIR} "; + $cmd .= "$wbinfo -p"; + $ret = system($cmd); + + if ($ret != 0) { + sleep(1); + } + $count++; + } while ($ret != 0 && $count < 20); + if ($count == 20) { + warn("winbind not reachable after 20 retries\n"); + teardown_env($self, $testenv_vars); + return 0; + } + print $self->getlog_env($testenv_vars); return $ret -- 2.9.4