From 9ebb883f1a84f7be76ded974b3e86adf36b327e4 Mon Sep 17 00:00:00 2001 From: Eric Wong Date: Thu, 11 Aug 2022 20:00:21 +0000 Subject: pop3d: enable native fcntl locks on all *BSDs ...as we've already done for the simpler case of mbox locking in lei. I've just confirmed NetBSD and OpenBSD share the same "struct flock" with FreeBSD, and assume DragonflyBSD is the same. sizeof(pid_t) == 4 in all places I've checked, and it's unlikely we'll need 64-bit pid_t any time soon... --- lib/PublicInbox/POP3D.pm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'lib') diff --git a/lib/PublicInbox/POP3D.pm b/lib/PublicInbox/POP3D.pm index 7432a964..3fc85efc 100644 --- a/lib/PublicInbox/POP3D.pm +++ b/lib/PublicInbox/POP3D.pm @@ -14,7 +14,7 @@ use PublicInbox::Syscall; use File::Temp 0.19 (); # 0.19 for ->newdir use Fcntl qw(F_SETLK F_UNLCK F_WRLCK SEEK_SET); my @FLOCK; -if ($^O eq 'linux' || $^O eq 'freebsd') { +if ($^O eq 'linux' || $^O =~ /bsd/) { require Config; my $off_t; my $sz = $Config::Config{lseeksize}; @@ -27,7 +27,7 @@ if ($^O eq 'linux' || $^O eq 'freebsd') { if ($^O eq 'linux') { @FLOCK = ("ss\@8$off_t$off_t\@32", qw(l_type l_whence l_start l_len)); - } elsif ($^O eq 'freebsd') { + } elsif ($^O =~ /bsd/) { @FLOCK = ("${off_t}${off_t}lss\@256", qw(l_start l_len l_pid l_type l_whence)); } -- cgit v1.2.3-24-ge0c7