selftest: Exit skipped daemons on close(STDIN)
authorVolker Lendecke <vl@samba.org>
Tue, 28 Jan 2020 13:46:09 +0000 (14:46 +0100)
committerAndrew Bartlett <abartlet@samba.org>
Wed, 29 Jan 2020 11:06:53 +0000 (11:06 +0000)
Without this, teardown_env() will take ages for environments with
skipped daemons

Signed-off-by: Volker Lendecke <vl@samba.org>
Reviewed-by: Andrew Bartlett <abartlet@samba.org>
Autobuild-User(master): Andrew Bartlett <abartlet@samba.org>
Autobuild-Date(master): Wed Jan 29 11:06:53 UTC 2020 on sn-devel-184

selftest/target/Samba.pm

index 216c13f11c1b86bd59dae0be5c548a23a6b378a0..a908a7ade7c5f8f20f78b82c14bce0a94de6bb92 100644 (file)
@@ -10,6 +10,7 @@ use target::Samba3;
 use target::Samba4;
 use POSIX;
 use Cwd qw(abs_path);
+use IO::Poll qw(POLLIN);
 
 sub new($$$$$) {
        my ($classname, $bindir, $srcdir, $server_maxtime) = @_;
@@ -677,7 +678,9 @@ sub fork_and_exec
                                print("Skip $daemon_ctx->{NAME} received signal $signame");
                                exit 0;
                        };
-                       sleep($self->{server_maxtime});
+                       my $poll = IO::Poll->new();
+                       $poll->mask($STDIN_READER, POLLIN);
+                       $poll->poll($self->{server_maxtime});
                        exit 0;
                }