lkml.org 
[lkml]   [2002]   [May]   [19]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
From
SubjectRe: AUDIT of 2.5.15 copy_to/from_user
On Sun, 19 May 2002, Alan Cox wrote:

> > copy_to/from_user() --> will return the number of bytes that were _not_
> > copied. If one does not care about partially successes just use:
> >
> > if (copy_to/from_user())
> > return -EFAULT;
>
> Yes
>
> > __copy_to/from_user() --> the same as above, but can they actually return
> > anything other than 0? My assembler is no good and I'm not able to see if
>
> They do the same things, but don't do any initial range checks that might
> be done by access_ok before hand

On the emu10k1 driver we use access_ok(VERIFY_READ) once at the beginning
of the write() routine to check we can access the user buffer. After that
we always use __copy_from_user() and we trust it not to fail. Is this
correct, or not?

Basically, where in copy_from_user() is it determined the function cannot
copy the entire user buffer? Is it in access_ok() only or also in
__constant_copy_user_zeroing()?

Rui

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/

\
 
 \ /
  Last update: 2005-03-22 13:26    [W:0.140 / U:0.052 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site