kern/147226: read(fd, buffer, len) returns -1 immediately, if len >=2147483648

Garrett Cooper yanefbsd at gmail.com
Mon May 31 23:10:04 UTC 2010


The following reply was made to PR kern/147226; it has been noted by GNATS.

From: Garrett Cooper <yanefbsd at gmail.com>
To: Bruce Cran <bruce at cran.org.uk>
Cc: bug-followup at freebsd.org
Subject: Re: kern/147226: read(fd, buffer, len) returns -1 immediately, if len 
	&gt;=2147483648
Date: Mon, 31 May 2010 16:06:38 -0700

 On Mon, May 31, 2010 at 8:30 AM, Bruce Cran <bruce at cran.org.uk> wrote:
 > The following reply was made to PR kern/147226; it has been noted by GNAT=
 S.
 >
 > From: Bruce Cran <bruce at cran.org.uk>
 > To: bug-followup at FreeBSD.org, eugene.kharitonov at gmail.com
 > Cc:
 > Subject: Re: kern/147226: read(fd, buffer, len) returns -1 immediately, =
 =A0if
 > =A0len &gt;=3D2147483648
 > Date: Mon, 31 May 2010 16:21:05 +0100
 >
 > =A0This actually looks like a 64-bit bug.
 > =A0http://opengroup.org/onlinepubs/007908775/xsh/read.html says that up t=
 o
 > =A0SSIZE_MAX bytes must be accepted, whereas FreeBSD only accepts up to
 > =A0INT_MAX bytes.
 
 The point being that SSIZE_MAX is INT_MAX on 32-bit archs and LONG_MAX
 on 64-bit archs.
 Cheers,
 -Garrett


More information about the freebsd-bugs mailing list