New: MSG_TRUNC not regarded in unix_dgram_recvmsg()
Subsystems (2)
A message that is not in the archive (sent off-list or not yet received): [email protected]/
Quoted 35 lines · On Mon, 9 Jul 2007 04:01:58 -0700 (PDT) [email protected] wrote:
http://bugzilla.kernel.org/show_bug.cgi?id=8726
Summary: MSG_TRUNC not regarded in unix_dgram_recvmsg() Product: Networking Version: 2.5 KernelVersion: 2.6.19 Platform: All OS/Version: Linux Tree: Mainline Status: NEW Severity: normal Priority: P1 Component: Other AssignedTo: [email protected] ReportedBy: [email protected]Problem Description:
In
unix_dgram_recvmsg()inaf_unix.cthe flagMSG_TRUNCis not regarded as described in the recv(2) man page.This did work in older kernels (I have a working 2.6.13, but am not sure if that is a plain kernel.org one, nor if it was the last working revision). I believe the bug was introduced when the variable "copied" was removed from the code.
IMHO, the line 1650:
err = size;
should read
err = (flags &
MSG_TRUNC) ?skb->len: size;