diff options
author | Andrew Bartlett <abartlet@samba.org> | 2007-04-17 03:47:51 +0000 |
---|---|---|
committer | Gerald (Jerry) Carter <jerry@samba.org> | 2007-10-10 14:50:57 -0500 |
commit | bcf43e1eb05cfe5a304b6ebe92cce56e8d976a5c (patch) | |
tree | eaaefef105879059e18465a8e02d94a84b0080fd /source4 | |
parent | ed4df962f46e9d06d90decf9ae1a870fdd38837e (diff) | |
download | samba-bcf43e1eb05cfe5a304b6ebe92cce56e8d976a5c.tar.gz samba-bcf43e1eb05cfe5a304b6ebe92cce56e8d976a5c.tar.bz2 samba-bcf43e1eb05cfe5a304b6ebe92cce56e8d976a5c.zip |
r22292: Start the LDAP server inside the same fifo as smbd, as OpenLDAP (like
smbd, but not Fedora DS yet) will then shut down when it looses stdin.
This avoids leaving stray slapd processes around, if we don't finish
the script to run the kill.
Also set KRB5_CONFIG in the smbd process again, as we do actually need
this...
Andrew Bartlett
(This used to be commit 24ca1e180c9c35f0e87d49c9c8f8b936b4c88572)
Diffstat (limited to 'source4')
-rw-r--r-- | source4/script/tests/Samba4.pm | 35 |
1 files changed, 19 insertions, 16 deletions
diff --git a/source4/script/tests/Samba4.pm b/source4/script/tests/Samba4.pm index 4f8c0877ae..6999e049bb 100644 --- a/source4/script/tests/Samba4.pm +++ b/source4/script/tests/Samba4.pm @@ -67,32 +67,35 @@ sub check_or_start($$$) my ($self, $env_vars, $max_time) = @_; return 0 if ( -p $env_vars->{SMBD_TEST_FIFO}); - # Start slapd before smbd - if (defined($self->{ldap})) { - $self->slapd_start($env_vars) or - die("couldn't start slapd"); - - print "LDAP PROVISIONING..."; - $self->provision_ldap($env_vars); - } - - SocketWrapper::set_default_iface(1); - unlink($env_vars->{SMBD_TEST_FIFO}); POSIX::mkfifo($env_vars->{SMBD_TEST_FIFO}, 0700); unlink($env_vars->{SMBD_TEST_LOG}); - my $valgrind = ""; - if (defined($ENV{SMBD_VALGRIND})) { - $valgrind = $ENV{SMBD_VALGRIND}; - } - print "STARTING SMBD... "; my $pid = fork(); if ($pid == 0) { open STDIN, $env_vars->{SMBD_TEST_FIFO}; open STDOUT, ">$env_vars->{SMBD_TEST_LOG}"; open STDERR, '>&STDOUT'; + + SocketWrapper::set_default_iface(1); + + # Start slapd before smbd, but with the fifo on stdin + if (defined($self->{ldap})) { + $self->slapd_start($env_vars) or + die("couldn't start slapd"); + + print "LDAP PROVISIONING..."; + $self->provision_ldap($env_vars); + } + + my $valgrind = ""; + if (defined($ENV{SMBD_VALGRIND})) { + $valgrind = $ENV{SMBD_VALGRIND}; + } + + $ENV{KRB5_CONFIG} = $env_vars->{KRB5_CONFIG}; + my $optarg = ""; if (defined($max_time)) { $optarg = "--maximum-runtime=$max_time "; |