svn commit: samba r25438 - in branches/SAMBA_4_0/source/selftest/env: .

metze at samba.org metze at samba.org
Sun Sep 30 09:08:10 GMT 2007


Author: metze
Date: 2007-09-30 09:08:10 +0000 (Sun, 30 Sep 2007)
New Revision: 25438

WebSVN: http://websvn.samba.org/cgi-bin/viewcvs.cgi?view=rev&root=samba&rev=25438

Log:
start samba3's winbindd in the selftest "dc" env

metze
Modified:
   branches/SAMBA_4_0/source/selftest/env/Samba3.pm


Changeset:
Modified: branches/SAMBA_4_0/source/selftest/env/Samba3.pm
===================================================================
--- branches/SAMBA_4_0/source/selftest/env/Samba3.pm	2007-09-30 09:07:07 UTC (rev 25437)
+++ branches/SAMBA_4_0/source/selftest/env/Samba3.pm	2007-09-30 09:08:10 UTC (rev 25438)
@@ -36,11 +36,14 @@
 
 	my $smbdpid = read_pid($envvars, "smbd");
 	my $nmbdpid = read_pid($envvars, "nmbd");
+	my $winbinddpid = read_pid($envvars, "winbindd");
 
 	$self->stop_sig_term($smbdpid);
 	$self->stop_sig_term($nmbdpid);
+	$self->stop_sig_term($winbinddpid);
 	$self->stop_sig_kill($smbdpid);
 	$self->stop_sig_kill($nmbdpid);
+	$self->stop_sig_kill($winbinddpid);
 
 	return 0;
 }
@@ -69,8 +72,13 @@
 sub getlog_env($$)
 {
 	my ($self, $envvars) = @_;
+	my $ret = "";
 
-	return $self->getlog_env_app($envvars, "SMBD") .  $self->getlog_env_app($envvars, "NMBD");
+	$ret .= $self->getlog_env_app($envvars, "SMBD");
+	$ret .= $self->getlog_env_app($envvars, "NMBD");
+	$ret .= $self->getlog_env_app($envvars, "WINBINDD");
+
+	return $ret;
 }
 
 sub check_env($$)
@@ -98,7 +106,10 @@
 
 	my $vars = $self->provision($path, "dc");
 
-	$self->check_or_start($vars, ($ENV{NMBD_MAXTIME} or 2700), ($ENV{SMBD_MAXTIME} or 2700));
+	$self->check_or_start($vars,
+			      ($ENV{NMBD_MAXTIME} or 2700),
+			      ($ENV{WINBINDD_MAXTIME} or 2700),
+			      ($ENV{SMBD_MAXTIME} or 2700));
 
 	$self->wait_for_start($vars);
 
@@ -140,7 +151,7 @@
 }
 
 sub check_or_start($$$$) {
-	my ($self, $env_vars, $nmbd_maxtime, $smbd_maxtime) = @_;
+	my ($self, $env_vars, $nmbd_maxtime, $winbindd_maxtime, $smbd_maxtime) = @_;
 
 	unlink($env_vars->{NMBD_TEST_LOG});
 	print "STARTING NMBD...";
@@ -148,20 +159,39 @@
 	if ($pid == 0) {
 		open STDOUT, ">$env_vars->{NMBD_TEST_LOG}";
 		open STDERR, '>&STDOUT';
-	
+
+		$ENV{WINBINDD_SOCKET_DIR} = $env_vars->{WINBINDD_SOCKET_DIR};
+
 		$ENV{MAKE_TEST_BINARY} = $self->binpath("nmbd");
 		exec($self->binpath("timelimit"), $nmbd_maxtime, $self->binpath("nmbd"), "-F", "-S", "-d0", "--no-process-group", "-s", $env_vars->{SERVERCONFFILE}) or die("Unable to start nmbd: $!");
 	}
 	write_pid($env_vars, "nmbd", $pid);
 	print "DONE\n";
 
+	unlink($env_vars->{WINBINDD_TEST_LOG});
+	print "STARTING WINBINDD...";
+	my $pid = fork();
+	if ($pid == 0) {
+		open STDOUT, ">$env_vars->{WINBINDD_TEST_LOG}";
+		open STDERR, '>&STDOUT';
+
+		$ENV{WINBINDD_SOCKET_DIR} = $env_vars->{WINBINDD_SOCKET_DIR};
+
+		$ENV{MAKE_TEST_BINARY} = $self->binpath("winbindd");
+		exec($self->binpath("timelimit"), $winbindd_maxtime, $self->binpath("winbindd"), "-F", "-S", "-d0", "--no-process-group", "-s", $env_vars->{SERVERCONFFILE}) or die("Unable to start winbindd: $!");
+	}
+	write_pid($env_vars, "winbindd", $pid);
+	print "DONE\n";
+
 	unlink($env_vars->{SMBD_TEST_LOG});
 	print "STARTING SMBD...";
 	$pid = fork();
 	if ($pid == 0) {
 		open STDOUT, ">$env_vars->{SMBD_TEST_LOG}";
 		open STDERR, '>&STDOUT';
-	
+
+		$ENV{WINBINDD_SOCKET_DIR} = $env_vars->{WINBINDD_SOCKET_DIR};
+
 		$ENV{MAKE_TEST_BINARY} = $self->binpath("smbd");
 		exec($self->binpath("timelimit"), $smbd_maxtime, $self->binpath("smbd"), "-F", "-S", "-d0" , "--no-process-group", "-s", $env_vars->{SERVERCONFFILE}) or die("Unable to start smbd: $!");
 	}
@@ -216,6 +246,8 @@
 	my %ret = ();
 	my $server = "localhost2";
 	my $server_ip = "127.0.0.2";
+	my $domain = "SAMBA-TEST";
+
 	my $username = `PATH=/usr/ucb:$ENV{PATH} whoami`;
 	chomp $username;
 	my $password = "test";
@@ -223,26 +255,40 @@
 	my $srcdir="$RealBin/..";
 	my $scriptdir="$srcdir/selftest";
 	my $prefix_abs = abs_path($prefix);
-	my $shrdir="$prefix_abs/tmp";
+
+	my @dirs = ();
+
+	my $shrdir="$prefix_abs/share";
+	push(@dirs,$shrdir);
+
 	my $libdir="$prefix_abs/lib";
+	push(@dirs,$libdir);
+
 	my $piddir="$prefix_abs/pid";
-	my $conffile="$libdir/server.conf";
+	push(@dirs,$piddir);
+
 	my $privatedir="$prefix_abs/private";
+	push(@dirs,$privatedir);
+
 	my $lockdir="$prefix_abs/lockdir";
+	push(@dirs,$lockdir);
+
 	my $logdir="$prefix_abs/logs";
-	my $domain = "SAMBA-TEST";
+	push(@dirs,$logdir);
 
+	# this gets autocreated by winbindd
+	my $wbsockdir="$prefix_abs/winbindd";
+
 	## 
 	## create the test directory layout
 	##
 	mkdir($prefix_abs, 0777);
 	print "CREATE TEST ENVIRONMENT IN '$prefix'...";
 	system("rm -rf $prefix_abs/*");
-	mkdir($_, 0777) foreach($privatedir,$libdir,$piddir,$lockdir,$logdir);
-	my $tmpdir = "$prefix_abs/tmp";
-	mkdir($tmpdir, 0777);
-	chmod 0777, $tmpdir;
+	mkdir($_, 0777) foreach(@dirs);
 
+	my $conffile="$libdir/server.conf";
+
 	open(CONF, ">$conffile") or die("Unable to open $conffile");
 	print CONF "
 [global]
@@ -283,8 +329,10 @@
 
 print CONF "
 
+	winbindd:socket dir = $wbsockdir
+
 [tmp]
-	path = $tmpdir
+	path = $shrdir
 	read only = no
 	smbd:sharedelay = 100000
 	map hidden = yes
@@ -321,6 +369,7 @@
 
 	$ret{SERVER_IP} = $server_ip;
 	$ret{NMBD_TEST_LOG} = "$prefix/nmbd_test.log";
+	$ret{WINBINDD_TEST_LOG} = "$prefix/winbindd_test.log";
 	$ret{SMBD_TEST_LOG} = "$prefix/smbd_test.log";
 	$ret{SERVERCONFFILE} = $conffile;
 	$ret{CONFIGURATION} ="-s $conffile";
@@ -330,6 +379,7 @@
 	$ret{NETBIOSNAME} = $server;
 	$ret{PASSWORD} = $password;
 	$ret{PIDDIR} = $piddir;
+	$ret{WINBINDD_SOCKET_DIR} = $wbsockdir;
 	return \%ret;
 }
 



More information about the samba-cvs mailing list