Page MenuHomeFreeBSD

D42099.1784814790.diff
No OneTemporary

Size
440 B
Referenced Files
None
Subscribers
None

D42099.1784814790.diff

diff --git a/sys/kern/uipc_syscalls.c b/sys/kern/uipc_syscalls.c
--- a/sys/kern/uipc_syscalls.c
+++ b/sys/kern/uipc_syscalls.c
@@ -948,7 +948,8 @@
AUDIT_ARG_SOCKADDR(td, AT_FDCWD, fromsa);
#ifdef KTRACE
if (ktruio != NULL) {
- ktruio->uio_resid = len - auio.uio_resid;
+ /* MSG_TRUNC can trigger underflow of uio_resid. */
+ ktruio->uio_resid = MIN(len - auio.uio_resid, len);
ktrgenio(s, UIO_READ, ktruio, error);
}
#endif

File Metadata

Mime Type
text/plain
Expires
Thu, Jul 23, 1:53 PM (5 h, 24 m)
Storage Engine
blob
Storage Format
Raw Data
Storage Handle
29229702
Default Alt Text
D42099.1784814790.diff (440 B)

Event Timeline