Fix for freebsd 4.1
diff --git a/syscall.c b/syscall.c
index c5ba008..e57d689 100644
--- a/syscall.c
+++ b/syscall.c
@@ -423,7 +423,11 @@
const struct subcall subcalls_table[] = {
{ SYS_shmsys, 5, { SYS_shmat, SYS_shmctl, SYS_shmdt, SYS_shmget, SYS_shmctl } },
+#ifdef SYS_semconfig
{ SYS_semsys, 4, { SYS___semctl, SYS_semget, SYS_semop, SYS_semconfig } },
+#else
+ { SYS_semsys, 3, { SYS___semctl, SYS_semget, SYS_semop } },
+#endif
{ SYS_msgsys, 4, { SYS_msgctl, SYS_msgget, SYS_msgsnd, SYS_msgrcv } },
};
#endif /* FREEBSD */
@@ -481,10 +485,6 @@
{
int i, addr, mask, arg;
-#ifndef FREEBSD
- if (tcp->u_arg[0] < 0 || tcp->u_arg[0] >= nsubcalls)
- return;
-#endif
switch (style) {
case shift_style:
if (tcp->u_arg[0] < 0 || tcp->u_arg[0] >= nsubcalls)