Implemented irix_sys_systeminfo()

This commit is contained in:
manu 2002-02-17 22:49:53 +00:00
parent 9e7faceaf4
commit 457750dabf
8 changed files with 243 additions and 217 deletions

View File

@ -1,4 +1,4 @@
# $NetBSD: files.irix,v 1.13 2002/01/06 21:43:10 manu Exp $
# $NetBSD: files.irix,v 1.14 2002/02/17 22:49:53 manu Exp $
#
file arch/mips/mips/irix_syscall.c compat_irix
@ -16,6 +16,7 @@ file compat/irix/irix_syscalls.c compat_irix
file compat/irix/irix_sysent.c compat_irix
file compat/irix/irix_syssgi.c compat_irix
file compat/irix/irix_sysmp.c compat_irix
file compat/irix/irix_systeminfo.c compat_irix
file arch/mips/mips/svr4_machdep.c compat_irix

View File

@ -1,4 +1,4 @@
/* $NetBSD: irix_signal.c,v 1.4 2002/02/17 20:50:06 manu Exp $ */
/* $NetBSD: irix_signal.c,v 1.5 2002/02/17 22:49:54 manu Exp $ */
/*-
* Copyright (c) 1994, 2001-2002 The NetBSD Foundation, Inc.
@ -37,7 +37,7 @@
*/
#include <sys/cdefs.h>
__KERNEL_RCSID(0, "$NetBSD: irix_signal.c,v 1.4 2002/02/17 20:50:06 manu Exp $");
__KERNEL_RCSID(0, "$NetBSD: irix_signal.c,v 1.5 2002/02/17 22:49:54 manu Exp $");
#include <sys/types.h>
#include <sys/signal.h>
@ -286,7 +286,7 @@ irix_sys_sigreturn(p, v, retval)
#ifdef DEBUG_IRIX
printf("irix_sys_sigreturn()\n");
printf("scp = %p, ucp = %p, sig = %d (%d)\n",
printf("scp = %p, ucp = %p, sig = %d (%p)\n",
(void *)SCARG(uap, isr).scp, (void *)SCARG(uap, isr).ucp,
SCARG(uap, isr).signo, (void *)SCARG(uap, isr).signo);
#endif /* DEBUG_IRIX */

View File

@ -1,10 +1,10 @@
/* $NetBSD: irix_syscall.h,v 1.22 2002/02/17 20:50:07 manu Exp $ */
/* $NetBSD: irix_syscall.h,v 1.23 2002/02/17 22:49:54 manu Exp $ */
/*
* System call numbers.
*
* DO NOT EDIT-- this file is automatically generated.
* created from NetBSD: syscalls.master,v 1.20 2002/02/04 20:26:34 manu Exp
* created from NetBSD: syscalls.master,v 1.21 2002/02/17 20:50:07 manu Exp
*/
/* syscall: "syscall" ret: "int" args: */
@ -274,6 +274,9 @@
/* syscall: "mmap" ret: "void *" args: "void *" "svr4_size_t" "int" "int" "int" "svr4_off_t" */
#define IRIX_SYS_mmap 134
/* syscall: "systeminfo" ret: "long" args: "int" "char *" "long" */
#define IRIX_SYS_systeminfo 156
/* syscall: "xstat" ret: "int" args: "const int" "const char *" "struct stat *" */
#define IRIX_SYS_xstat 158

View File

@ -1,10 +1,10 @@
/* $NetBSD: irix_syscallargs.h,v 1.22 2002/02/17 20:50:07 manu Exp $ */
/* $NetBSD: irix_syscallargs.h,v 1.23 2002/02/17 22:49:54 manu Exp $ */
/*
* System call argument lists.
*
* DO NOT EDIT-- this file is automatically generated.
* created from NetBSD: syscalls.master,v 1.20 2002/02/04 20:26:34 manu Exp
* created from NetBSD: syscalls.master,v 1.21 2002/02/17 20:50:07 manu Exp
*/
#ifndef _IRIX_SYS__SYSCALLARGS_H_
@ -27,64 +27,6 @@
} be; \
}
struct svr4_sys_open_args {
syscallarg(const char *) path;
syscallarg(int) flags;
syscallarg(int) mode;
};
struct svr4_sys_creat_args {
syscallarg(const char *) path;
syscallarg(int) mode;
};
struct svr4_sys_execv_args {
syscallarg(const char *) path;
syscallarg(char **) argp;
};
struct svr4_sys_time_args {
syscallarg(svr4_time_t *) t;
};
struct svr4_sys_break_args {
syscallarg(caddr_t) nsize;
};
struct svr4_sys_alarm_args {
syscallarg(unsigned) sec;
};
struct svr4_sys_fstat_args {
syscallarg(int) fd;
syscallarg(struct svr4_stat *) sb;
};
struct svr4_sys_utime_args {
syscallarg(const char *) path;
syscallarg(struct svr4_utimbuf *) ubuf;
};
struct svr4_sys_access_args {
syscallarg(const char *) path;
syscallarg(int) flags;
};
struct svr4_sys_nice_args {
syscallarg(int) prio;
};
struct svr4_sys_kill_args {
syscallarg(int) pid;
syscallarg(int) signum;
};
struct svr4_sys_pgrpsys_args {
syscallarg(int) cmd;
syscallarg(int) pid;
syscallarg(int) pgid;
};
struct irix_sys_syssgi_args {
syscallarg(int) request;
syscallarg(void *) arg1;
@ -94,39 +36,6 @@ struct irix_sys_syssgi_args {
syscallarg(void *) arg5;
};
struct svr4_sys_times_args {
syscallarg(struct tms *) tp;
};
struct svr4_sys_msgsys_args {
syscallarg(int) what;
syscallarg(int) a2;
syscallarg(int) a3;
syscallarg(int) a4;
syscallarg(int) a5;
};
struct svr4_sys_shmsys_args {
syscallarg(int) what;
syscallarg(int) a2;
syscallarg(int) a3;
syscallarg(int) a4;
};
struct svr4_sys_semsys_args {
syscallarg(int) what;
syscallarg(int) a2;
syscallarg(int) a3;
syscallarg(int) a4;
syscallarg(int) a5;
};
struct svr4_sys_ioctl_args {
syscallarg(int) fd;
syscallarg(u_long) com;
syscallarg(caddr_t) data;
};
struct irix_sys_sysmp_args {
syscallarg(int) cmd;
syscallarg(void *) arg1;
@ -135,30 +44,6 @@ struct irix_sys_sysmp_args {
syscallarg(void *) arg4;
};
struct svr4_sys_utssys_args {
syscallarg(void *) a1;
syscallarg(void *) a2;
syscallarg(int) sel;
syscallarg(void *) a3;
};
struct svr4_sys_execve_args {
syscallarg(const char *) path;
syscallarg(char **) argp;
syscallarg(char **) envp;
};
struct svr4_sys_fcntl_args {
syscallarg(int) fd;
syscallarg(int) cmd;
syscallarg(char *) arg;
};
struct svr4_sys_ulimit_args {
syscallarg(int) cmd;
syscallarg(long) newlimit;
};
struct irix_sys_lseek64_args {
syscallarg(int) fd;
syscallarg(int) pad1;
@ -179,46 +64,19 @@ struct irix_sys_sginap_args {
syscallarg(long) ticks;
};
struct svr4_sys_getmsg_args {
syscallarg(int) fd;
syscallarg(struct svr4_strbuf *) ctl;
syscallarg(struct svr4_strbuf *) dat;
syscallarg(int *) flags;
};
struct svr4_sys_putmsg_args {
syscallarg(int) fd;
syscallarg(struct svr4_strbuf *) ctl;
syscallarg(struct svr4_strbuf *) dat;
syscallarg(int) flags;
};
struct irix_sys_sigreturn_args {
syscallarg(struct irix_sigreturna) isr;
};
struct svr4_sys_socket_args {
syscallarg(int) domain;
syscallarg(int) type;
syscallarg(int) protocol;
};
struct svr4_sys_gettimeofday_args {
syscallarg(struct timeval *) tp;
};
struct irix_sys_prctl_args {
syscallarg(unsigned int) option;
syscallarg(void *) arg1;
};
struct svr4_sys_mmap_args {
syscallarg(void *) addr;
syscallarg(svr4_size_t) len;
syscallarg(int) prot;
syscallarg(int) flags;
syscallarg(int) fd;
syscallarg(svr4_off_t) pos;
struct irix_sys_systeminfo_args {
syscallarg(int) what;
syscallarg(char *) buf;
syscallarg(long) len;
};
struct irix_sys_xstat_args {
@ -239,27 +97,6 @@ struct irix_sys_fxstat_args {
syscallarg(struct stat *) buf;
};
struct svr4_sys_sigaction_args {
syscallarg(int) signum;
syscallarg(const struct svr4_sigaction *) nsa;
syscallarg(struct svr4_sigaction *) osa;
};
struct svr4_sys_sigpending_args {
syscallarg(int) what;
syscallarg(svr4_sigset_t *) set;
};
struct svr4_sys_sigprocmask_args {
syscallarg(int) how;
syscallarg(const svr4_sigset_t *) set;
syscallarg(svr4_sigset_t *) oset;
};
struct svr4_sys_sigsuspend_args {
syscallarg(const svr4_sigset_t *) set;
};
struct irix_sys_getcontext_args {
syscallarg(irix_ucontext_t *) ucp;
};
@ -399,6 +236,7 @@ int sys_adjtime(struct proc *, void *, register_t *);
int svr4_sys_gettimeofday(struct proc *, void *, register_t *);
int irix_sys_prctl(struct proc *, void *, register_t *);
int svr4_sys_mmap(struct proc *, void *, register_t *);
int irix_sys_systeminfo(struct proc *, void *, register_t *);
int irix_sys_xstat(struct proc *, void *, register_t *);
int irix_sys_lxstat(struct proc *, void *, register_t *);
int irix_sys_fxstat(struct proc *, void *, register_t *);

View File

@ -1,14 +1,14 @@
/* $NetBSD: irix_syscalls.c,v 1.22 2002/02/17 20:50:07 manu Exp $ */
/* $NetBSD: irix_syscalls.c,v 1.23 2002/02/17 22:49:54 manu Exp $ */
/*
* System call names.
*
* DO NOT EDIT-- this file is automatically generated.
* created from NetBSD: syscalls.master,v 1.20 2002/02/04 20:26:34 manu Exp
* created from NetBSD: syscalls.master,v 1.21 2002/02/17 20:50:07 manu Exp
*/
#include <sys/cdefs.h>
__KERNEL_RCSID(0, "$NetBSD: irix_syscalls.c,v 1.22 2002/02/17 20:50:07 manu Exp $");
__KERNEL_RCSID(0, "$NetBSD: irix_syscalls.c,v 1.23 2002/02/17 22:49:54 manu Exp $");
#if defined(_KERNEL_OPT)
#if defined(_KERNEL_OPT)
@ -24,6 +24,10 @@ __KERNEL_RCSID(0, "$NetBSD: irix_syscalls.c,v 1.22 2002/02/17 20:50:07 manu Exp
#include <sys/ioctl_compat.h>
#include <sys/syscallargs.h>
#include <compat/svr4/svr4_types.h>
#include <compat/svr4/svr4_signal.h>
#include <compat/svr4/svr4_ucontext.h>
#include <compat/svr4/svr4_lwp.h>
#include <compat/svr4/svr4_syscallargs.h>
#include <compat/irix/irix_types.h>
#include <compat/irix/irix_signal.h>
#include <compat/irix/irix_syscallargs.h>
@ -198,7 +202,7 @@ const char *const irix_syscallnames[] = {
"#153 (unimplemented fchmod)", /* 153 = unimplemented fchmod */
"#154 (unimplemented wait3)", /* 154 = unimplemented wait3 */
"#155 (unimplemented socketpair)", /* 155 = unimplemented socketpair */
"#156 (unimplemented systeminfo)", /* 156 = unimplemented systeminfo */
"systeminfo", /* 156 = systeminfo */
"#157 (unimplemented uname)", /* 157 = unimplemented uname */
"xstat", /* 158 = xstat */
"lxstat", /* 159 = lxstat */

View File

@ -1,14 +1,14 @@
/* $NetBSD: irix_sysent.c,v 1.22 2002/02/17 20:50:07 manu Exp $ */
/* $NetBSD: irix_sysent.c,v 1.23 2002/02/17 22:49:55 manu Exp $ */
/*
* System call switch table.
*
* DO NOT EDIT-- this file is automatically generated.
* created from NetBSD: syscalls.master,v 1.20 2002/02/04 20:26:34 manu Exp
* created from NetBSD: syscalls.master,v 1.21 2002/02/17 20:50:07 manu Exp
*/
#include <sys/cdefs.h>
__KERNEL_RCSID(0, "$NetBSD: irix_sysent.c,v 1.22 2002/02/17 20:50:07 manu Exp $");
__KERNEL_RCSID(0, "$NetBSD: irix_sysent.c,v 1.23 2002/02/17 22:49:55 manu Exp $");
#if defined(_KERNEL_OPT)
#include "opt_ntp.h"
@ -23,6 +23,10 @@ __KERNEL_RCSID(0, "$NetBSD: irix_sysent.c,v 1.22 2002/02/17 20:50:07 manu Exp $"
#include <sys/ioctl_compat.h>
#include <sys/syscallargs.h>
#include <compat/svr4/svr4_types.h>
#include <compat/svr4/svr4_signal.h>
#include <compat/svr4/svr4_ucontext.h>
#include <compat/svr4/svr4_lwp.h>
#include <compat/svr4/svr4_syscallargs.h>
#include <compat/irix/irix_types.h>
#include <compat/irix/irix_signal.h>
#include <compat/irix/irix_syscallargs.h>
@ -357,8 +361,8 @@ struct sysent irix_sysent[] = {
sys_nosys }, /* 154 = unimplemented wait3 */
{ 0, 0, 0,
sys_nosys }, /* 155 = unimplemented socketpair */
{ 0, 0, 0,
sys_nosys }, /* 156 = unimplemented systeminfo */
{ 3, s(struct irix_sys_systeminfo_args), 0,
irix_sys_systeminfo }, /* 156 = systeminfo */
{ 0, 0, 0,
sys_nosys }, /* 157 = unimplemented uname */
{ 3, s(struct irix_sys_xstat_args), 0,

View File

@ -0,0 +1,171 @@
/* $NetBSD: irix_systeminfo.c,v 1.1 2002/02/17 22:49:55 manu Exp $ */
/*-
* Copyright (c) 2002 The NetBSD Foundation, Inc.
* All rights reserved.
*
* This code is derived from software contributed to The NetBSD Foundation
* by Emmanuel Dreyfus.
*
* Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions
* are met:
* 1. Redistributions of source code must retain the above copyright
* notice, this list of conditions and the following disclaimer.
* 2. Redistributions in binary form must reproduce the above copyright
* notice, this list of conditions and the following disclaimer in the
* documentation and/or other materials provided with the distribution.
* 3. All advertising materials mentioning features or use of this software
* must display the following acknowledgement:
* This product includes software developed by the NetBSD
* Foundation, Inc. and its contributors.
* 4. Neither the name of The NetBSD Foundation nor the names of its
* contributors may be used to endorse or promote products derived
* from this software without specific prior written permission.
*
* THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. AND CONTRIBUTORS
* ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
* TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
* PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE FOUNDATION OR CONTRIBUTORS
* BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
* CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
* SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
* INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
* CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
* ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
* POSSIBILITY OF SUCH DAMAGE.
*/
#include <sys/cdefs.h>
__KERNEL_RCSID(0, "$NetBSD: irix_systeminfo.c,v 1.1 2002/02/17 22:49:55 manu Exp $");
#include <sys/types.h>
#include <sys/signal.h>
#include <sys/param.h>
#include <sys/mount.h>
#include <sys/proc.h>
#include <sys/systm.h>
#include <sys/sysctl.h>
#include <sys/syscallargs.h>
#include <compat/svr4/svr4_systeminfo.h>
#include <compat/svr4/svr4_types.h>
#include <compat/svr4/svr4_signal.h>
#include <compat/svr4/svr4_ucontext.h>
#include <compat/svr4/svr4_lwp.h>
#include <compat/svr4/svr4_syscallargs.h>
#include <compat/irix/irix_types.h>
#include <compat/irix/irix_signal.h>
#include <compat/irix/irix_syscallargs.h>
const char irix_si_vendor[] = "Silicon Graphics, Inc.";
const char irix_si_os_provider[] = "Silicon Graphics, Inc.";
const char irix_si_os_name[] = "IRIX";
const char irix_si_hw_name[] = "IP22"; /* XXX */
const char irix_si_osrel_maj[] = "6";
const char irix_si_osrel_min[] = "5";
const char irix_si_osrel_patch[] = "0";
const char irix_si_processors[] = "R5000 1.0"; /* XXX */
#define BUF_SIZE 16
int
irix_sys_systeminfo(p, v, retval)
struct proc *p;
void *v;
register_t *retval;
{
struct irix_sys_systeminfo_args /* {
syscallarg(int) what;
syscallarg(char *) buf;
syscallarg(long) len;
} */ *uap = v;
const char *str = NULL;
char strbuf[BUF_SIZE + 1];
int error;
size_t len;
char buf[256];
u_int rlen = SCARG(uap, len);
switch (SCARG(uap, what)) {
case SVR4_MIPS_SI_VENDOR:
str = irix_si_vendor;
break;
case SVR4_MIPS_SI_OS_PROVIDER:
str = irix_si_os_provider;
break;
case SVR4_MIPS_SI_OS_NAME:
str = irix_si_os_name;
break;
case SVR4_MIPS_SI_HW_NAME:
str = irix_si_hw_name;
break;
case SVR4_MIPS_SI_OSREL_MAJ:
str = irix_si_osrel_maj;
break;
case SVR4_MIPS_SI_OSREL_MIN:
str = irix_si_osrel_min;
break;
case SVR4_MIPS_SI_OSREL_PATCH:
str = irix_si_osrel_patch;
break;
case SVR4_MIPS_SI_PROCESSORS:
str = irix_si_processors;
break;
case SVR4_MIPS_SI_NUM_PROCESSORS:
case SVR4_MIPS_SI_AVAIL_PROCESSORS: {
int ncpu;
int name = HW_NCPU;
int namelen = sizeof(name);
error = hw_sysctl(&name, 1, &ncpu, &namelen, NULL, 0, p);
if (!error) {
snprintf(strbuf, BUF_SIZE, "%d", ncpu);
str = strbuf;
}
break;
}
case SVR4_MIPS_SI_HOSTID: /* Unimplemented yet */
case SVR4_MIPS_SI_SERIAL: /* Unimplemented yet */
default:
return svr4_sys_systeminfo(p, v, retval);
break;
}
/*
* This duplicates some code in
* svr4_sys_systeminfo().
* Ideally, it should be merged.
*/
if (str) {
len = strlen(str) + 1;
if (len > rlen)
len = rlen;
if (SCARG(uap, buf)) {
error = copyout(str, SCARG(uap, buf), len);
if (error)
return error;
/* make sure we are NULL terminated */
buf[0] = '\0';
error = copyout(buf, &(SCARG(uap, buf)[len - 1]), 1);
}
else
error = 0;
}
*retval = len;
return error;
}

View File

@ -1,4 +1,4 @@
$NetBSD: syscalls.master,v 1.21 2002/02/17 20:50:07 manu Exp $
$NetBSD: syscalls.master,v 1.22 2002/02/17 22:49:55 manu Exp $
; @(#)syscalls.master 8.1 (Berkeley) 7/19/93
@ -46,6 +46,10 @@
#include <sys/syscallargs.h>
#include <compat/svr4/svr4_types.h>
#include <compat/svr4/svr4_signal.h>
#include <compat/svr4/svr4_ucontext.h>
#include <compat/svr4/svr4_lwp.h>
#include <compat/svr4/svr4_syscallargs.h>
#include <compat/irix/irix_types.h>
#include <compat/irix/irix_signal.h>
@ -58,21 +62,21 @@
2 NOARGS { int sys_fork(void); }
3 NOARGS { int sys_read(int fd, char *buf, u_int nbyte); }
4 NOARGS { int sys_write(int fd, char *buf, u_int nbyte); }
5 STD { int svr4_sys_open(const char *path, int flags, \
5 NOARGS { int svr4_sys_open(const char *path, int flags, \
int mode); }
6 NOARGS { int sys_close(int fd); }
7 OBSOL wait
8 STD { int svr4_sys_creat(const char *path, int mode); }
8 NOARGS { int svr4_sys_creat(const char *path, int mode); }
9 NOARGS { int sys_link(char *path, char *link); }
10 NOARGS { int sys_unlink(char *path); }
11 STD { int svr4_sys_execv(const char *path, char **argp); }
11 NOARGS { int svr4_sys_execv(const char *path, char **argp); }
12 NOARGS { int sys_chdir(char *path); }
13 STD { int svr4_sys_time(svr4_time_t *t); }
13 NOARGS { int svr4_sys_time(svr4_time_t *t); }
14 OBSOL mknod
15 NOARGS { int sys_chmod(char *path, int mode); }
16 NOARGS { int sys___posix_chown(char *path, int uid, \
int gid); } chown
17 STD { int svr4_sys_break(caddr_t nsize); }
17 NOARGS { int svr4_sys_break(caddr_t nsize); }
18 OBSOL stat
19 NOARGS { long compat_43_sys_lseek(int fd, long offset, \
int whence); }
@ -83,32 +87,32 @@
24 NOARGS { uid_t sys_getuid_with_euid(void); }
25 UNIMPL stime
26 UNIMPL ptrace
27 STD { int svr4_sys_alarm(unsigned sec); }
28 STD { int svr4_sys_fstat(int fd, struct svr4_stat *sb); }
29 STD { int svr4_sys_pause(void); }
30 STD { int svr4_sys_utime(const char *path, \
27 NOARGS { int svr4_sys_alarm(unsigned sec); }
28 NOARGS { int svr4_sys_fstat(int fd, struct svr4_stat *sb); }
29 NOARGS { int svr4_sys_pause(void); }
30 NOARGS { int svr4_sys_utime(const char *path, \
struct svr4_utimbuf *ubuf); }
31 UNIMPL was stty
32 UNIMPL was gtty
33 STD { int svr4_sys_access(const char *path, int flags); }
34 STD { int svr4_sys_nice(int prio); }
33 NOARGS { int svr4_sys_access(const char *path, int flags); }
34 NOARGS { int svr4_sys_nice(int prio); }
35 UNIMPL statfs
36 NOARGS { int sys_sync(void); }
37 STD { int svr4_sys_kill(int pid, int signum); }
37 NOARGS { int svr4_sys_kill(int pid, int signum); }
38 UNIMPL fstatfs
39 STD { int svr4_sys_pgrpsys(int cmd, int pid, int pgid); }
39 NOARGS { int svr4_sys_pgrpsys(int cmd, int pid, int pgid); }
40 STD { ptrdiff_t irix_sys_syssgi(int request, void *arg1, \
void *arg2, void *arg3, void *arg4, void *arg5); }
41 NOARGS { int sys_dup(u_int fd); }
42 NOARGS { int sys_pipe(void); }
43 STD { int svr4_sys_times(struct tms *tp); }
43 NOARGS { int svr4_sys_times(struct tms *tp); }
44 UNIMPL profil
45 UNIMPL plock
46 NOARGS { int sys_setgid(gid_t gid); }
47 NOARGS { gid_t sys_getgid_with_egid(void); }
48 OBSOL ssig
#ifdef SYSVMSG
49 STD { int svr4_sys_msgsys(int what, int a2, int a3, \
49 NOARGS { int svr4_sys_msgsys(int what, int a2, int a3, \
int a4, int a5); }
#else
49 UNIMPL msgsys
@ -116,31 +120,31 @@
50 UNIMPL sysmips
51 UNIMPL acct
#ifdef SYSVSHM
52 STD { int svr4_sys_shmsys(int what, int a2, int a3, \
52 NOARGS { int svr4_sys_shmsys(int what, int a2, int a3, \
int a4); }
#else
52 UNIMPL shmsys
#endif
#ifdef SYSVSEM
53 STD { int svr4_sys_semsys(int what, int a2, int a3, \
53 NOARGS { int svr4_sys_semsys(int what, int a2, int a3, \
int a4, int a5); }
#else
53 UNIMPL semsys
#endif
54 STD { int svr4_sys_ioctl(int fd, u_long com, \
54 NOARGS { int svr4_sys_ioctl(int fd, u_long com, \
caddr_t data); }
55 UNIMPL uadmin
56 STD { int irix_sys_sysmp(int cmd, void *arg1, void *arg2, \
void *arg3, void *arg4); }
57 STD { int svr4_sys_utssys(void *a1, void *a2, int sel, \
57 NOARGS { int svr4_sys_utssys(void *a1, void *a2, int sel, \
void *a3); }
58 UNIMPL
59 STD { int svr4_sys_execve(const char *path, char **argp, \
59 NOARGS { int svr4_sys_execve(const char *path, char **argp, \
char **envp); }
60 NOARGS { int sys_umask(int newmask); }
61 NOARGS { int sys_chroot(char *path); }
62 STD { int svr4_sys_fcntl(int fd, int cmd, char *arg); }
63 STD { long svr4_sys_ulimit(int cmd, long newlimit); }
62 NOARGS { int svr4_sys_fcntl(int fd, int cmd, char *arg); }
63 NOARGS { long svr4_sys_ulimit(int cmd, long newlimit); }
64 UNIMPL reserved for unix/pc
65 UNIMPL reserved for unix/pc
66 UNIMPL reserved for unix/pc
@ -165,9 +169,9 @@
82 STD { long irix_sys_sginap (long ticks); }
83 UNIMPL sgikopt
84 UNIMPL sysfs
85 STD { int svr4_sys_getmsg(int fd, struct svr4_strbuf *ctl, \
85 NOARGS { int svr4_sys_getmsg(int fd, struct svr4_strbuf *ctl, \
struct svr4_strbuf *dat, int *flags); }
86 STD { int svr4_sys_putmsg(int fd, struct svr4_strbuf *ctl, \
86 NOARGS { int svr4_sys_putmsg(int fd, struct svr4_strbuf *ctl, \
struct svr4_strbuf *dat, int flags); }
87 NOARGS { int sys_poll(struct pollfd *fds, u_int nfds, \
int timeout); }
@ -206,7 +210,7 @@
105 NOARGS { int sys_setsockopt(int s, int level, int name, \
const void *val, int valsize); }
106 NOARGS { int sys_shutdown(int s, int how); }
107 STD { int svr4_sys_socket(int domain, int type, \
107 NOARGS { int svr4_sys_socket(int domain, int type, \
int protocol); }
108 NOARGS { int compat_43_sys_gethostname(char *hostname, \
u_int len); }
@ -237,14 +241,14 @@
struct itimerval *itv, struct itimerval *oitv); }
127 NOARGS { int sys_adjtime(struct timeval *delta, \
struct timeval *olddelta); }
128 STD { int svr4_sys_gettimeofday(struct timeval *tp); }
128 NOARGS { int svr4_sys_gettimeofday(struct timeval *tp); }
129 UNIMPL sproc
130 STD { ptrdiff_t irix_sys_prctl(unsigned int option, \
void *arg1); }
131 UNIMPL procblk
132 UNIMPL sprocsp
133 UNIMPL sgigsc
134 STD { void *svr4_sys_mmap(void *addr, svr4_size_t len, \
134 NOARGS { void *svr4_sys_mmap(void *addr, svr4_size_t len, \
int prot, int flags, int fd, svr4_off_t pos); }
135 UNIMPL munmap
136 UNIMPL mprotect
@ -267,7 +271,8 @@
153 UNIMPL fchmod
154 UNIMPL wait3
155 UNIMPL socketpair
156 UNIMPL systeminfo
156 STD { long irix_sys_systeminfo(int what, char *buf, \
long len); }
157 UNIMPL uname
158 STD { int irix_sys_xstat(const int version, \
const char *path, struct stat *buf); }
@ -276,15 +281,15 @@
160 STD { int irix_sys_fxstat(const int version, \
const int fd, struct stat *buf); }
161 UNIMPL xmknod
162 STD { int svr4_sys_sigaction(int signum, \
162 NOARGS { int svr4_sys_sigaction(int signum, \
const struct svr4_sigaction *nsa, \
struct svr4_sigaction *osa); }
163 STD { int svr4_sys_sigpending(int what, \
163 NOARGS { int svr4_sys_sigpending(int what, \
svr4_sigset_t *set); }
164 STD { int svr4_sys_sigprocmask(int how, \
164 NOARGS { int svr4_sys_sigprocmask(int how, \
const svr4_sigset_t *set, \
svr4_sigset_t *oset); }
165 STD { int svr4_sys_sigsuspend( \
165 NOARGS { int svr4_sys_sigsuspend( \
const svr4_sigset_t *set); }
166 UNIMPL sigpoll_sys
167 UNIMPL swapctl