The Design and Implementation of the FreeBSD Operating System, Second Edition
Now available: The Design and Implementation of the FreeBSD Operating System (Second Edition)


[ source navigation ] [ diff markup ] [ identifier search ] [ freetext search ] [ file search ] [ list types ] [ track identifier ]

FreeBSD/Linux Kernel Cross Reference
sys/sys/vfs_syscalls.h

Version: -  FREEBSD  -  FREEBSD-13-STABLE  -  FREEBSD-13-0  -  FREEBSD-12-STABLE  -  FREEBSD-12-0  -  FREEBSD-11-STABLE  -  FREEBSD-11-0  -  FREEBSD-10-STABLE  -  FREEBSD-10-0  -  FREEBSD-9-STABLE  -  FREEBSD-9-0  -  FREEBSD-8-STABLE  -  FREEBSD-8-0  -  FREEBSD-7-STABLE  -  FREEBSD-7-0  -  FREEBSD-6-STABLE  -  FREEBSD-6-0  -  FREEBSD-5-STABLE  -  FREEBSD-5-0  -  FREEBSD-4-STABLE  -  FREEBSD-3-STABLE  -  FREEBSD22  -  l41  -  OPENBSD  -  linux-2.6  -  MK84  -  PLAN9  -  xnu-8792 
SearchContext: -  none  -  3  -  10 

    1 /*     $NetBSD: vfs_syscalls.h,v 1.29 2021/11/07 13:47:49 christos Exp $        */
    2 
    3 /*
    4  * Copyright (c) 2007, 2008, 2009 The NetBSD Foundation, Inc.
    5  * All rights reserved.
    6  *
    7  * Redistribution and use in source and binary forms, with or without
    8  * modification, are permitted provided that the following conditions
    9  * are met:
   10  * 1. Redistributions of source code must retain the above copyright
   11  *    notice, this list of conditions and the following disclaimer.
   12  * 2. Redistributions in binary form must reproduce the above copyright
   13  *    notice, this list of conditions and the following disclaimer in the
   14  *    documentation and/or other materials provided with the distribution.
   15  *
   16  * THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. AND CONTRIBUTORS
   17  * ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
   18  * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
   19  * PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE FOUNDATION OR CONTRIBUTORS
   20  * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
   21  * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
   22  * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
   23  * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
   24  * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
   25  * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
   26  * POSSIBILITY OF SUCH DAMAGE.
   27  */
   28 
   29 #ifndef _SYS_VFS_SYSCALLS_H_
   30 #define _SYS_VFS_SYSCALLS_H_
   31 
   32 #include <sys/types.h>
   33 #include <sys/fstypes.h>
   34 
   35 struct stat;
   36 struct statvfs;
   37 struct quotactl_args;
   38 
   39 /*
   40  * syscall helpers for compat code.
   41  */
   42 
   43 /* Status functions to kernel 'struct stat' buffers */
   44 int do_sys_stat(const char *, unsigned int, struct stat *);
   45 int do_sys_statat(struct lwp *, int, const char *, unsigned int, struct stat *);
   46 int do_fhstat(struct lwp *, const void *, size_t, struct stat *);
   47 int do_fhstatvfs(struct lwp *, const void *, size_t, struct statvfs *, int);
   48 
   49 /* VFS status functions to kernel buffers */
   50 int do_sys_pstatvfs(struct lwp *, const char *, int, struct statvfs *);
   51 int do_sys_fstatvfs(struct lwp *, int, int, struct statvfs *);
   52 /* VFS status - call copyfn() for each entry */
   53 int do_sys_getvfsstat(struct lwp *, void *, size_t, int, int (*)(const void *, void *, size_t), size_t, register_t *);
   54 
   55 int do_sys_utimes(struct lwp *, struct vnode *, const char *, int,
   56     const struct timeval *, enum uio_seg);
   57 int do_sys_utimens(struct lwp *, struct vnode *, const char *, int,
   58     const struct timespec *, enum uio_seg);
   59 int do_sys_utimensat(struct lwp *, int, struct vnode *, const char *, int,
   60     const struct timespec *, enum uio_seg);
   61 
   62 struct pathbuf;
   63 int do_open(struct lwp *, struct vnode *, struct pathbuf *, int, int, int *);
   64 
   65 int     vfs_copyinfh_alloc(const void *, size_t, fhandle_t **);
   66 void    vfs_copyinfh_free(fhandle_t *);
   67 
   68 int dofhopen(struct lwp *, const void *, size_t, int, register_t *);
   69 
   70 int     do_sys_linkat(struct lwp *, int, const char *, int, const char *, int, register_t *);
   71 int     do_sys_unlink(const char *, enum uio_seg);
   72 int     do_sys_rename(const char *, const char *, enum uio_seg, int);
   73 int     do_posix_mknodat(struct lwp *, int, const char *, mode_t, dev_t);
   74 int     do_sys_mknod(struct lwp *, const char *, mode_t, dev_t, enum uio_seg);
   75 int     do_sys_mknodat(struct lwp *, int, const char *, mode_t, dev_t, enum uio_seg);
   76 int     do_sys_chmodat(struct lwp *, int, const char *, int, int);
   77 int     do_sys_chownat(struct lwp *, int, const char *, uid_t, gid_t, int);
   78 int     do_sys_accessat(struct lwp *, int, const char *, int ,int);
   79 int     do_sys_mkdir(const char *, mode_t, enum uio_seg);
   80 int     do_sys_symlink(const char *, const char *, enum uio_seg);
   81 int     do_sys_quotactl(const char *, const struct quotactl_args *);
   82 void    do_sys_sync(struct lwp *);
   83 int     do_sys_chdir(struct lwp *, const char *, enum uio_seg, register_t *);
   84 int     do_sys_fchdir(struct lwp *, int, register_t *);
   85 int     vfs_syncwait(void);
   86 
   87 int     chdir_lookup(const char *, int, struct vnode **, struct lwp *);
   88 void    change_root(struct vnode *);
   89 
   90 extern const char *const mountcompatnames[];
   91 extern const u_int nmountcompatnames;
   92 
   93 #endif /* _SYS_VFS_SYSCALLS_H_ */

Cache object: d715be57e4d4b9124c6cd7a0a3dc7126


[ source navigation ] [ diff markup ] [ identifier search ] [ freetext search ] [ file search ] [ list types ] [ track identifier ]


This page is part of the FreeBSD/Linux Linux Kernel Cross-Reference, and was automatically generated using a modified version of the LXR engine.