signals: Move put_compat_sigset to compat.h to silence hardened usercopy
[linux-2.6-microblaze.git] / kernel / compat.c
index 3247fe7..3f5fa89 100644 (file)
@@ -488,25 +488,6 @@ get_compat_sigset(sigset_t *set, const compat_sigset_t __user *compat)
 }
 EXPORT_SYMBOL_GPL(get_compat_sigset);
 
-int
-put_compat_sigset(compat_sigset_t __user *compat, const sigset_t *set,
-                 unsigned int size)
-{
-       /* size <= sizeof(compat_sigset_t) <= sizeof(sigset_t) */
-#ifdef __BIG_ENDIAN
-       compat_sigset_t v;
-       switch (_NSIG_WORDS) {
-       case 4: v.sig[7] = (set->sig[3] >> 32); v.sig[6] = set->sig[3];
-       case 3: v.sig[5] = (set->sig[2] >> 32); v.sig[4] = set->sig[2];
-       case 2: v.sig[3] = (set->sig[1] >> 32); v.sig[2] = set->sig[1];
-       case 1: v.sig[1] = (set->sig[0] >> 32); v.sig[0] = set->sig[0];
-       }
-       return copy_to_user(compat, &v, size) ? -EFAULT : 0;
-#else
-       return copy_to_user(compat, set, size) ? -EFAULT : 0;
-#endif
-}
-
 #ifdef CONFIG_NUMA
 COMPAT_SYSCALL_DEFINE6(move_pages, pid_t, pid, compat_ulong_t, nr_pages,
                       compat_uptr_t __user *, pages32,