Introduce BSD system calls with alternate patch checking (in /emul) in

compat/common, so that they can be shared by several emulations, and use
them for Darwin.

This removes the ugly dependance on FreeBSD freebsd_file.c for COMPAT_DARWIN
This commit is contained in:
manu 2002-12-08 00:50:23 +00:00
parent d4cfbd3754
commit 3b0f6d78ed
12 changed files with 1194 additions and 264 deletions

View File

@ -1,4 +1,4 @@
/* $NetBSD: darwin_machdep.c,v 1.3 2002/11/29 00:04:03 manu Exp $ */
/* $NetBSD: darwin_machdep.c,v 1.4 2002/12/08 00:50:23 manu Exp $ */
/*-
* Copyright (c) 2002 The NetBSD Foundation, Inc.
@ -37,11 +37,12 @@
*/
#include <sys/cdefs.h>
__KERNEL_RCSID(0, "$NetBSD: darwin_machdep.c,v 1.3 2002/11/29 00:04:03 manu Exp $");
__KERNEL_RCSID(0, "$NetBSD: darwin_machdep.c,v 1.4 2002/12/08 00:50:23 manu Exp $");
#include <sys/param.h>
#include <sys/systm.h>
#include <sys/proc.h>
#include <sys/mount.h>
#include <sys/signal.h>
#include <compat/mach/mach_types.h>

View File

@ -1,4 +1,4 @@
# $NetBSD: Makefile,v 1.30 2002/11/02 07:49:29 perry Exp $
# $NetBSD: Makefile,v 1.31 2002/12/08 00:50:25 manu Exp $
LIB= compat
NOPIC= # defined
@ -9,7 +9,7 @@ CPPFLAGS= ${COMPATCPPFLAGS}
.PATH.c: ${COMPATDIR}
# Common compatibility code, used by all emulations
SRCS= compat_exec.c compat_util.c
SRCS= compat_exec.c compat_util.c compat_file.c
# Compatibility code for 4.3BSD
SRCS+= kern_exit_43.c kern_info_43.c kern_resource_43.c kern_sig_43.c \

View File

@ -0,0 +1,775 @@
/* $NetBSD: compat_file.c,v 1.1 2002/12/08 00:50:25 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. The name of the author may not be used to endorse or promote products
* derived from this software without specific prior written permission
*
* THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``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 AUTHOR 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: compat_file.c,v 1.1 2002/12/08 00:50:25 manu Exp $");
#include "opt_compat_darwin.h"
/* Build this file only if we have an emulation that needs it */
#if (defined(COMPAT_DARWIN)) /* Add COMPAT_FREEBSD and others here */
#if defined(_KERNEL_OPT)
#include "fs_nfs.h"
#endif
#include <sys/param.h>
#include <sys/systm.h>
#include <sys/proc.h>
#include <sys/stat.h>
#include <sys/file.h>
#include <sys/filedesc.h>
#include <sys/ioctl.h>
#include <sys/kernel.h>
#include <sys/mount.h>
#include <sys/namei.h>
#include <sys/malloc.h>
#include <sys/syscallargs.h>
#include <compat/common/compat_file.h>
#include <compat/common/compat_util.h>
int
bsd_sys_open(p, v, retval)
struct proc *p;
void *v;
register_t *retval;
{
struct sys_open_args /* {
syscallarg(char *) path;
syscallarg(int) flags;
syscallarg(int) mode;
} */ *uap = v;
caddr_t sg = stackgap_init(p, 0);
if (SCARG(uap, flags) & O_CREAT)
CHECK_ALT_CREAT(p, &sg, SCARG(uap, path));
else
CHECK_ALT_EXIST(p, &sg, SCARG(uap, path));
return sys_open(p, uap, retval);
}
int
bsd_compat_43_sys_creat(p, v, retval)
struct proc *p;
void *v;
register_t *retval;
{
struct compat_43_sys_creat_args /* {
syscallarg(char *) path;
syscallarg(int) mode;
} */ *uap = v;
caddr_t sg = stackgap_init(p, 0);
CHECK_ALT_CREAT(p, &sg, SCARG(uap, path));
return compat_43_sys_creat(p, uap, retval);
}
int
bsd_sys_link(p, v, retval)
struct proc *p;
void *v;
register_t *retval;
{
struct sys_link_args /* {
syscallarg(char *) path;
syscallarg(char *) link;
} */ *uap = v;
caddr_t sg = stackgap_init(p, 0);
CHECK_ALT_EXIST(p, &sg, SCARG(uap, path));
CHECK_ALT_CREAT(p, &sg, SCARG(uap, link));
return sys_link(p, uap, retval);
}
int
bsd_sys_unlink(p, v, retval)
struct proc *p;
void *v;
register_t *retval;
{
struct sys_unlink_args /* {
syscallarg(char *) path;
} */ *uap = v;
caddr_t sg = stackgap_init(p, 0);
CHECK_ALT_EXIST(p, &sg, SCARG(uap, path));
return sys_unlink(p, uap, retval);
}
int
bsd_sys_chdir(p, v, retval)
struct proc *p;
void *v;
register_t *retval;
{
struct sys_chdir_args /* {
syscallarg(char *) path;
} */ *uap = v;
caddr_t sg = stackgap_init(p, 0);
CHECK_ALT_EXIST(p, &sg, SCARG(uap, path));
return sys_chdir(p, uap, retval);
}
int
bsd_sys_mknod(p, v, retval)
struct proc *p;
void *v;
register_t *retval;
{
struct sys_mknod_args /* {
syscallarg(char *) path;
syscallarg(int) mode;
syscallarg(int) dev;
} */ *uap = v;
caddr_t sg = stackgap_init(p, 0);
CHECK_ALT_CREAT(p, &sg, SCARG(uap, path));
return sys_mknod(p, uap, retval);
}
int
bsd_sys_chmod(p, v, retval)
struct proc *p;
void *v;
register_t *retval;
{
struct sys_chmod_args /* {
syscallarg(char *) path;
syscallarg(int) mode;
} */ *uap = v;
caddr_t sg = stackgap_init(p, 0);
CHECK_ALT_EXIST(p, &sg, SCARG(uap, path));
return sys_chmod(p, uap, retval);
}
int
bsd_sys_chown(p, v, retval)
struct proc *p;
void *v;
register_t *retval;
{
struct sys_chown_args /* {
syscallarg(char *) path;
syscallarg(int) uid;
syscallarg(int) gid;
} */ *uap = v;
caddr_t sg = stackgap_init(p, 0);
CHECK_ALT_EXIST(p, &sg, SCARG(uap, path));
return sys_chown(p, uap, retval);
}
int
bsd_sys_mount(p, v, retval)
struct proc *p;
void *v;
register_t *retval;
{
struct sys_mount_args /* {
syscallarg(char *) type;
syscallarg(char *) path;
syscallarg(int) flags;
syscallarg(void *) data;
} */ *uap = v;
caddr_t sg = stackgap_init(p, 0);
CHECK_ALT_EXIST(p, &sg, SCARG(uap, path));
return sys_mount(p, uap, retval);
}
int
bsd_sys_unmount(p, v, retval)
struct proc *p;
void *v;
register_t *retval;
{
struct sys_unmount_args /* {
syscallarg(char *) path;
syscallarg(int) flags;
} */ *uap = v;
caddr_t sg = stackgap_init(p, 0);
CHECK_ALT_EXIST(p, &sg, SCARG(uap, path));
return sys_unmount(p, uap, retval);
}
int
bsd_sys_access(p, v, retval)
struct proc *p;
void *v;
register_t *retval;
{
struct sys_access_args /* {
syscallarg(char *) path;
syscallarg(int) flags;
} */ *uap = v;
caddr_t sg = stackgap_init(p, 0);
CHECK_ALT_EXIST(p, &sg, SCARG(uap, path));
return sys_access(p, uap, retval);
}
int
bsd_sys_chflags(p, v, retval)
struct proc *p;
void *v;
register_t *retval;
{
struct sys_chflags_args /* {
syscallarg(char *) path;
syscallarg(int) flags;
} */ *uap = v;
caddr_t sg = stackgap_init(p, 0);
CHECK_ALT_EXIST(p, &sg, SCARG(uap, path));
return sys_chflags(p, uap, retval);
}
int
bsd_compat_43_sys_stat(p, v, retval)
struct proc *p;
void *v;
register_t *retval;
{
struct compat_43_sys_stat_args /* {
syscallarg(char *) path;
syscallarg(struct stat43 *) ub;
} */ *uap = v;
caddr_t sg = stackgap_init(p, 0);
CHECK_ALT_EXIST(p, &sg, SCARG(uap, path));
return compat_43_sys_stat(p, uap, retval);
}
int
bsd_compat_43_sys_lstat(p, v, retval)
struct proc *p;
void *v;
register_t *retval;
{
struct compat_43_sys_lstat_args /* {
syscallarg(char *) path;
syscallarg(struct stat43 *) ub;
} */ *uap = v;
caddr_t sg = stackgap_init(p, 0);
CHECK_ALT_EXIST(p, &sg, SCARG(uap, path));
return compat_43_sys_lstat(p, uap, retval);
}
int
bsd_sys_acct(p, v, retval)
struct proc *p;
void *v;
register_t *retval;
{
struct sys_acct_args /* {
syscallarg(char *) path;
} */ *uap = v;
caddr_t sg = stackgap_init(p, 0);
CHECK_ALT_EXIST(p, &sg, SCARG(uap, path));
return sys_acct(p, uap, retval);
}
int
bsd_sys_revoke(p, v, retval)
struct proc *p;
void *v;
register_t *retval;
{
struct sys_revoke_args /* {
syscallarg(char *) path;
} */ *uap = v;
caddr_t sg = stackgap_init(p, 0);
CHECK_ALT_EXIST(p, &sg, SCARG(uap, path));
return sys_revoke(p, uap, retval);
}
int
bsd_sys_symlink(p, v, retval)
struct proc *p;
void *v;
register_t *retval;
{
struct sys_symlink_args /* {
syscallarg(char *) path;
syscallarg(char *) link;
} */ *uap = v;
caddr_t sg = stackgap_init(p, 0);
CHECK_ALT_EXIST(p, &sg, SCARG(uap, path));
CHECK_ALT_CREAT(p, &sg, SCARG(uap, link));
return sys_symlink(p, uap, retval);
}
int
bsd_sys_readlink(p, v, retval)
struct proc *p;
void *v;
register_t *retval;
{
struct sys_readlink_args /* {
syscallarg(char *) path;
syscallarg(char *) buf;
syscallarg(int) count;
} */ *uap = v;
caddr_t sg = stackgap_init(p, 0);
CHECK_ALT_SYMLINK(p, &sg, SCARG(uap, path));
return sys_readlink(p, uap, retval);
}
int
bsd_sys_execve(p, v, retval)
struct proc *p;
void *v;
register_t *retval;
{
struct sys_execve_args /* {
syscallarg(char *) path;
syscallarg(char **) argp;
syscallarg(char **) envp;
} */ *uap = v;
struct sys_execve_args ap;
caddr_t sg;
sg = stackgap_init(p, 0);
CHECK_ALT_EXIST(p, &sg, SCARG(uap, path));
SCARG(&ap, path) = SCARG(uap, path);
SCARG(&ap, argp) = SCARG(uap, argp);
SCARG(&ap, envp) = SCARG(uap, envp);
return sys_execve(p, &ap, retval);
}
int
bsd_sys_chroot(p, v, retval)
struct proc *p;
void *v;
register_t *retval;
{
struct sys_chroot_args /* {
syscallarg(char *) path;
} */ *uap = v;
caddr_t sg = stackgap_init(p, 0);
CHECK_ALT_EXIST(p, &sg, SCARG(uap, path));
return sys_chroot(p, uap, retval);
}
int
bsd_compat_12_sys_swapon(p, v, retval)
struct proc *p;
void *v;
register_t *retval;
{
struct compat_12_sys_swapon_args /* {
syscallarg(char *) name;
} */ *uap = v;
caddr_t sg = stackgap_init(p, 0);
CHECK_ALT_EXIST(p, &sg, SCARG(uap, name));
return compat_12_sys_swapon(p, uap, retval);
}
int
bsd_sys_rename(p, v, retval)
struct proc *p;
void *v;
register_t *retval;
{
struct sys_rename_args /* {
syscallarg(char *) from;
syscallarg(char *) to;
} */ *uap = v;
caddr_t sg = stackgap_init(p, 0);
CHECK_ALT_EXIST(p, &sg, SCARG(uap, from));
CHECK_ALT_CREAT(p, &sg, SCARG(uap, to));
return sys_rename(p, uap, retval);
}
int
bsd_compat_43_sys_truncate(p, v, retval)
struct proc *p;
void *v;
register_t *retval;
{
struct compat_43_sys_truncate_args /* {
syscallarg(char *) path;
syscallarg(long) length;
} */ *uap = v;
caddr_t sg = stackgap_init(p, 0);
CHECK_ALT_EXIST(p, &sg, SCARG(uap, path));
return compat_43_sys_truncate(p, uap, retval);
}
int
bsd_sys_mkfifo(p, v, retval)
struct proc *p;
void *v;
register_t *retval;
{
struct sys_mkfifo_args /* {
syscallarg(char *) path;
syscallarg(int) mode;
} */ *uap = v;
caddr_t sg = stackgap_init(p, 0);
CHECK_ALT_CREAT(p, &sg, SCARG(uap, path));
return sys_mkfifo(p, uap, retval);
}
int
bsd_sys_mkdir(p, v, retval)
struct proc *p;
void *v;
register_t *retval;
{
struct sys_mkdir_args /* {
syscallarg(char *) path;
syscallarg(int) mode;
} */ *uap = v;
caddr_t sg = stackgap_init(p, 0);
CHECK_ALT_CREAT(p, &sg, SCARG(uap, path));
return sys_mkdir(p, uap, retval);
}
int
bsd_sys_rmdir(p, v, retval)
struct proc *p;
void *v;
register_t *retval;
{
struct sys_rmdir_args /* {
syscallarg(char *) path;
} */ *uap = v;
caddr_t sg = stackgap_init(p, 0);
CHECK_ALT_EXIST(p, &sg, SCARG(uap, path));
return sys_rmdir(p, uap, retval);
}
int
bsd_sys_utimes(p, v, retval)
struct proc *p;
void *v;
register_t *retval;
{
struct sys_utimes_args /* {
syscallarg(char *) path;
syscallarg(struct timeval *) tptr;
} */ *uap = v;
caddr_t sg = stackgap_init(p, 0);
CHECK_ALT_EXIST(p, &sg, SCARG(uap, path));
return sys_utimes(p, uap, retval);
}
int
bsd_sys_quotactl(p, v, retval)
struct proc *p;
void *v;
register_t *retval;
{
struct sys_quotactl_args /* {
syscallarg(char *) path;
syscallarg(int) cmd;
syscallarg(int) uid;
syscallarg(caddr_t) arg;
} */ *uap = v;
caddr_t sg = stackgap_init(p, 0);
CHECK_ALT_EXIST(p, &sg, SCARG(uap, path));
return sys_quotactl(p, uap, retval);
}
int
bsd_sys_statfs(p, v, retval)
struct proc *p;
void *v;
register_t *retval;
{
struct sys_statfs_args /* {
syscallarg(char *) path;
syscallarg(struct statfs *) buf;
} */ *uap = v;
caddr_t sg = stackgap_init(p, 0);
CHECK_ALT_EXIST(p, &sg, SCARG(uap, path));
return sys_statfs(p, uap, retval);
}
#ifdef NFS
int
bsd_sys_getfh(p, v, retval)
struct proc *p;
void *v;
register_t *retval;
{
struct sys_getfh_args /* {
syscallarg(char *) fname;
syscallarg(fhandle_t *) fhp;
} */ *uap = v;
caddr_t sg = stackgap_init(p, 0);
CHECK_ALT_EXIST(p, &sg, SCARG(uap, fname));
return sys_getfh(p, uap, retval);
}
#endif /* NFS */
int
bsd_compat_12_sys_stat(p, v, retval)
struct proc *p;
void *v;
register_t *retval;
{
struct compat_12_sys_stat_args /* {
syscallarg(char *) path;
syscallarg(struct stat12 *) ub;
} */ *uap = v;
caddr_t sg = stackgap_init(p, 0);
CHECK_ALT_EXIST(p, &sg, SCARG(uap, path));
return compat_12_sys_stat(p, uap, retval);
}
int
bsd_compat_12_sys_lstat(p, v, retval)
struct proc *p;
void *v;
register_t *retval;
{
struct compat_12_sys_lstat_args /* {
syscallarg(char *) path;
syscallarg(struct stat12 *) ub;
} */ *uap = v;
caddr_t sg = stackgap_init(p, 0);
CHECK_ALT_EXIST(p, &sg, SCARG(uap, path));
return compat_12_sys_lstat(p, uap, retval);
}
int
bsd_sys_pathconf(p, v, retval)
struct proc *p;
void *v;
register_t *retval;
{
struct sys_pathconf_args /* {
syscallarg(char *) path;
syscallarg(int) name;
} */ *uap = v;
caddr_t sg = stackgap_init(p, 0);
CHECK_ALT_EXIST(p, &sg, SCARG(uap, path));
return sys_pathconf(p, uap, retval);
}
int
bsd_sys_truncate(p, v, retval)
struct proc *p;
void *v;
register_t *retval;
{
struct sys_truncate_args /* {
syscallarg(char *) path;
syscallarg(int) pad;
syscallarg(off_t) length;
} */ *uap = v;
caddr_t sg = stackgap_init(p, 0);
CHECK_ALT_EXIST(p, &sg, SCARG(uap, path));
return sys_truncate(p, uap, retval);
}
int
bsd_sys_undelete(p, v, retval)
struct proc *p;
void *v;
register_t *retval;
{
struct sys_undelete_args /* {
syscallarg(char *) path;
} */ *uap = v;
caddr_t sg = stackgap_init(p, 0);
CHECK_ALT_EXIST(p, &sg, SCARG(uap, path));
return sys_undelete(p, uap, retval);
}
int
bsd_sys_lchmod(p, v, retval)
struct proc *p;
void *v;
register_t *retval;
{
struct sys_lchmod_args /* {
syscallarg(char *) path;
syscallarg(mode_t) mode;
} */ *uap = v;
caddr_t sg = stackgap_init(p, 0);
CHECK_ALT_SYMLINK(p, &sg, SCARG(uap, path));
return sys_lchmod(p, uap, retval);
}
int
bsd_sys_lchown(p, v, retval)
struct proc *p;
void *v;
register_t *retval;
{
struct sys_lchown_args /* {
syscallarg(char *) path;
syscallarg(int) uid;
syscallarg(int) gid;
} */ *uap = v;
caddr_t sg = stackgap_init(p, 0);
CHECK_ALT_SYMLINK(p, &sg, SCARG(uap, path));
return sys_lchown(p, uap, retval);
}
int
bsd_sys_lutimes(p, v, retval)
struct proc *p;
void *v;
register_t *retval;
{
struct sys_lutimes_args /* {
syscallarg(char *) path;
syscallarg(struct timeval *) tptr;
} */ *uap = v;
caddr_t sg = stackgap_init(p, 0);
CHECK_ALT_EXIST(p, &sg, SCARG(uap, path));
return sys_lutimes(p, uap, retval);
}
int
bsd_sys___stat13(p, v, retval)
struct proc *p;
void *v;
register_t *retval;
{
struct sys___stat13_args /* {
syscallarg(char *) path;
syscallarg(struct stat *) ub;
} */ *uap = v;
caddr_t sg = stackgap_init(p, 0);
CHECK_ALT_EXIST(p, &sg, SCARG(uap, path));
return sys___stat13(p, uap, retval);
}
int
bsd_sys___lstat13(p, v, retval)
struct proc *p;
void *v;
register_t *retval;
{
struct sys___lstat13_args /* {
syscallarg(char *) path;
syscallarg(struct stat *) ub;
} */ *uap = v;
caddr_t sg = stackgap_init(p, 0);
CHECK_ALT_EXIST(p, &sg, SCARG(uap, path));
return sys___lstat13(p, uap, retval);
}
int
bsd_sys___posix_chown(p, v, retval)
struct proc *p;
void *v;
register_t *retval;
{
struct sys___posix_chown_args /* {
syscallarg(char *) path;
syscallarg(int) uid;
syscallarg(int) gid;
} */ *uap = v;
caddr_t sg = stackgap_init(p, 0);
CHECK_ALT_EXIST(p, &sg, SCARG(uap, path));
return sys___posix_chown(p, uap, retval);
}
int
bsd_sys___posix_lchown(p, v, retval)
struct proc *p;
void *v;
register_t *retval;
{
struct sys___posix_lchown_args /* {
syscallarg(char *) path;
syscallarg(int) uid;
syscallarg(int) gid;
} */ *uap = v;
caddr_t sg = stackgap_init(p, 0);
CHECK_ALT_EXIST(p, &sg, SCARG(uap, path));
return sys___posix_lchown(p, uap, retval);
}
int
bsd_sys_lchflags(p, v, retval)
struct proc *p;
void *v;
register_t *retval;
{
struct sys_lchflags_args /* {
syscallarg(char *) path;
syscallarg(int) flags;
} */ *uap = v;
caddr_t sg = stackgap_init(p, 0);
CHECK_ALT_EXIST(p, &sg, SCARG(uap, path));
return sys_lchflags(p, uap, retval);
}
#endif /* defined(COMPAT_DARWIN) */

View File

@ -0,0 +1,86 @@
/* $NetBSD: compat_file.h,v 1.1 2002/12/08 00:50:25 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.
*/
#ifndef _COMPAT_FILE_H_
#define _COMPAT_FILE_H_
int bsd_sys_open(struct proc *, void *, register_t *);
int bsd_compat_43_sys_creat(struct proc *, void *, register_t *);
int bsd_sys_link(struct proc *, void *, register_t *);
int bsd_sys_unlink(struct proc *, void *, register_t *);
int bsd_sys_chdir(struct proc *, void *, register_t *);
int bsd_sys_mknod(struct proc *, void *, register_t *);
int bsd_sys_chmod(struct proc *, void *, register_t *);
int bsd_sys_chown(struct proc *, void *, register_t *);
int bsd_sys_mount(struct proc *, void *, register_t *);
int bsd_sys_unmount(struct proc *, void *, register_t *);
int bsd_sys_access(struct proc *, void *, register_t *);
int bsd_sys_chflags(struct proc *, void *, register_t *);
int bsd_compat_43_sys_stat(struct proc *, void *, register_t *);
int bsd_compat_43_sys_lstat(struct proc *, void *, register_t *);
int bsd_sys_acct(struct proc *, void *, register_t *);
int bsd_sys_revoke(struct proc *, void *, register_t *);
int bsd_sys_symlink(struct proc *, void *, register_t *);
int bsd_sys_readlink(struct proc *, void *, register_t *);
int bsd_sys_execve(struct proc *, void *, register_t *);
int bsd_sys_chroot(struct proc *, void *, register_t *);
int bsd_compat_12_sys_swapon(struct proc *, void *, register_t *);
int bsd_sys_rename(struct proc *, void *, register_t *);
int bsd_compat_43_sys_truncate(struct proc *, void *, register_t *);
int bsd_sys_mkfifo(struct proc *, void *, register_t *);
int bsd_sys_mkdir(struct proc *, void *, register_t *);
int bsd_sys_rmdir(struct proc *, void *, register_t *);
int bsd_sys_utimes(struct proc *, void *, register_t *);
int bsd_sys_quotactl(struct proc *, void *, register_t *);
int bsd_sys_statfs(struct proc *, void *, register_t *);
int bsd_sys_getfh(struct proc *, void *, register_t *);
int bsd_compat_12_sys_stat(struct proc *, void *, register_t *);
int bsd_compat_12_sys_lstat(struct proc *, void *, register_t *);
int bsd_sys_pathconf(struct proc *, void *, register_t *);
int bsd_sys_truncate(struct proc *, void *, register_t *);
int bsd_sys_undelete(struct proc *, void *, register_t *);
int bsd_sys_lchmod(struct proc *, void *, register_t *);
int bsd_sys_lchown(struct proc *, void *, register_t *);
int bsd_sys_lutimes(struct proc *, void *, register_t *);
int bsd_sys___stat13(struct proc *, void *, register_t *);
int bsd_sys___lstat13(struct proc *, void *, register_t *);
int bsd_sys___posix_chown(struct proc *, void *, register_t *);
int bsd_sys___posix_lchown(struct proc *, void *, register_t *);
int bsd_sys_lchflags(struct proc *, void *, register_t *);
#endif /* _COMPAT_FILE_H_ */

View File

@ -1,4 +1,4 @@
/* $NetBSD: darwin_mman.c,v 1.3 2002/12/05 22:48:54 manu Exp $ */
/* $NetBSD: darwin_mman.c,v 1.4 2002/12/08 00:50:26 manu Exp $ */
/*-
* Copyright (c) 2002 The NetBSD Foundation, Inc.
@ -37,7 +37,7 @@
*/
#include <sys/cdefs.h>
__KERNEL_RCSID(0, "$NetBSD");
__KERNEL_RCSID(0, "$NetBSD: darwin_mman.c,v 1.4 2002/12/08 00:50:26 manu Exp $");
#include <sys/types.h>
#include <sys/param.h>
@ -54,11 +54,11 @@ __KERNEL_RCSID(0, "$NetBSD");
#include <sys/syscallargs.h>
#include <compat/common/compat_file.h>
#include <compat/mach/mach_types.h>
#include <compat/mach/mach_vm.h>
#include <compat/freebsd/freebsd_syscallargs.h>
#include <compat/darwin/darwin_syscallargs.h>
int
@ -84,7 +84,7 @@ darwin_sys_load_shared_file(p, v, retval)
char filename[MAXPATHLEN + 1];
mach_sf_mapping_t *mapp;
size_t maplen;
struct freebsd_sys_open_args open_cup;
struct sys_open_args open_cup;
struct sys_close_args close_cup;
int fd;
int i;
@ -116,7 +116,7 @@ darwin_sys_load_shared_file(p, v, retval)
SCARG(&open_cup, path) = SCARG(uap, filename);
SCARG(&open_cup, flags) = O_RDONLY;
SCARG(&open_cup, mode) = 0;
if ((error = freebsd_sys_open(p, &open_cup, &fd)) != 0)
if ((error = bsd_sys_open(p, &open_cup, &fd)) != 0)
return error;
fdp = p->p_fd;

View File

@ -1,4 +1,4 @@
/* $NetBSD: darwin_syscall.h,v 1.10 2002/11/25 22:26:21 manu Exp $ */
/* $NetBSD: darwin_syscall.h,v 1.11 2002/12/08 00:50:26 manu Exp $ */
/*
* System call numbers.
@ -22,39 +22,15 @@
/* syscall: "write" ret: "ssize_t" args: "int" "const void *" "size_t" */
#define DARWIN_SYS_write 4
/* syscall: "open" ret: "int" args: "const char *" "int" "..." */
#define DARWIN_SYS_open 5
/* syscall: "close" ret: "int" args: "int" */
#define DARWIN_SYS_close 6
/* syscall: "wait4" ret: "int" args: "int" "int *" "int" "struct rusage *" */
#define DARWIN_SYS_wait4 7
/* syscall: "ocreat" ret: "int" args: "const char *" "mode_t" */
#define DARWIN_SYS_ocreat 8
/* syscall: "link" ret: "int" args: "const char *" "const char *" */
#define DARWIN_SYS_link 9
/* syscall: "unlink" ret: "int" args: "const char *" */
#define DARWIN_SYS_unlink 10
/* syscall: "chdir" ret: "int" args: "const char *" */
#define DARWIN_SYS_chdir 12
/* syscall: "fchdir" ret: "int" args: "int" */
#define DARWIN_SYS_fchdir 13
/* syscall: "mknod" ret: "int" args: "const char *" "mode_t" "dev_t" */
#define DARWIN_SYS_mknod 14
/* syscall: "chmod" ret: "int" args: "const char *" "mode_t" */
#define DARWIN_SYS_chmod 15
/* syscall: "chown" ret: "int" args: "const char *" "uid_t" "gid_t" */
#define DARWIN_SYS_chown 16
/* syscall: "break" ret: "int" args: "char *" */
#define DARWIN_SYS_break 17
@ -67,12 +43,6 @@
/* syscall: "getpid" ret: "pid_t" args: */
#define DARWIN_SYS_getpid 20
/* syscall: "mount" ret: "int" args: "const char *" "const char *" "int" "void *" */
#define DARWIN_SYS_mount 21
/* syscall: "unmount" ret: "int" args: "const char *" "int" */
#define DARWIN_SYS_unmount 22
/* syscall: "setuid" ret: "int" args: "uid_t" */
#define DARWIN_SYS_setuid 23
@ -103,12 +73,6 @@
/* syscall: "getsockname" ret: "int" args: "int" "struct sockaddr *" "unsigned int *" */
#define DARWIN_SYS_getsockname 32
/* syscall: "access" ret: "int" args: "const char *" "int" */
#define DARWIN_SYS_access 33
/* syscall: "chflags" ret: "int" args: "const char *" "u_long" */
#define DARWIN_SYS_chflags 34
/* syscall: "fchflags" ret: "int" args: "int" "u_long" */
#define DARWIN_SYS_fchflags 35
@ -118,15 +82,9 @@
/* syscall: "kill" ret: "int" args: "int" "int" */
#define DARWIN_SYS_kill 37
/* syscall: "stat43" ret: "int" args: "const char *" "struct stat43 *" */
#define DARWIN_SYS_stat43 38
/* syscall: "getppid" ret: "pid_t" args: */
#define DARWIN_SYS_getppid 39
/* syscall: "lstat43" ret: "int" args: "const char *" "struct stat43 *" */
#define DARWIN_SYS_lstat43 40
/* syscall: "dup" ret: "int" args: "int" */
#define DARWIN_SYS_dup 41
@ -158,9 +116,6 @@
/* syscall: "setlogin" ret: "int" args: "const char *" */
#define DARWIN_SYS_setlogin 50
/* syscall: "acct" ret: "int" args: "const char *" */
#define DARWIN_SYS_acct 51
/* syscall: "sigpending13" ret: "int" args: */
#define DARWIN_SYS_sigpending13 52
@ -173,24 +128,9 @@
/* syscall: "oreboot" ret: "int" args: "int" */
#define DARWIN_SYS_oreboot 55
/* syscall: "revoke" ret: "int" args: "const char *" */
#define DARWIN_SYS_revoke 56
/* syscall: "symlink" ret: "int" args: "const char *" "const char *" */
#define DARWIN_SYS_symlink 57
/* syscall: "readlink" ret: "int" args: "const char *" "char *" "size_t" */
#define DARWIN_SYS_readlink 58
/* syscall: "execve" ret: "int" args: "const char *" "char *const *" "char *const *" */
#define DARWIN_SYS_execve 59
/* syscall: "umask" ret: "mode_t" args: "mode_t" */
#define DARWIN_SYS_umask 60
/* syscall: "chroot" ret: "int" args: "const char *" */
#define DARWIN_SYS_chroot 61
/* syscall: "fstat43" ret: "int" args: "int" "struct stat43 *" */
#define DARWIN_SYS_fstat43 62
@ -247,9 +187,6 @@
/* syscall: "owait" ret: "int" args: */
#define DARWIN_SYS_owait 84
/* syscall: "oswapon" ret: "int" args: "const char *" */
#define DARWIN_SYS_oswapon 85
/* syscall: "getitimer" ret: "int" args: "int" "struct itimerval *" */
#define DARWIN_SYS_getitimer 86
@ -361,21 +298,12 @@
/* syscall: "setregid" ret: "int" args: "gid_t" "gid_t" */
#define DARWIN_SYS_setregid 127
/* syscall: "rename" ret: "int" args: "const char *" "const char *" */
#define DARWIN_SYS_rename 128
/* syscall: "otruncate" ret: "int" args: "const char *" "long" */
#define DARWIN_SYS_otruncate 129
/* syscall: "oftruncate" ret: "int" args: "int" "long" */
#define DARWIN_SYS_oftruncate 130
/* syscall: "flock" ret: "int" args: "int" "int" */
#define DARWIN_SYS_flock 131
/* syscall: "mkfifo" ret: "int" args: "const char *" "mode_t" */
#define DARWIN_SYS_mkfifo 132
/* syscall: "sendto" ret: "ssize_t" args: "int" "const void *" "size_t" "int" "const struct sockaddr *" "unsigned int" */
#define DARWIN_SYS_sendto 133
@ -385,15 +313,6 @@
/* syscall: "socketpair" ret: "int" args: "int" "int" "int" "int *" */
#define DARWIN_SYS_socketpair 135
/* syscall: "mkdir" ret: "int" args: "const char *" "mode_t" */
#define DARWIN_SYS_mkdir 136
/* syscall: "rmdir" ret: "int" args: "const char *" */
#define DARWIN_SYS_rmdir 137
/* syscall: "utimes" ret: "int" args: "const char *" "const struct timeval *" */
#define DARWIN_SYS_utimes 138
/* syscall: "adjtime" ret: "int" args: "const struct timeval *" "struct timeval *" */
#define DARWIN_SYS_adjtime 140
@ -425,15 +344,9 @@
/* syscall: "ogetdirentries" ret: "int" args: "int" "char *" "u_int" "long *" */
#define DARWIN_SYS_ogetdirentries 156
/* syscall: "statfs" ret: "int" args: "const char *" "struct statfs *" */
#define DARWIN_SYS_statfs 157
/* syscall: "fstatfs" ret: "int" args: "int" "struct statfs *" */
#define DARWIN_SYS_fstatfs 158
/* syscall: "getfh" ret: "int" args: "const char *" "fhandle_t *" */
#define DARWIN_SYS_getfh 161
/* 161 is excluded getfh */
/* syscall: "ogetdomainname" ret: "int" args: "char *" "int" */
#define DARWIN_SYS_ogetdomainname 162
@ -450,18 +363,9 @@
/* syscall: "seteuid" ret: "int" args: "uid_t" */
#define DARWIN_SYS_seteuid 183
/* syscall: "stat12" ret: "int" args: "const char *" "struct stat12 *" */
#define DARWIN_SYS_stat12 188
/* syscall: "fstat" ret: "int" args: "int" "struct stat12 *" */
#define DARWIN_SYS_fstat 189
/* syscall: "lstat12" ret: "int" args: "const char *" "struct stat12 *" */
#define DARWIN_SYS_lstat12 190
/* syscall: "pathconf" ret: "long" args: "const char *" "int" */
#define DARWIN_SYS_pathconf 191
/* syscall: "fpathconf" ret: "long" args: "int" "int" */
#define DARWIN_SYS_fpathconf 192
@ -480,9 +384,6 @@
/* syscall: "lseek" ret: "off_t" args: "int" "int" "off_t" "int" */
#define DARWIN_SYS_lseek 199
/* syscall: "truncate" ret: "int" args: "const char *" "int" "off_t" */
#define DARWIN_SYS_truncate 200
/* syscall: "ftruncate" ret: "int" args: "int" "int" "off_t" */
#define DARWIN_SYS_ftruncate 201

View File

@ -1,4 +1,4 @@
/* $NetBSD: darwin_syscallargs.h,v 1.10 2002/11/25 22:26:21 manu Exp $ */
/* $NetBSD: darwin_syscallargs.h,v 1.11 2002/12/08 00:50:27 manu Exp $ */
/*
* System call argument lists.
@ -27,16 +27,182 @@
} be; \
}
struct bsd_sys_open_args {
syscallarg(const char *) path;
syscallarg(int) flags;
syscallarg(mode_t) mode;
};
struct bsd_compat_43_sys_creat_args {
syscallarg(const char *) path;
syscallarg(mode_t) mode;
};
struct bsd_sys_link_args {
syscallarg(const char *) path;
syscallarg(const char *) link;
};
struct bsd_sys_unlink_args {
syscallarg(const char *) path;
};
struct bsd_sys_chdir_args {
syscallarg(const char *) path;
};
struct bsd_sys_mknod_args {
syscallarg(const char *) path;
syscallarg(mode_t) mode;
syscallarg(dev_t) dev;
};
struct bsd_sys_chmod_args {
syscallarg(const char *) path;
syscallarg(mode_t) mode;
};
struct bsd_sys_chown_args {
syscallarg(const char *) path;
syscallarg(uid_t) uid;
syscallarg(gid_t) gid;
};
struct bsd_sys_mount_args {
syscallarg(const char *) type;
syscallarg(const char *) path;
syscallarg(int) flags;
syscallarg(void *) data;
};
struct bsd_sys_unmount_args {
syscallarg(const char *) path;
syscallarg(int) flags;
};
struct bsd_sys_access_args {
syscallarg(const char *) path;
syscallarg(int) flags;
};
struct bsd_sys_chflags_args {
syscallarg(const char *) path;
syscallarg(u_long) flags;
};
struct bsd_compat_43_sys_stat_args {
syscallarg(const char *) path;
syscallarg(struct stat43 *) ub;
};
struct bsd_compat_43_sys_lstat_args {
syscallarg(const char *) path;
syscallarg(struct stat43 *) ub;
};
struct darwin_sys_sigaction_args {
syscallarg(int) signum;
syscallarg(struct darwin___sigaction *) nsa;
syscallarg(struct sigaction13 *) osa;
};
struct bsd_sys_acct_args {
syscallarg(const char *) path;
};
struct bsd_sys_revoke_args {
syscallarg(const char *) path;
};
struct bsd_sys_symlink_args {
syscallarg(const char *) path;
syscallarg(const char *) link;
};
struct bsd_sys_readlink_args {
syscallarg(const char *) path;
syscallarg(char *) buf;
syscallarg(size_t) count;
};
struct bsd_sys_execve_args {
syscallarg(const char *) path;
syscallarg(char *const *) argp;
syscallarg(char *const *) envp;
};
struct bsd_sys_chroot_args {
syscallarg(const char *) path;
};
struct bsd_compat_12_sys_swapon_args {
syscallarg(const char *) name;
};
struct darwin_sys_sigreturn_args {
syscallarg(struct darwin_ucontext *) uctx;
};
struct bsd_sys_rename_args {
syscallarg(const char *) from;
syscallarg(const char *) to;
};
struct bsd_compat_43_sys_truncate_args {
syscallarg(const char *) path;
syscallarg(long) length;
};
struct bsd_sys_mkfifo_args {
syscallarg(const char *) path;
syscallarg(mode_t) mode;
};
struct bsd_sys_mkdir_args {
syscallarg(const char *) path;
syscallarg(mode_t) mode;
};
struct bsd_sys_rmdir_args {
syscallarg(const char *) path;
};
struct bsd_sys_utimes_args {
syscallarg(const char *) path;
syscallarg(const struct timeval *) tptr;
};
struct bsd_sys_statfs_args {
syscallarg(const char *) path;
syscallarg(struct statfs *) buf;
};
struct bsd_sys_getfh_args {
syscallarg(const char *) fname;
syscallarg(fhandle_t *) fhp;
};
struct bsd_compat_12_sys_stat_args {
syscallarg(const char *) path;
syscallarg(struct stat12 *) ub;
};
struct bsd_compat_12_sys_lstat_args {
syscallarg(const char *) path;
syscallarg(struct stat12 *) ub;
};
struct bsd_sys_pathconf_args {
syscallarg(const char *) path;
syscallarg(int) name;
};
struct bsd_sys_truncate_args {
syscallarg(const char *) path;
syscallarg(int) pad;
syscallarg(off_t) length;
};
struct darwin_sys___sysctl_args {
syscallarg(int *) name;
syscallarg(u_int) namelen;
@ -46,6 +212,10 @@ struct darwin_sys___sysctl_args {
syscallarg(size_t) newlen;
};
struct bsd_sys_undelete_args {
syscallarg(const char *) path;
};
struct darwin_sys_load_shared_file_args {
syscallarg(char *) filename;
syscallarg(caddr_t) addr;
@ -64,17 +234,17 @@ int sys_exit(struct proc *, void *, register_t *);
int sys_fork(struct proc *, void *, register_t *);
int sys_read(struct proc *, void *, register_t *);
int sys_write(struct proc *, void *, register_t *);
int freebsd_sys_open(struct proc *, void *, register_t *);
int bsd_sys_open(struct proc *, void *, register_t *);
int sys_close(struct proc *, void *, register_t *);
int sys_wait4(struct proc *, void *, register_t *);
int compat_43_freebsd_sys_creat(struct proc *, void *, register_t *);
int freebsd_sys_link(struct proc *, void *, register_t *);
int freebsd_sys_unlink(struct proc *, void *, register_t *);
int freebsd_sys_chdir(struct proc *, void *, register_t *);
int bsd_compat_43_sys_creat(struct proc *, void *, register_t *);
int bsd_sys_link(struct proc *, void *, register_t *);
int bsd_sys_unlink(struct proc *, void *, register_t *);
int bsd_sys_chdir(struct proc *, void *, register_t *);
int sys_fchdir(struct proc *, void *, register_t *);
int freebsd_sys_mknod(struct proc *, void *, register_t *);
int freebsd_sys_chmod(struct proc *, void *, register_t *);
int freebsd_sys_chown(struct proc *, void *, register_t *);
int bsd_sys_mknod(struct proc *, void *, register_t *);
int bsd_sys_chmod(struct proc *, void *, register_t *);
int bsd_sys_chown(struct proc *, void *, register_t *);
int sys_obreak(struct proc *, void *, register_t *);
int sys_getfsstat(struct proc *, void *, register_t *);
int sys_lseek(struct proc *, void *, register_t *);
@ -83,8 +253,8 @@ int sys_getpid_with_ppid(struct proc *, void *, register_t *);
#else
int sys_getpid(struct proc *, void *, register_t *);
#endif
int sys_mount(struct proc *, void *, register_t *);
int sys_unmount(struct proc *, void *, register_t *);
int bsd_sys_mount(struct proc *, void *, register_t *);
int bsd_sys_unmount(struct proc *, void *, register_t *);
int sys_setuid(struct proc *, void *, register_t *);
#ifdef COMPAT_43
int sys_getuid_with_euid(struct proc *, void *, register_t *);
@ -99,14 +269,14 @@ int sys_recvfrom(struct proc *, void *, register_t *);
int sys_accept(struct proc *, void *, register_t *);
int sys_getpeername(struct proc *, void *, register_t *);
int sys_getsockname(struct proc *, void *, register_t *);
int freebsd_sys_access(struct proc *, void *, register_t *);
int freebsd_sys_chflags(struct proc *, void *, register_t *);
int bsd_sys_access(struct proc *, void *, register_t *);
int bsd_sys_chflags(struct proc *, void *, register_t *);
int sys_fchflags(struct proc *, void *, register_t *);
int sys_sync(struct proc *, void *, register_t *);
int sys_kill(struct proc *, void *, register_t *);
int compat_43_freebsd_sys_stat(struct proc *, void *, register_t *);
int bsd_compat_43_sys_stat(struct proc *, void *, register_t *);
int sys_getppid(struct proc *, void *, register_t *);
int compat_43_freebsd_sys_lstat(struct proc *, void *, register_t *);
int bsd_compat_43_sys_lstat(struct proc *, void *, register_t *);
int sys_dup(struct proc *, void *, register_t *);
int sys_pipe(struct proc *, void *, register_t *);
int sys_getegid(struct proc *, void *, register_t *);
@ -124,17 +294,17 @@ int sys_getgid(struct proc *, void *, register_t *);
int compat_13_sys_sigprocmask(struct proc *, void *, register_t *);
int sys___getlogin(struct proc *, void *, register_t *);
int sys_setlogin(struct proc *, void *, register_t *);
int sys_acct(struct proc *, void *, register_t *);
int bsd_sys_acct(struct proc *, void *, register_t *);
int compat_13_sys_sigpending(struct proc *, void *, register_t *);
int compat_13_sys_sigaltstack(struct proc *, void *, register_t *);
int sys_ioctl(struct proc *, void *, register_t *);
int sys_reboot(struct proc *, void *, register_t *);
int freebsd_sys_revoke(struct proc *, void *, register_t *);
int freebsd_sys_symlink(struct proc *, void *, register_t *);
int freebsd_sys_readlink(struct proc *, void *, register_t *);
int freebsd_sys_execve(struct proc *, void *, register_t *);
int bsd_sys_revoke(struct proc *, void *, register_t *);
int bsd_sys_symlink(struct proc *, void *, register_t *);
int bsd_sys_readlink(struct proc *, void *, register_t *);
int bsd_sys_execve(struct proc *, void *, register_t *);
int sys_umask(struct proc *, void *, register_t *);
int freebsd_sys_chroot(struct proc *, void *, register_t *);
int bsd_sys_chroot(struct proc *, void *, register_t *);
int compat_43_sys_fstat(struct proc *, void *, register_t *);
int compat_43_sys_getpagesize(struct proc *, void *, register_t *);
int compat_12_sys_msync(struct proc *, void *, register_t *);
@ -153,7 +323,7 @@ int sys_getpgrp(struct proc *, void *, register_t *);
int sys_setpgid(struct proc *, void *, register_t *);
int sys_setitimer(struct proc *, void *, register_t *);
int compat_43_sys_wait(struct proc *, void *, register_t *);
int compat_12_sys_swapon(struct proc *, void *, register_t *);
int bsd_compat_12_sys_swapon(struct proc *, void *, register_t *);
int sys_getitimer(struct proc *, void *, register_t *);
int compat_43_sys_gethostname(struct proc *, void *, register_t *);
int compat_43_sys_sethostname(struct proc *, void *, register_t *);
@ -191,17 +361,17 @@ int sys_fchmod(struct proc *, void *, register_t *);
int compat_43_sys_recvfrom(struct proc *, void *, register_t *);
int sys_setreuid(struct proc *, void *, register_t *);
int sys_setregid(struct proc *, void *, register_t *);
int freebsd_sys_rename(struct proc *, void *, register_t *);
int compat_43_freebsd_sys_truncate(struct proc *, void *, register_t *);
int bsd_sys_rename(struct proc *, void *, register_t *);
int bsd_compat_43_sys_truncate(struct proc *, void *, register_t *);
int compat_43_sys_ftruncate(struct proc *, void *, register_t *);
int sys_flock(struct proc *, void *, register_t *);
int freebsd_sys_mkfifo(struct proc *, void *, register_t *);
int bsd_sys_mkfifo(struct proc *, void *, register_t *);
int sys_sendto(struct proc *, void *, register_t *);
int sys_shutdown(struct proc *, void *, register_t *);
int sys_socketpair(struct proc *, void *, register_t *);
int freebsd_sys_mkdir(struct proc *, void *, register_t *);
int freebsd_sys_rmdir(struct proc *, void *, register_t *);
int sys_utimes(struct proc *, void *, register_t *);
int bsd_sys_mkdir(struct proc *, void *, register_t *);
int bsd_sys_rmdir(struct proc *, void *, register_t *);
int bsd_sys_utimes(struct proc *, void *, register_t *);
int sys_adjtime(struct proc *, void *, register_t *);
int compat_43_sys_getpeername(struct proc *, void *, register_t *);
int compat_43_sys_gethostid(struct proc *, void *, register_t *);
@ -215,10 +385,10 @@ int sys_nfssvc(struct proc *, void *, register_t *);
#else
#endif
int compat_43_sys_getdirentries(struct proc *, void *, register_t *);
int freebsd_sys_statfs(struct proc *, void *, register_t *);
int bsd_sys_statfs(struct proc *, void *, register_t *);
int sys_fstatfs(struct proc *, void *, register_t *);
#if defined(NFS) || defined(NFSSERVER) || !defined(_KERNEL)
int freebsd_sys_getfh(struct proc *, void *, register_t *);
int bsd_sys_getfh(struct proc *, void *, register_t *);
#else
#endif
int compat_09_sys_getdomainname(struct proc *, void *, register_t *);
@ -226,21 +396,21 @@ int compat_09_sys_setdomainname(struct proc *, void *, register_t *);
int sys_setgid(struct proc *, void *, register_t *);
int sys_setegid(struct proc *, void *, register_t *);
int sys_seteuid(struct proc *, void *, register_t *);
int freebsd_sys_stat(struct proc *, void *, register_t *);
int bsd_compat_12_sys_stat(struct proc *, void *, register_t *);
int compat_12_sys_fstat(struct proc *, void *, register_t *);
int freebsd_sys_lstat(struct proc *, void *, register_t *);
int freebsd_sys_pathconf(struct proc *, void *, register_t *);
int bsd_compat_12_sys_lstat(struct proc *, void *, register_t *);
int bsd_sys_pathconf(struct proc *, void *, register_t *);
int sys_fpathconf(struct proc *, void *, register_t *);
int sys_getrlimit(struct proc *, void *, register_t *);
int sys_setrlimit(struct proc *, void *, register_t *);
int compat_12_sys_getdirentries(struct proc *, void *, register_t *);
int sys_mmap(struct proc *, void *, register_t *);
int compat_43_sys_lseek(struct proc *, void *, register_t *);
int freebsd_sys_truncate(struct proc *, void *, register_t *);
int bsd_sys_truncate(struct proc *, void *, register_t *);
int sys_ftruncate(struct proc *, void *, register_t *);
int darwin_sys___sysctl(struct proc *, void *, register_t *);
int sys_mlock(struct proc *, void *, register_t *);
int sys_munlock(struct proc *, void *, register_t *);
int sys_undelete(struct proc *, void *, register_t *);
int bsd_sys_undelete(struct proc *, void *, register_t *);
int darwin_sys_load_shared_file(struct proc *, void *, register_t *);
#endif /* _DARWIN_SYS__SYSCALLARGS_H_ */

View File

@ -1,4 +1,4 @@
/* $NetBSD: darwin_syscalls.c,v 1.10 2002/11/25 22:26:21 manu Exp $ */
/* $NetBSD: darwin_syscalls.c,v 1.11 2002/12/08 00:50:27 manu Exp $ */
/*
* System call names.
@ -8,7 +8,7 @@
*/
#include <sys/cdefs.h>
__KERNEL_RCSID(0, "$NetBSD: darwin_syscalls.c,v 1.10 2002/11/25 22:26:21 manu Exp $");
__KERNEL_RCSID(0, "$NetBSD: darwin_syscalls.c,v 1.11 2002/12/08 00:50:27 manu Exp $");
#if defined(_KERNEL_OPT)
#include "opt_ktrace.h"
@ -24,9 +24,9 @@ __KERNEL_RCSID(0, "$NetBSD: darwin_syscalls.c,v 1.10 2002/11/25 22:26:21 manu Ex
#include <sys/signal.h>
#include <sys/mount.h>
#include <sys/syscallargs.h>
#include <compat/common/compat_file.h>
#include <compat/mach/mach_types.h>
#include <compat/mach/mach_vm.h>
#include <compat/freebsd/freebsd_syscallargs.h>
#include <compat/darwin/darwin_signal.h>
#include <compat/darwin/darwin_syscallargs.h>
#endif /* _KERNEL_OPT */
@ -133,7 +133,7 @@ const char *const darwin_syscallnames[] = {
"setpgid", /* 82 = setpgid */
"setitimer", /* 83 = setitimer */
"owait", /* 84 = owait */
"oswapon", /* 85 = oswapon */
"swapon", /* 85 = swapon */
"getitimer", /* 86 = getitimer */
"ogethostname", /* 87 = ogethostname */
"osethostname", /* 88 = osethostname */

View File

@ -1,4 +1,4 @@
/* $NetBSD: darwin_sysctl.c,v 1.3 2002/11/29 13:18:09 manu Exp $ */
/* $NetBSD: darwin_sysctl.c,v 1.4 2002/12/08 00:50:27 manu Exp $ */
/*-
* Copyright (c) 2002 The NetBSD Foundation, Inc.
@ -37,7 +37,7 @@
*/
#include <sys/cdefs.h>
__KERNEL_RCSID(0, "$NetBSD: darwin_sysctl.c,v 1.3 2002/11/29 13:18:09 manu Exp $");
__KERNEL_RCSID(0, "$NetBSD: darwin_sysctl.c,v 1.4 2002/12/08 00:50:27 manu Exp $");
#include <sys/types.h>
#include <sys/param.h>
@ -52,8 +52,6 @@ __KERNEL_RCSID(0, "$NetBSD: darwin_sysctl.c,v 1.3 2002/11/29 13:18:09 manu Exp $
#include <compat/mach/mach_types.h>
#include <compat/mach/mach_vm.h>
#include <compat/freebsd/freebsd_syscallargs.h>
#include <compat/darwin/darwin_sysctl.h>
#include <compat/darwin/darwin_syscallargs.h>

View File

@ -1,4 +1,4 @@
/* $NetBSD: darwin_sysent.c,v 1.10 2002/11/25 22:26:21 manu Exp $ */
/* $NetBSD: darwin_sysent.c,v 1.11 2002/12/08 00:50:27 manu Exp $ */
/*
* System call switch table.
@ -8,7 +8,7 @@
*/
#include <sys/cdefs.h>
__KERNEL_RCSID(0, "$NetBSD: darwin_sysent.c,v 1.10 2002/11/25 22:26:21 manu Exp $");
__KERNEL_RCSID(0, "$NetBSD: darwin_sysent.c,v 1.11 2002/12/08 00:50:27 manu Exp $");
#include "opt_ktrace.h"
#include "opt_nfsserver.h"
@ -23,9 +23,9 @@ __KERNEL_RCSID(0, "$NetBSD: darwin_sysent.c,v 1.10 2002/11/25 22:26:21 manu Exp
#include <sys/signal.h>
#include <sys/mount.h>
#include <sys/syscallargs.h>
#include <compat/common/compat_file.h>
#include <compat/mach/mach_types.h>
#include <compat/mach/mach_vm.h>
#include <compat/freebsd/freebsd_syscallargs.h>
#include <compat/darwin/darwin_signal.h>
#include <compat/darwin/darwin_syscallargs.h>
@ -42,30 +42,30 @@ struct sysent darwin_sysent[] = {
sys_read }, /* 3 = read */
{ 3, s(struct sys_write_args), 0,
sys_write }, /* 4 = write */
{ 3, s(struct freebsd_sys_open_args), 0,
freebsd_sys_open }, /* 5 = open */
{ 3, s(struct bsd_sys_open_args), 0,
bsd_sys_open }, /* 5 = open */
{ 1, s(struct sys_close_args), 0,
sys_close }, /* 6 = close */
{ 4, s(struct sys_wait4_args), 0,
sys_wait4 }, /* 7 = wait4 */
{ 2, s(struct compat_43_freebsd_sys_creat_args), 0,
compat_43_freebsd_sys_creat }, /* 8 = ocreat */
{ 2, s(struct freebsd_sys_link_args), 0,
freebsd_sys_link }, /* 9 = link */
{ 1, s(struct freebsd_sys_unlink_args), 0,
freebsd_sys_unlink }, /* 10 = unlink */
{ 2, s(struct bsd_compat_43_sys_creat_args), 0,
bsd_compat_43_sys_creat }, /* 8 = ocreat */
{ 2, s(struct bsd_sys_link_args), 0,
bsd_sys_link }, /* 9 = link */
{ 1, s(struct bsd_sys_unlink_args), 0,
bsd_sys_unlink }, /* 10 = unlink */
{ 0, 0, 0,
sys_nosys }, /* 11 = unimplemented execv */
{ 1, s(struct freebsd_sys_chdir_args), 0,
freebsd_sys_chdir }, /* 12 = chdir */
{ 1, s(struct bsd_sys_chdir_args), 0,
bsd_sys_chdir }, /* 12 = chdir */
{ 1, s(struct sys_fchdir_args), 0,
sys_fchdir }, /* 13 = fchdir */
{ 3, s(struct freebsd_sys_mknod_args), 0,
freebsd_sys_mknod }, /* 14 = mknod */
{ 2, s(struct freebsd_sys_chmod_args), 0,
freebsd_sys_chmod }, /* 15 = chmod */
{ 3, s(struct freebsd_sys_chown_args), 0,
freebsd_sys_chown }, /* 16 = chown */
{ 3, s(struct bsd_sys_mknod_args), 0,
bsd_sys_mknod }, /* 14 = mknod */
{ 2, s(struct bsd_sys_chmod_args), 0,
bsd_sys_chmod }, /* 15 = chmod */
{ 3, s(struct bsd_sys_chown_args), 0,
bsd_sys_chown }, /* 16 = chown */
{ 1, s(struct sys_obreak_args), 0,
sys_obreak }, /* 17 = break */
{ 3, s(struct sys_getfsstat_args), 0,
@ -79,10 +79,10 @@ struct sysent darwin_sysent[] = {
{ 0, 0, SYCALL_MPSAFE | 0,
sys_getpid }, /* 20 = getpid */
#endif
{ 4, s(struct sys_mount_args), 0,
sys_mount }, /* 21 = mount */
{ 2, s(struct sys_unmount_args), 0,
sys_unmount }, /* 22 = unmount */
{ 4, s(struct bsd_sys_mount_args), 0,
bsd_sys_mount }, /* 21 = mount */
{ 2, s(struct bsd_sys_unmount_args), 0,
bsd_sys_unmount }, /* 22 = unmount */
{ 1, s(struct sys_setuid_args), 0,
sys_setuid }, /* 23 = setuid */
#ifdef COMPAT_43
@ -108,22 +108,22 @@ struct sysent darwin_sysent[] = {
sys_getpeername }, /* 31 = getpeername */
{ 3, s(struct sys_getsockname_args), 0,
sys_getsockname }, /* 32 = getsockname */
{ 2, s(struct freebsd_sys_access_args), 0,
freebsd_sys_access }, /* 33 = access */
{ 2, s(struct freebsd_sys_chflags_args), 0,
freebsd_sys_chflags }, /* 34 = chflags */
{ 2, s(struct bsd_sys_access_args), 0,
bsd_sys_access }, /* 33 = access */
{ 2, s(struct bsd_sys_chflags_args), 0,
bsd_sys_chflags }, /* 34 = chflags */
{ 2, s(struct sys_fchflags_args), 0,
sys_fchflags }, /* 35 = fchflags */
{ 0, 0, 0,
sys_sync }, /* 36 = sync */
{ 2, s(struct sys_kill_args), 0,
sys_kill }, /* 37 = kill */
{ 2, s(struct compat_43_freebsd_sys_stat_args), 0,
compat_43_freebsd_sys_stat }, /* 38 = stat43 */
{ 2, s(struct bsd_compat_43_sys_stat_args), 0,
bsd_compat_43_sys_stat }, /* 38 = stat43 */
{ 0, 0, 0,
sys_getppid }, /* 39 = getppid */
{ 2, s(struct compat_43_freebsd_sys_lstat_args), 0,
compat_43_freebsd_sys_lstat }, /* 40 = lstat43 */
{ 2, s(struct bsd_compat_43_sys_lstat_args), 0,
bsd_compat_43_sys_lstat }, /* 40 = lstat43 */
{ 1, s(struct sys_dup_args), 0,
sys_dup }, /* 41 = dup */
{ 0, 0, 0,
@ -154,8 +154,8 @@ struct sysent darwin_sysent[] = {
sys___getlogin }, /* 49 = __getlogin */
{ 1, s(struct sys_setlogin_args), 0,
sys_setlogin }, /* 50 = setlogin */
{ 1, s(struct sys_acct_args), 0,
sys_acct }, /* 51 = acct */
{ 1, s(struct bsd_sys_acct_args), 0,
bsd_sys_acct }, /* 51 = acct */
{ 0, 0, 0,
compat_13_sys_sigpending }, /* 52 = sigpending13 */
{ 2, s(struct compat_13_sys_sigaltstack_args), 0,
@ -164,18 +164,18 @@ struct sysent darwin_sysent[] = {
sys_ioctl }, /* 54 = ioctl */
{ 1, s(struct sys_reboot_args), 0,
sys_reboot }, /* 55 = oreboot */
{ 1, s(struct freebsd_sys_revoke_args), 0,
freebsd_sys_revoke }, /* 56 = revoke */
{ 2, s(struct freebsd_sys_symlink_args), 0,
freebsd_sys_symlink }, /* 57 = symlink */
{ 3, s(struct freebsd_sys_readlink_args), 0,
freebsd_sys_readlink }, /* 58 = readlink */
{ 3, s(struct freebsd_sys_execve_args), 0,
freebsd_sys_execve }, /* 59 = execve */
{ 1, s(struct bsd_sys_revoke_args), 0,
bsd_sys_revoke }, /* 56 = revoke */
{ 2, s(struct bsd_sys_symlink_args), 0,
bsd_sys_symlink }, /* 57 = symlink */
{ 3, s(struct bsd_sys_readlink_args), 0,
bsd_sys_readlink }, /* 58 = readlink */
{ 3, s(struct bsd_sys_execve_args), 0,
bsd_sys_execve }, /* 59 = execve */
{ 1, s(struct sys_umask_args), 0,
sys_umask }, /* 60 = umask */
{ 1, s(struct freebsd_sys_chroot_args), 0,
freebsd_sys_chroot }, /* 61 = chroot */
{ 1, s(struct bsd_sys_chroot_args), 0,
bsd_sys_chroot }, /* 61 = chroot */
{ 2, s(struct compat_43_sys_fstat_args), 0,
compat_43_sys_fstat }, /* 62 = fstat43 */
{ 0, 0, 0,
@ -222,8 +222,8 @@ struct sysent darwin_sysent[] = {
sys_setitimer }, /* 83 = setitimer */
{ 0, 0, 0,
compat_43_sys_wait }, /* 84 = owait */
{ 1, s(struct compat_12_sys_swapon_args), 0,
compat_12_sys_swapon }, /* 85 = oswapon */
{ 1, s(struct bsd_compat_12_sys_swapon_args), 0,
bsd_compat_12_sys_swapon }, /* 85 = swapon */
{ 2, s(struct sys_getitimer_args), 0,
sys_getitimer }, /* 86 = getitimer */
{ 2, s(struct compat_43_sys_gethostname_args), 0,
@ -308,28 +308,28 @@ struct sysent darwin_sysent[] = {
sys_setreuid }, /* 126 = setreuid */
{ 2, s(struct sys_setregid_args), 0,
sys_setregid }, /* 127 = setregid */
{ 2, s(struct freebsd_sys_rename_args), 0,
freebsd_sys_rename }, /* 128 = rename */
{ 2, s(struct compat_43_freebsd_sys_truncate_args), 0,
compat_43_freebsd_sys_truncate }, /* 129 = otruncate */
{ 2, s(struct bsd_sys_rename_args), 0,
bsd_sys_rename }, /* 128 = rename */
{ 2, s(struct bsd_compat_43_sys_truncate_args), 0,
bsd_compat_43_sys_truncate }, /* 129 = otruncate */
{ 2, s(struct compat_43_sys_ftruncate_args), 0,
compat_43_sys_ftruncate }, /* 130 = oftruncate */
{ 2, s(struct sys_flock_args), 0,
sys_flock }, /* 131 = flock */
{ 2, s(struct freebsd_sys_mkfifo_args), 0,
freebsd_sys_mkfifo }, /* 132 = mkfifo */
{ 2, s(struct bsd_sys_mkfifo_args), 0,
bsd_sys_mkfifo }, /* 132 = mkfifo */
{ 6, s(struct sys_sendto_args), 0,
sys_sendto }, /* 133 = sendto */
{ 2, s(struct sys_shutdown_args), 0,
sys_shutdown }, /* 134 = shutdown */
{ 4, s(struct sys_socketpair_args), 0,
sys_socketpair }, /* 135 = socketpair */
{ 2, s(struct freebsd_sys_mkdir_args), 0,
freebsd_sys_mkdir }, /* 136 = mkdir */
{ 1, s(struct freebsd_sys_rmdir_args), 0,
freebsd_sys_rmdir }, /* 137 = rmdir */
{ 2, s(struct sys_utimes_args), 0,
sys_utimes }, /* 138 = utimes */
{ 2, s(struct bsd_sys_mkdir_args), 0,
bsd_sys_mkdir }, /* 136 = mkdir */
{ 1, s(struct bsd_sys_rmdir_args), 0,
bsd_sys_rmdir }, /* 137 = rmdir */
{ 2, s(struct bsd_sys_utimes_args), 0,
bsd_sys_utimes }, /* 138 = utimes */
{ 0, 0, 0,
sys_nosys }, /* 139 = unimplemented futimes */
{ 2, s(struct sys_adjtime_args), 0,
@ -371,8 +371,8 @@ struct sysent darwin_sysent[] = {
#endif
{ 4, s(struct compat_43_sys_getdirentries_args), 0,
compat_43_sys_getdirentries }, /* 156 = ogetdirentries */
{ 2, s(struct freebsd_sys_statfs_args), 0,
freebsd_sys_statfs }, /* 157 = statfs */
{ 2, s(struct bsd_sys_statfs_args), 0,
bsd_sys_statfs }, /* 157 = statfs */
{ 2, s(struct sys_fstatfs_args), 0,
sys_fstatfs }, /* 158 = fstatfs */
{ 0, 0, 0,
@ -380,8 +380,8 @@ struct sysent darwin_sysent[] = {
{ 0, 0, 0,
sys_nosys }, /* 160 = unimplemented */
#if defined(NFS) || defined(NFSSERVER) || !defined(_KERNEL)
{ 2, s(struct freebsd_sys_getfh_args), 0,
freebsd_sys_getfh }, /* 161 = getfh */
{ 2, s(struct bsd_sys_getfh_args), 0,
bsd_sys_getfh }, /* 161 = getfh */
#else
{ 0, 0, 0,
sys_nosys }, /* 161 = excluded getfh */
@ -438,14 +438,14 @@ struct sysent darwin_sysent[] = {
sys_nosys }, /* 186 = unimplemented */
{ 0, 0, 0,
sys_nosys }, /* 187 = unimplemented */
{ 2, s(struct freebsd_sys_stat_args), 0,
freebsd_sys_stat }, /* 188 = stat12 */
{ 2, s(struct bsd_compat_12_sys_stat_args), 0,
bsd_compat_12_sys_stat }, /* 188 = stat12 */
{ 2, s(struct compat_12_sys_fstat_args), 0,
compat_12_sys_fstat }, /* 189 = fstat */
{ 2, s(struct freebsd_sys_lstat_args), 0,
freebsd_sys_lstat }, /* 190 = lstat12 */
{ 2, s(struct freebsd_sys_pathconf_args), 0,
freebsd_sys_pathconf }, /* 191 = pathconf */
{ 2, s(struct bsd_compat_12_sys_lstat_args), 0,
bsd_compat_12_sys_lstat }, /* 190 = lstat12 */
{ 2, s(struct bsd_sys_pathconf_args), 0,
bsd_sys_pathconf }, /* 191 = pathconf */
{ 2, s(struct sys_fpathconf_args), 0,
sys_fpathconf }, /* 192 = fpathconf */
{ 0, 0, 0,
@ -462,8 +462,8 @@ struct sysent darwin_sysent[] = {
sys_nosys }, /* 198 = unimplemented */
{ 4, s(struct compat_43_sys_lseek_args), 0,
compat_43_sys_lseek }, /* 199 = lseek */
{ 3, s(struct freebsd_sys_truncate_args), 0,
freebsd_sys_truncate }, /* 200 = truncate */
{ 3, s(struct bsd_sys_truncate_args), 0,
bsd_sys_truncate }, /* 200 = truncate */
{ 3, s(struct sys_ftruncate_args), 0,
sys_ftruncate }, /* 201 = ftruncate */
{ 6, s(struct darwin_sys___sysctl_args), 0,
@ -472,8 +472,8 @@ struct sysent darwin_sysent[] = {
sys_mlock }, /* 203 = mlock */
{ 2, s(struct sys_munlock_args), 0,
sys_munlock }, /* 204 = munlock */
{ 1, s(struct sys_undelete_args), 0,
sys_undelete }, /* 205 = undelete */
{ 1, s(struct bsd_sys_undelete_args), 0,
bsd_sys_undelete }, /* 205 = undelete */
{ 0, 0, 0,
sys_nosys }, /* 206 = unimplemented atsocket */
{ 0, 0, 0,

View File

@ -1,4 +1,4 @@
# $NetBSD: files.darwin,v 1.6 2002/11/25 22:25:14 manu Exp $
# $NetBSD: files.darwin,v 1.7 2002/12/08 00:50:28 manu Exp $
#
# Config file description for machine-independent Darwin compat code.
# Included by ports that need it.
@ -11,4 +11,3 @@ file compat/darwin/darwin_mman.c compat_darwin
file compat/darwin/darwin_signal.c compat_darwin
file compat/darwin/darwin_sysent.c compat_darwin
file compat/darwin/darwin_sysctl.c compat_darwin
#file compat/freebsd/freebsd_file.c (in compat/freebsd/files.freebsd)

View File

@ -1,4 +1,4 @@
$NetBSD: syscalls.master,v 1.6 2002/11/25 22:25:14 manu Exp $
$NetBSD: syscalls.master,v 1.7 2002/12/08 00:50:28 manu Exp $
; @(#)syscalls.master 8.2 (Berkeley) 1/13/94
@ -53,11 +53,11 @@
#include <sys/mount.h>
#include <sys/syscallargs.h>
#include <compat/common/compat_file.h>
#include <compat/mach/mach_types.h>
#include <compat/mach/mach_vm.h>
#include <compat/freebsd/freebsd_syscallargs.h>
#include <compat/darwin/darwin_signal.h>
#include <compat/darwin/darwin_syscallargs.h>
@ -69,23 +69,23 @@
3 NOARGS { ssize_t sys_read(int fd, void *buf, size_t nbyte); }
4 NOARGS { ssize_t sys_write(int fd, const void *buf, \
size_t nbyte); }
5 NOARGS { int freebsd_sys_open(const char *path, \
5 NODEF { int bsd_sys_open(const char *path, \
int flags, ... mode_t mode); }
6 NOARGS { int sys_close(int fd); }
7 NOARGS { int sys_wait4(int pid, int *status, int options, \
struct rusage *rusage); }
8 NOARGS { int compat_43_freebsd_sys_creat(const char *path, \
8 NODEF { int bsd_compat_43_sys_creat(const char *path, \
mode_t mode); } ocreat
9 NOARGS { int freebsd_sys_link(const char *path, \
9 NODEF { int bsd_sys_link(const char *path, \
const char *link); }
10 NOARGS { int freebsd_sys_unlink(const char *path); }
10 NODEF { int bsd_sys_unlink(const char *path); }
11 UNIMPL execv
12 NOARGS { int freebsd_sys_chdir(const char *path); }
12 NODEF { int bsd_sys_chdir(const char *path); }
13 NOARGS { int sys_fchdir(int fd); }
14 NOARGS { int freebsd_sys_mknod(const char *path, \
14 NODEF { int bsd_sys_mknod(const char *path, \
mode_t mode, dev_t dev); }
15 NOARGS { int freebsd_sys_chmod(const char *path, mode_t mode); }
16 NOARGS { int freebsd_sys_chown(const char *path, uid_t uid, \
15 NODEF { int bsd_sys_chmod(const char *path, mode_t mode); }
16 NODEF { int bsd_sys_chown(const char *path, uid_t uid, \
gid_t gid); }
17 NOARGS { int sys_obreak(char *nsize); } break
18 NOARGS { int sys_getfsstat(struct statfs *buf, long bufsize, \
@ -97,9 +97,9 @@
#else
20 NOARGS MPSAFE { pid_t sys_getpid(void); }
#endif
21 NOARGS { int sys_mount(const char *type, const char *path, \
int flags, void *data); }
22 NOARGS { int sys_unmount(const char *path, int flags); }
21 NODEF { int bsd_sys_mount(const char *type, \
const char *path, int flags, void *data); }
22 NODEF { int bsd_sys_unmount(const char *path, int flags); }
23 NOARGS { int sys_setuid(uid_t uid); }
#ifdef COMPAT_43
24 NOARGS { uid_t sys_getuid_with_euid(void); } getuid
@ -122,17 +122,17 @@
unsigned int *alen); }
32 NOARGS { int sys_getsockname(int fdes, struct sockaddr *asa, \
unsigned int *alen); }
33 NOARGS { int freebsd_sys_access(const char *path, \
33 NODEF { int bsd_sys_access(const char *path, \
int flags); }
34 NOARGS { int freebsd_sys_chflags(const char *path, \
34 NODEF { int bsd_sys_chflags(const char *path, \
u_long flags); }
35 NOARGS { int sys_fchflags(int fd, u_long flags); }
36 NOARGS { void sys_sync(void); }
37 NOARGS { int sys_kill(int pid, int signum); }
38 NOARGS { int compat_43_freebsd_sys_stat(const char *path, \
38 NODEF { int bsd_compat_43_sys_stat(const char *path, \
struct stat43 *ub); } stat43
39 NOARGS { pid_t sys_getppid(void); }
40 NOARGS { int compat_43_freebsd_sys_lstat(const char *path, \
40 NODEF { int bsd_compat_43_sys_lstat(const char *path, \
struct stat43 *ub); } lstat43
41 NOARGS { int sys_dup(int fd); }
42 NOARGS { int sys_pipe(void); }
@ -157,7 +157,7 @@
int mask); } sigprocmask13
49 NOARGS { int sys___getlogin(char *namebuf, size_t namelen); }
50 NOARGS { int sys_setlogin(const char *namebuf); }
51 NOARGS { int sys_acct(const char *path); }
51 NODEF { int bsd_sys_acct(const char *path); }
52 NOARGS { int compat_13_sys_sigpending(void); } sigpending13
53 NOARGS { int compat_13_sys_sigaltstack( \
const struct sigaltstack13 *nss, \
@ -165,15 +165,15 @@
54 NOARGS { int sys_ioctl(int fd, \
u_long com, ... void *data); }
55 NOARGS { int sys_reboot(int opt); } oreboot
56 NOARGS { int freebsd_sys_revoke(const char *path); }
57 NOARGS { int freebsd_sys_symlink(const char *path, \
56 NODEF { int bsd_sys_revoke(const char *path); }
57 NODEF { int bsd_sys_symlink(const char *path, \
const char *link); }
58 NOARGS { int freebsd_sys_readlink(const char *path, \
58 NODEF { int bsd_sys_readlink(const char *path, \
char *buf, size_t count); }
59 NOARGS { int freebsd_sys_execve(const char *path, \
59 NODEF { int bsd_sys_execve(const char *path, \
char * const *argp, char * const *envp); }
60 NOARGS { mode_t sys_umask(mode_t newmask); }
61 NOARGS { int freebsd_sys_chroot(const char *path); }
61 NODEF { int bsd_sys_chroot(const char *path); }
62 NOARGS { int compat_43_sys_fstat(int fd, \
struct stat43 *sb); } fstat43
63 UNIMPL
@ -206,7 +206,7 @@
const struct itimerval *itv, \
struct itimerval *oitv); }
84 NOARGS { int compat_43_sys_wait(void); } owait
85 NOARGS { int compat_12_sys_swapon(const char *name); } oswapon
85 NODEF { int bsd_compat_12_sys_swapon(const char *name); }
86 NOARGS { int sys_getitimer(int which, \
struct itimerval *itv); }
87 NOARGS { int compat_43_sys_gethostname(char *hostname, \
@ -273,15 +273,15 @@
int *fromlenaddr); } orecvfrom
126 NOARGS { int sys_setreuid(uid_t ruid, uid_t euid); }
127 NOARGS { int sys_setregid(gid_t rgid, gid_t egid); }
128 NOARGS { int freebsd_sys_rename(const char *from, \
128 NODEF { int bsd_sys_rename(const char *from, \
const char *to); }
129 NOARGS { int compat_43_freebsd_sys_truncate(const \
129 NODEF { int bsd_compat_43_sys_truncate(const \
char *path, long length); } \
otruncate
130 NOARGS { int compat_43_sys_ftruncate(int fd, \
long length); } oftruncate
131 NOARGS { int sys_flock(int fd, int how); }
132 NOARGS { int freebsd_sys_mkfifo(const char *path, \
132 NODEF { int bsd_sys_mkfifo(const char *path, \
mode_t mode); }
133 NOARGS { ssize_t sys_sendto(int s, const void *buf, \
size_t len, int flags, const struct sockaddr *to, \
@ -289,9 +289,9 @@
134 NOARGS { int sys_shutdown(int s, int how); }
135 NOARGS { int sys_socketpair(int domain, int type, \
int protocol, int *rsv); }
136 NOARGS { int freebsd_sys_mkdir(const char *path, mode_t mode); }
137 NOARGS { int freebsd_sys_rmdir(const char *path); }
138 NOARGS { int sys_utimes(const char *path, \
136 NODEF { int bsd_sys_mkdir(const char *path, mode_t mode); }
137 NODEF { int bsd_sys_rmdir(const char *path); }
138 NODEF { int bsd_sys_utimes(const char *path, \
const struct timeval *tptr); }
139 UNIMPL futimes
140 NOARGS { int sys_adjtime(const struct timeval *delta, \
@ -322,13 +322,13 @@
#endif
156 NOARGS { int compat_43_sys_getdirentries(int fd, char *buf, \
u_int count, long *basep); } ogetdirentries
157 NOARGS { int freebsd_sys_statfs(const char *path, \
157 NODEF { int bsd_sys_statfs(const char *path, \
struct statfs *buf); }
158 NOARGS { int sys_fstatfs(int fd, struct statfs *buf); }
159 UNIMPL unmount
160 UNIMPL
#if defined(NFS) || defined(NFSSERVER) || !defined(_KERNEL)
161 NOARGS { int freebsd_sys_getfh(const char *fname, \
161 NODEF { int bsd_sys_getfh(const char *fname, \
fhandle_t *fhp); }
#else
161 EXCL getfh
@ -361,13 +361,13 @@
185 UNIMPL
186 UNIMPL
187 UNIMPL
188 NOARGS { int freebsd_sys_stat(const char *path, \
188 NODEF { int bsd_compat_12_sys_stat(const char *path, \
struct stat12 *ub); } stat12
189 NOARGS { int compat_12_sys_fstat(int fd, \
struct stat12 *sb); }
190 NOARGS { int freebsd_sys_lstat(const char *path, \
190 NODEF { int bsd_compat_12_sys_lstat(const char *path, \
struct stat12 *ub); } lstat12
191 NOARGS { long freebsd_sys_pathconf(const char *path, \
191 NODEF { long bsd_sys_pathconf(const char *path, \
int name); }
192 NOARGS { long sys_fpathconf(int fd, int name); }
193 UNIMPL getfsstat
@ -382,7 +382,7 @@
198 UNIMPL
199 NOARGS { off_t compat_43_sys_lseek(int fd, int pad, \
off_t offset, int whence); }
200 NOARGS { int freebsd_sys_truncate(const char *path, \
200 NODEF { int bsd_sys_truncate(const char *path, \
int pad, off_t length); }
201 NOARGS { int sys_ftruncate(int fd, int pad, off_t length); }
202 STD { int darwin_sys___sysctl(int *name, u_int namelen, \
@ -390,7 +390,7 @@
size_t newlen); }
203 NOARGS { int sys_mlock(const void *addr, size_t len); }
204 NOARGS { int sys_munlock(const void *addr, size_t len); }
205 NOARGS { int sys_undelete(const char *path); }
205 STD { int bsd_sys_undelete(const char *path); }
206 UNIMPL atsocket
207 UNIMPL atgetmsg
208 UNIMPL atputmsg