diff options
author | Todd C. Miller <millert@cvs.openbsd.org> | 1999-05-31 17:34:56 +0000 |
---|---|---|
committer | Todd C. Miller <millert@cvs.openbsd.org> | 1999-05-31 17:34:56 +0000 |
commit | bc8362e4ef1c185f7c1d9aec69d91f269c97d4e2 (patch) | |
tree | 9194d1773b772347d76766611948ee38e1002058 /sys/compat/freebsd/freebsd_syscallargs.h | |
parent | 7a1b6dcd69cb5defd76dca41d6f8252a3140fb91 (diff) |
New struct statfs with mount options. NOTE: this replaces statfs(2),
fstatfs(2), and getfsstat(2) so you will need to build a new kernel
before doing a "make build" or you will get "unimplemented syscall" errors.
The new struct statfs has the following featuires:
o Has a u_int32_t flags field--now softdep can have a real flag.
o Uses u_int32_t instead of longs (nicer on the alpha). Note: the man
page used to lie about setting invalid/unused fields to -1. SunOS does
that but our code never has.
o Gets rid of f_type completely. It hasn't been used since NetBSD 0.9
and having it there but always 0 is confusing. It is conceivable
that this may cause some old code to not compile but that is better
than silently breaking.
o Adds a mount_info union that contains the FSTYPE_args struct. This
means that "mount" can now tell you all the options a filesystem was
mounted with. This is especially nice for NFS.
Other changes:
o The linux statfs emulation didn't convert between BSD fs names
and linux f_type numbers. Now it does, since the BSD f_type
number is useless to linux apps (and has been removed anyway)
o FreeBSD's struct statfs is different from our (both old and new)
and thus needs conversion. Previously, the OpenBSD syscalls
were used without any real translation.
o mount(8) will now show extra info when invoked with no arguments.
However, to see *everything* you need to use the -v (verbose) flag.
Diffstat (limited to 'sys/compat/freebsd/freebsd_syscallargs.h')
-rw-r--r-- | sys/compat/freebsd/freebsd_syscallargs.h | 19 |
1 files changed, 15 insertions, 4 deletions
diff --git a/sys/compat/freebsd/freebsd_syscallargs.h b/sys/compat/freebsd/freebsd_syscallargs.h index 4772cd575cd..067f68ddbfa 100644 --- a/sys/compat/freebsd/freebsd_syscallargs.h +++ b/sys/compat/freebsd/freebsd_syscallargs.h @@ -1,4 +1,4 @@ -/* $OpenBSD: freebsd_syscallargs.h,v 1.9 1999/02/10 08:07:30 deraadt Exp $ */ +/* $OpenBSD: freebsd_syscallargs.h,v 1.10 1999/05/31 17:34:45 millert Exp $ */ /* * System call argument lists. @@ -50,6 +50,12 @@ struct freebsd_sys_chown_args { syscallarg(int) gid; }; +struct freebsd_sys_getfsstat_args { + syscallarg(struct freebsd_statfs *) buf; + syscallarg(long) bufsize; + syscallarg(int) flags; +}; + struct freebsd_sys_mount_args { syscallarg(int) type; syscallarg(char *) path; @@ -156,7 +162,12 @@ struct freebsd_sys_rmdir_args { struct freebsd_sys_statfs_args { syscallarg(char *) path; - syscallarg(struct statfs *) buf; + syscallarg(struct freebsd_statfs *) buf; +}; + +struct freebsd_sys_fstatfs_args { + syscallarg(int) fd; + syscallarg(struct freebsd_statfs *) buf; }; struct freebsd_sys_getfh_args { @@ -226,7 +237,7 @@ int freebsd_sys_mknod __P((struct proc *, void *, register_t *)); int freebsd_sys_chmod __P((struct proc *, void *, register_t *)); int freebsd_sys_chown __P((struct proc *, void *, register_t *)); int sys_obreak __P((struct proc *, void *, register_t *)); -int sys_getfsstat __P((struct proc *, void *, register_t *)); +int freebsd_sys_getfsstat __P((struct proc *, void *, register_t *)); int compat_43_sys_lseek __P((struct proc *, void *, register_t *)); int sys_getpid __P((struct proc *, void *, register_t *)); int freebsd_sys_mount __P((struct proc *, void *, register_t *)); @@ -362,7 +373,7 @@ int sys_nfssvc __P((struct proc *, void *, register_t *)); #endif int compat_43_sys_getdirentries __P((struct proc *, void *, register_t *)); int freebsd_sys_statfs __P((struct proc *, void *, register_t *)); -int sys_fstatfs __P((struct proc *, void *, register_t *)); +int freebsd_sys_fstatfs __P((struct proc *, void *, register_t *)); #ifdef NFSCLIENT int freebsd_sys_getfh __P((struct proc *, void *, register_t *)); #else |