SCCS-vsn: sys/kern/uipc_syscalls.c 8.5
auio.uio_resid = 0;
iov = mp->msg_iov;
for (i = 0; i < mp->msg_iovlen; i++, iov++) {
auio.uio_resid = 0;
iov = mp->msg_iov;
for (i = 0; i < mp->msg_iovlen; i++, iov++) {
- if (iov->iov_len < 0)
- return (EINVAL);
- if ((auio.uio_resid += iov->iov_len) < 0)
+ if (auio.uio_resid + iov->iov_len < auio.uio_resid)
+ auio.uio_resid += iov->iov_len;
}
if (mp->msg_name) {
if (error = sockargs(&to, mp->msg_name, mp->msg_namelen,
}
if (mp->msg_name) {
if (error = sockargs(&to, mp->msg_name, mp->msg_namelen,
auio.uio_resid = 0;
iov = mp->msg_iov;
for (i = 0; i < mp->msg_iovlen; i++, iov++) {
auio.uio_resid = 0;
iov = mp->msg_iov;
for (i = 0; i < mp->msg_iovlen; i++, iov++) {
- if (iov->iov_len < 0)
- return (EINVAL);
- if ((auio.uio_resid += iov->iov_len) < 0)
+ if (auio.uio_resid + iov->iov_len < auio.uio_resid)
+ auio.uio_resid += iov->iov_len;
}
#ifdef KTRACE
if (KTRPOINT(p, KTR_GENIO)) {
}
#ifdef KTRACE
if (KTRPOINT(p, KTR_GENIO)) {