|
@@ -691,6 +691,23 @@ SYSCALL_DEFINE6(pselect6, int, n, fd_set __user *, inp, fd_set __user *, outp,
|
|
|
}
|
|
|
#endif /* HAVE_SET_RESTORE_SIGMASK */
|
|
|
|
|
|
+#ifdef __ARCH_WANT_SYS_OLD_SELECT
|
|
|
+struct sel_arg_struct {
|
|
|
+ unsigned long n;
|
|
|
+ fd_set __user *inp, *outp, *exp;
|
|
|
+ struct timeval __user *tvp;
|
|
|
+};
|
|
|
+
|
|
|
+SYSCALL_DEFINE1(old_select, struct sel_arg_struct __user *, arg)
|
|
|
+{
|
|
|
+ struct sel_arg_struct a;
|
|
|
+
|
|
|
+ if (copy_from_user(&a, arg, sizeof(a)))
|
|
|
+ return -EFAULT;
|
|
|
+ return sys_select(a.n, a.inp, a.outp, a.exp, a.tvp);
|
|
|
+}
|
|
|
+#endif
|
|
|
+
|
|
|
struct poll_list {
|
|
|
struct poll_list *next;
|
|
|
int len;
|