mirror of
https://github.com/samba-team/samba.git
synced 2025-02-02 09:47:23 +03:00
selftest:Samba3: add nmbd, winbindd smbd arguments to wait_for_start()
to make checks conditional Signed-off-by: Michael Adam <obnox@samba.org> Reviewed-by: Stefan Metzmacher <metze@samba.org>
This commit is contained in:
parent
f7dca55224
commit
5b975ce78c
@ -675,7 +675,7 @@ sub check_or_start($$$$$) {
|
||||
|
||||
close(STDIN_READER);
|
||||
|
||||
return $self->wait_for_start($env_vars);
|
||||
return $self->wait_for_start($env_vars, $nmbd, $winbindd, $smbd);
|
||||
}
|
||||
|
||||
sub provision($$$$$$)
|
||||
@ -1094,38 +1094,43 @@ domadmins:X:$gid_domadmins:
|
||||
return \%ret;
|
||||
}
|
||||
|
||||
sub wait_for_start($$)
|
||||
sub wait_for_start($$$$$)
|
||||
{
|
||||
my ($self, $envvars) = @_;
|
||||
my ($self, $envvars, $nmbd, $winbindd, $smbd) = @_;
|
||||
|
||||
# give time for nbt server to register its names
|
||||
print "delaying for nbt name registration\n";
|
||||
sleep(10);
|
||||
# This will return quickly when things are up, but be slow if we need to wait for (eg) SSL init
|
||||
my $nmblookup = Samba::bindir_path($self, "nmblookup3");
|
||||
system("$nmblookup $envvars->{CONFIGURATION} -U $envvars->{SERVER_IP} __SAMBA__");
|
||||
system("$nmblookup $envvars->{CONFIGURATION} __SAMBA__");
|
||||
system("$nmblookup $envvars->{CONFIGURATION} -U 127.255.255.255 __SAMBA__");
|
||||
system("$nmblookup $envvars->{CONFIGURATION} -U $envvars->{SERVER_IP} $envvars->{SERVER}");
|
||||
system("$nmblookup $envvars->{CONFIGURATION} $envvars->{SERVER}");
|
||||
|
||||
# make sure smbd is also up set
|
||||
print "wait for smbd\n";
|
||||
|
||||
my $count = 0;
|
||||
my $ret;
|
||||
do {
|
||||
$ret = system(Samba::bindir_path($self, "smbclient3") ." $envvars->{CONFIGURATION} -L $envvars->{SERVER} -U% -p 139");
|
||||
if ($ret != 0) {
|
||||
sleep(2);
|
||||
}
|
||||
$count++
|
||||
} while ($ret != 0 && $count < 10);
|
||||
if ($count == 10) {
|
||||
print "SMBD failed to start up in a reasonable time (20sec)\n";
|
||||
teardown_env($self, $envvars);
|
||||
return 0;
|
||||
if ($nmbd eq "yes") {
|
||||
# give time for nbt server to register its names
|
||||
print "delaying for nbt name registration\n";
|
||||
sleep(10);
|
||||
# This will return quickly when things are up, but be slow if we need to wait for (eg) SSL init
|
||||
my $nmblookup = Samba::bindir_path($self, "nmblookup3");
|
||||
system("$nmblookup $envvars->{CONFIGURATION} -U $envvars->{SERVER_IP} __SAMBA__");
|
||||
system("$nmblookup $envvars->{CONFIGURATION} __SAMBA__");
|
||||
system("$nmblookup $envvars->{CONFIGURATION} -U 127.255.255.255 __SAMBA__");
|
||||
system("$nmblookup $envvars->{CONFIGURATION} -U $envvars->{SERVER_IP} $envvars->{SERVER}");
|
||||
system("$nmblookup $envvars->{CONFIGURATION} $envvars->{SERVER}");
|
||||
}
|
||||
|
||||
if ($smbd eq "yes") {
|
||||
# make sure smbd is also up set
|
||||
print "wait for smbd\n";
|
||||
|
||||
my $count = 0;
|
||||
my $ret;
|
||||
do {
|
||||
$ret = system(Samba::bindir_path($self, "smbclient3") ." $envvars->{CONFIGURATION} -L $envvars->{SERVER} -U% -p 139");
|
||||
if ($ret != 0) {
|
||||
sleep(2);
|
||||
}
|
||||
$count++
|
||||
} while ($ret != 0 && $count < 10);
|
||||
if ($count == 10) {
|
||||
print "SMBD failed to start up in a reasonable time (20sec)\n";
|
||||
teardown_env($self, $envvars);
|
||||
return 0;
|
||||
}
|
||||
}
|
||||
|
||||
# Ensure we have domain users mapped.
|
||||
$ret = system(Samba::bindir_path($self, "net") ." $envvars->{CONFIGURATION} groupmap add rid=513 unixgroup=domusers type=domain");
|
||||
if ($ret != 0) {
|
||||
|
Loading…
x
Reference in New Issue
Block a user