From c8bc7089f589e33a624183ae63c1cb1b3d652c7c Mon Sep 17 00:00:00 2001 From: Andrew Bartlett Date: Mon, 28 Mar 2011 20:42:55 +1100 Subject: s3-selftest Add tests for security=server Andrew Bartlett --- selftest/target/Samba3.pm | 39 +++++++++++++++++++++++++++++++++++++++ 1 file changed, 39 insertions(+) (limited to 'selftest') diff --git a/selftest/target/Samba3.pm b/selftest/target/Samba3.pm index 6a18f27231..38148ebbee 100644 --- a/selftest/target/Samba3.pm +++ b/selftest/target/Samba3.pm @@ -102,6 +102,11 @@ sub setup_env($$$) return $self->setup_dc("$path/dc"); } elsif ($envname eq "secshare") { return $self->setup_secshare("$path/secshare"); + } elsif ($envname eq "secserver") { + if (not defined($self->{vars}->{dc})) { + $self->setup_dc("$path/dc"); + } + return $self->setup_secserver("$path/secserver", $self->{vars}->{dc}); } elsif ($envname eq "member") { if (not defined($self->{vars}->{dc})) { $self->setup_dc("$path/dc"); @@ -216,6 +221,40 @@ sub setup_secshare($$) return $vars; } +sub setup_secserver($$$) +{ + my ($self, $prefix, $dcvars) = @_; + + print "PROVISIONING server with security=server..."; + + my $secserver_options = " + security = server + password server = $dcvars->{SERVER_IP} +"; + + my $ret = $self->provision($prefix, + "LOCALSERVER5", + 5, + "localserver5pass", + $secserver_options); + + $ret or die("Unable to provision"); + + $self->check_or_start($ret, + ($ENV{SMBD_MAXTIME} or 2700), + "yes", "no", "yes"); + + $self->wait_for_start($ret); + + $ret->{DC_SERVER} = $dcvars->{SERVER}; + $ret->{DC_SERVER_IP} = $dcvars->{SERVER_IP}; + $ret->{DC_NETBIOSNAME} = $dcvars->{NETBIOSNAME}; + $ret->{DC_USERNAME} = $dcvars->{USERNAME}; + $ret->{DC_PASSWORD} = $dcvars->{PASSWORD}; + + return $ret; +} + sub stop_sig_term($$) { my ($self, $pid) = @_; kill("USR1", $pid) or kill("ALRM", $pid) or warn("Unable to kill $pid: $!"); -- cgit