summaryrefslogtreecommitdiff
path: root/sys
diff options
context:
space:
mode:
authorTheo de Raadt <deraadt@cvs.openbsd.org>1997-11-13 07:35:39 +0000
committerTheo de Raadt <deraadt@cvs.openbsd.org>1997-11-13 07:35:39 +0000
commit8791438458186c2f5e2ff6a63f545799dc44cb4e (patch)
treed2e7be03be831178888acaad308a218d3265bc29 /sys
parentbc06d0d21db3a10a488a1fd696ad42121b620d01 (diff)
two poll() calls, argh
Diffstat (limited to 'sys')
-rw-r--r--sys/compat/freebsd/freebsd_misc.c16
-rw-r--r--sys/compat/freebsd/syscalls.master6
2 files changed, 18 insertions, 4 deletions
diff --git a/sys/compat/freebsd/freebsd_misc.c b/sys/compat/freebsd/freebsd_misc.c
index aaec53238ac..a89018fcad1 100644
--- a/sys/compat/freebsd/freebsd_misc.c
+++ b/sys/compat/freebsd/freebsd_misc.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: freebsd_misc.c,v 1.3 1996/08/02 20:34:46 niklas Exp $ */
+/* $OpenBSD: freebsd_misc.c,v 1.4 1997/11/13 07:35:38 deraadt Exp $ */
/* $NetBSD: freebsd_misc.c,v 1.2 1996/05/03 17:03:10 christos Exp $ */
/*
@@ -104,3 +104,17 @@ freebsd_ntp_adjtime(p, v, retval)
return ENOSYS; /* XXX */
}
+
+/*
+ * Argh.
+ * The syscalls.master mechanism cannot handle a system call that is in
+ * two spots in the table.
+ */
+int
+freebsd_sys_poll2(p, v, retval)
+ struct proc *p;
+ void *v;
+ register_t *retval;
+{
+ return (sys_poll(p, v, retval));
+}
diff --git a/sys/compat/freebsd/syscalls.master b/sys/compat/freebsd/syscalls.master
index d6efa1647eb..8e06d188bdd 100644
--- a/sys/compat/freebsd/syscalls.master
+++ b/sys/compat/freebsd/syscalls.master
@@ -1,4 +1,4 @@
- $OpenBSD: syscalls.master,v 1.6 1997/11/13 07:27:03 deraadt Exp $
+ $OpenBSD: syscalls.master,v 1.7 1997/11/13 07:35:38 deraadt Exp $
; $NetBSD: syscalls.master,v 1.3 1995/10/10 18:28:40 mycroft Exp $
; from: @(#)syscalls.master 8.2 (Berkeley) 1/13/94
@@ -462,7 +462,7 @@
250 NOARGS { int sys_minherit(caddr_t addr, size_t len, \
int inherit); }
251 NOARGS { int sys_rfork(int flags); }
-252 NOARGS { int sys_poll(struct pollfd *fds, usigned long nfds, \
- int timeout); }
+252 STD { int freebsd_sys_poll2(struct pollfd *fds, \
+ unsigned long nfds, int timeout); }
253 NOARGS { int sys_issetugid(void); }
254 NOARGS { int sys_lchown(char *path, int uid, int gid); }