From d78efbd2f3d973477099261e3c75bf4852473b77 Mon Sep 17 00:00:00 2001 From: Eric Wong Date: Mon, 13 Jul 2020 02:23:28 +0000 Subject: xt/mem-imapd-tls: avoid EMFILE in -imapd process Test::More dups standard FDs and may create FDs for other purposes. run_mode => 0 lets us rely on FD_CLOEXEC to ensure -imapd has enough FDs to accept all incoming connections at the cost of higher (one-off) startup time. --- xt/mem-imapd-tls.t | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) (limited to 'xt') diff --git a/xt/mem-imapd-tls.t b/xt/mem-imapd-tls.t index 660fdc77..3f1436c7 100644 --- a/xt/mem-imapd-tls.t +++ b/xt/mem-imapd-tls.t @@ -49,7 +49,9 @@ my $imaps_addr = $imaps->sockhost . ':' . $imaps->sockport; my $env = { PI_CONFIG => $pi_config }; my $arg = $TEST_TLS ? [ "-limaps://$imaps_addr/?cert=$cert,key=$key" ] : []; my $cmd = [ '-imapd', '-W0', @$arg, "--stdout=$out", "--stderr=$err" ]; -my $td = start_script($cmd, $env, { 3 => $imaps }); + +# run_mode=0 ensures Test::More FDs don't get shared +my $td = start_script($cmd, $env, { 3 => $imaps, run_mode => 0 }); my %ssl_opt; if ($TEST_TLS) { %ssl_opt = ( -- cgit v1.2.3-24-ge0c7