# Copyright (C) 2016-2021 all contributors <meta@public-inbox.org>
# License: AGPL-3.0+ <https://www.gnu.org/licenses/agpl-3.0.txt>
use strict;
-use warnings;
use Sendmail::PMilter qw(:all);
use IO::Socket;
use Crypt::CBC;
if ($fds && (($ENV{LISTEN_PID} || 0) == $$)) {
die "$0 can only listen on one FD\n" if $fds != 1;
my $start_fd = 3;
- my $s = IO::Socket->new_from_fd($start_fd, 'r') or
+ open(my $s, '<&=', $start_fd) or
die "inherited bad FD from LISTEN_FDS: $!\n";
$milter->set_socket($s);
} else {