On Wed, Jul 17, 2002 at 04:18:17PM +0200, Carsten Langgaard wrote:
> Ralf Baechle wrote:
>
> > On Wed, Jul 17, 2002 at 11:03:55AM +0200, Carsten Langgaard wrote:
> >
> > >
> > > Here there is some checking for sane values and a proper error value is
> > > return.
> > > I guess this routine is replaced, if we have the syscall implemented
> > > with the sysdeps/unix/sysv/linux/mips/pread.c file.
> > > Here there is no check for sane values, is there any reason why ?
> > > The same thing goes for pwrite.
> >
> > The kernel does it's own error checking. No need to duplicate that in
> > userspace.
>
> The kernel doesn't do this a proper check then.
> The pread/pwrite parameters is also convert in glibc, the 'offset' is
> convert from a 'long' to a 'long long', but it isn't sign extended.
> So when pread is call with offset -1, then kernel won't see it as -1.
>
Please check it out:
http://sources.redhat.com/ml/libc-alpha/2002-07/msg00188.html
H.J.
|