patch-2_6_7-vs1_9_1_12
[linux-2.6.git] / arch / x86_64 / lib / usercopy.c
index 4a8603e..c83825e 100644 (file)
@@ -40,7 +40,7 @@ do {                                                                     \
 } while (0)
 
 long
-__strncpy_from_user(char *dst, const char *src, long count)
+__strncpy_from_user(char *dst, const char __user *src, long count)
 {
        long res;
        __do_strncpy_from_user(dst, src, count, res);
@@ -48,7 +48,7 @@ __strncpy_from_user(char *dst, const char *src, long count)
 }
 
 long
-strncpy_from_user(char *dst, const char *src, long count)
+strncpy_from_user(char *dst, const char __user *src, long count)
 {
        long res = -EFAULT;
        if (access_ok(VERIFY_READ, src, 1))
@@ -60,7 +60,7 @@ strncpy_from_user(char *dst, const char *src, long count)
  * Zero Userspace
  */
 
-unsigned long __clear_user(void *addr, unsigned long size)
+unsigned long __clear_user(void __user *addr, unsigned long size)
 {
        long __d0;
        /* no memory constraint because it doesn't change any memory gcc knows
@@ -94,7 +94,7 @@ unsigned long __clear_user(void *addr, unsigned long size)
 }
 
 
-unsigned long clear_user(void *to, unsigned long n)
+unsigned long clear_user(void __user *to, unsigned long n)
 {
        if (access_ok(VERIFY_WRITE, to, n))
                return __clear_user(to, n);
@@ -107,7 +107,7 @@ unsigned long clear_user(void *to, unsigned long n)
  * Return 0 on exception, a value greater than N if too long
  */
 
-long strnlen_user(const char *s, long n)
+long strnlen_user(const char __user *s, long n)
 {
        long res = 0;
        char c;
@@ -127,7 +127,7 @@ long strnlen_user(const char *s, long n)
        }
 }
 
-long strlen_user(const char *s)
+long strlen_user(const char __user *s)
 {
        long res = 0;
        char c;
@@ -142,10 +142,10 @@ long strlen_user(const char *s)
        }
 }
 
-unsigned long copy_in_user(void *to, const void *from, unsigned len)
+unsigned long copy_in_user(void __user *to, const void __user *from, unsigned len)
 {
        if (access_ok(VERIFY_WRITE, to, len) && access_ok(VERIFY_READ, from, len)) { 
-               return copy_user_generic(to, from, len);
+               return copy_user_generic((void *)to, (void *)from, len);
        } 
        return len;             
 }