diff options
author | Eric Wong <e@80x24.org> | 2023-08-30 05:10:39 +0000 |
---|---|---|
committer | Eric Wong <e@80x24.org> | 2023-08-30 05:27:32 +0000 |
commit | 900cb902886ce7aa257b866bcf8380f1b935c64a (patch) | |
tree | a7e0e30648754a1d07e9640d7dfc8607a1dc72f2 /lib/PublicInbox/PktOp.pm | |
parent | 1ea097fe25d3717ad0b8e232268a6d55d8ed7225 (diff) | |
download | public-inbox-900cb902886ce7aa257b866bcf8380f1b935c64a.tar.gz |
It's apparently not needed for AF_UNIX + SOCK_SEQPACKET as our receivers never check for MSG_EOR in "struct msghdr".msg_flags anyways. I don't believe POSIX is clear on the exact semantics of MSG_EOR on this socket type. This works around truncation problems on OpenBSD recvmsg when MSG_EOR is used by the sender. Link: https://marc.info/?i=20230826020759.M335788@dcvr
Diffstat (limited to 'lib/PublicInbox/PktOp.pm')
-rw-r--r-- | lib/PublicInbox/PktOp.pm | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/lib/PublicInbox/PktOp.pm b/lib/PublicInbox/PktOp.pm index 4c434566..dc432307 100644 --- a/lib/PublicInbox/PktOp.pm +++ b/lib/PublicInbox/PktOp.pm @@ -11,7 +11,7 @@ use v5.10.1; use parent qw(PublicInbox::DS); use Errno qw(EAGAIN ECONNRESET); use PublicInbox::Syscall qw(EPOLLIN); -use Socket qw(AF_UNIX MSG_EOR SOCK_SEQPACKET); +use Socket qw(AF_UNIX SOCK_SEQPACKET); use PublicInbox::IPC qw(ipc_freeze ipc_thaw); use Scalar::Util qw(blessed); @@ -32,7 +32,7 @@ sub pair { sub pkt_do { # for the producer to trigger event_step in consumer my ($self, $cmd, @args) = @_; - send($self->{op_p}, @args ? "$cmd\0".ipc_freeze(\@args) : $cmd, MSG_EOR) + send($self->{op_p}, @args ? "$cmd\0".ipc_freeze(\@args) : $cmd, 0) } sub event_step { |