diff options
author | David S. Miller <davem@davemloft.net> | 2012-05-22 17:53:19 -0700 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2012-05-22 23:32:27 -0700 |
commit | ff06dffbc8abfc60d6a0332f058f1d1bb01abb31 (patch) | |
tree | 0845d6acfaf8221fb5d6ae3281cb1c33a8212cff /arch/sparc/include/asm/uaccess.h | |
parent | 29af0ebaa24d3078d7fd9747a49a763fe7f9ea3c (diff) |
sparc: Add full proper error handling to strncpy_from_user().
Linus removed the end-of-address-space hackery from
fs/namei.c:do_getname() so we really have to validate these edge
conditions and cannot cheat any more (as x86 used to as well).
Move to a common C implementation like x86 did. And if both
src and dst are sufficiently aligned we'll do word at a time
copies and checks as well.
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'arch/sparc/include/asm/uaccess.h')
-rw-r--r-- | arch/sparc/include/asm/uaccess.h | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/arch/sparc/include/asm/uaccess.h b/arch/sparc/include/asm/uaccess.h index e88fbe5c045..42a28cfd941 100644 --- a/arch/sparc/include/asm/uaccess.h +++ b/arch/sparc/include/asm/uaccess.h @@ -5,4 +5,7 @@ #else #include <asm/uaccess_32.h> #endif + +extern long strncpy_from_user(char *dest, const char __user *src, long count); + #endif |