xref: /dflybsd-src/share/man/man9/VFS_SET.9 (revision b5cc5834005d1a424ffd3c2d8126115ca6af6dc1)
13dc6e51cSSascha Wildner.\"
23dc6e51cSSascha Wildner.\" Copyright (C) 2001 Chad David <davidc@acns.ab.ca>. All rights reserved.
33dc6e51cSSascha Wildner.\"
43dc6e51cSSascha Wildner.\" Redistribution and use in source and binary forms, with or without
53dc6e51cSSascha Wildner.\" modification, are permitted provided that the following conditions
63dc6e51cSSascha Wildner.\" are met:
73dc6e51cSSascha Wildner.\" 1. Redistributions of source code must retain the above copyright
83dc6e51cSSascha Wildner.\"    notice(s), this list of conditions and the following disclaimer as
93dc6e51cSSascha Wildner.\"    the first lines of this file unmodified other than the possible
103dc6e51cSSascha Wildner.\"    addition of one or more copyright notices.
113dc6e51cSSascha Wildner.\" 2. Redistributions in binary form must reproduce the above copyright
123dc6e51cSSascha Wildner.\"    notice(s), this list of conditions and the following disclaimer in the
133dc6e51cSSascha Wildner.\"    documentation and/or other materials provided with the distribution.
143dc6e51cSSascha Wildner.\"
153dc6e51cSSascha Wildner.\" THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDER(S) ``AS IS'' AND ANY
163dc6e51cSSascha Wildner.\" EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
173dc6e51cSSascha Wildner.\" WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
183dc6e51cSSascha Wildner.\" DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT HOLDER(S) BE LIABLE FOR ANY
193dc6e51cSSascha Wildner.\" DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
203dc6e51cSSascha Wildner.\" (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
213dc6e51cSSascha Wildner.\" SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
223dc6e51cSSascha Wildner.\" CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
233dc6e51cSSascha Wildner.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
243dc6e51cSSascha Wildner.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH
253dc6e51cSSascha Wildner.\" DAMAGE.
263dc6e51cSSascha Wildner.\"
273dc6e51cSSascha Wildner.\" $FreeBSD: src/share/man/man9/VFS_SET.9,v 1.12 2008/11/17 20:49:29 pjd Exp $
283dc6e51cSSascha Wildner.\"
293dc6e51cSSascha Wildner.Dd September 2, 2012
303dc6e51cSSascha Wildner.Dt VFS_SET 9
313dc6e51cSSascha Wildner.Os
323dc6e51cSSascha Wildner.Sh NAME
333dc6e51cSSascha Wildner.Nm VFS_SET
343dc6e51cSSascha Wildner.Nd set up loadable file system
353dc6e51cSSascha Wildner.Vt vfsconf
363dc6e51cSSascha Wildner.Sh SYNOPSIS
373dc6e51cSSascha Wildner.In sys/param.h
383dc6e51cSSascha Wildner.In sys/kernel.h
393dc6e51cSSascha Wildner.In sys/module.h
403dc6e51cSSascha Wildner.In sys/mount.h
413dc6e51cSSascha Wildner.Ft void
423dc6e51cSSascha Wildner.Fn VFS_SET "struct vfsops *vfsops" "fsname" "int flags"
433dc6e51cSSascha Wildner.Sh DESCRIPTION
443dc6e51cSSascha Wildner.Fn VFS_SET
453dc6e51cSSascha Wildnercreates a
463dc6e51cSSascha Wildner.Vt vfsconf
473dc6e51cSSascha Wildnerstructure for the loadable module with the given
483dc6e51cSSascha Wildner.Fa vfsops , fsname
493dc6e51cSSascha Wildnerand
503dc6e51cSSascha Wildner.Fa flags ,
513dc6e51cSSascha Wildnerand declares it by calling
523dc6e51cSSascha Wildner.Xr DECLARE_MODULE 9
533dc6e51cSSascha Wildnerusing
543dc6e51cSSascha Wildner.Fn vfs_modevent
553dc6e51cSSascha Wildneras the event handler.
563dc6e51cSSascha Wildner.Pp
573dc6e51cSSascha WildnerPossible values for the
583dc6e51cSSascha Wildner.Fa flags
593dc6e51cSSascha Wildnerargument are:
60*b5cc5834SSascha Wildner.Bl -hang -width ".Dv VFCF_SYNTHETIC"
613dc6e51cSSascha Wildner.It Dv VFCF_STATIC
623dc6e51cSSascha WildnerFile system should be statically available in the kernel.
633dc6e51cSSascha Wildner.It Dv VFCF_NETWORK
643dc6e51cSSascha WildnerNetwork exportable file system.
653dc6e51cSSascha Wildner.It Dv VFCF_READONLY
663dc6e51cSSascha WildnerDoes not support write operations.
673dc6e51cSSascha Wildner.It Dv VFCF_SYNTHETIC
683dc6e51cSSascha WildnerPseudo file system, data does not represent on-disk files.
693dc6e51cSSascha Wildner.It Dv VFCF_LOOPBACK
703dc6e51cSSascha WildnerLoopback file system layer.
713dc6e51cSSascha Wildner.It Dv VFCF_UNICODE
723dc6e51cSSascha WildnerFile names are stored as Unicode.
733dc6e51cSSascha Wildner.\".It Dv VFCF_JAIL
743dc6e51cSSascha Wildner.\"Can be mounted from within a jail if
753dc6e51cSSascha Wildner.\".Va security.jail.mount_allowed
763dc6e51cSSascha Wildner.\"sysctl is set to
773dc6e51cSSascha Wildner.\".Dv 1 .
783dc6e51cSSascha Wildner.\".It Dv VFCF_DELEGADMIN
793dc6e51cSSascha Wildner.\"Supports delegated administration if
803dc6e51cSSascha Wildner.\".Va vfs.usermount
813dc6e51cSSascha Wildner.\"sysctl is set to
823dc6e51cSSascha Wildner.\".Dv 1 .
833dc6e51cSSascha Wildner.El
843dc6e51cSSascha Wildner.Sh PSEUDOCODE
853dc6e51cSSascha Wildner.Bd -literal
863dc6e51cSSascha Wildner/*
873dc6e51cSSascha Wildner * fill in the ones we use, and use the vfs_std for the rest.
883dc6e51cSSascha Wildner */
893dc6e51cSSascha Wildnerstatic struct vfsops myfs_vfsops = {
903dc6e51cSSascha Wildner        myfs_mount,
913dc6e51cSSascha Wildner        vfs_stdstart,
923dc6e51cSSascha Wildner        myfs_unmount,
933dc6e51cSSascha Wildner        myfs_root,
943dc6e51cSSascha Wildner        vfs_stdquotactl,
953dc6e51cSSascha Wildner        myfs_statfs,
963dc6e51cSSascha Wildner        vfs_stdsync,
973dc6e51cSSascha Wildner        vfs_stdvget,
983dc6e51cSSascha Wildner        vfs_stdfhtovp,
993dc6e51cSSascha Wildner        vfs_stdcheckexp,
1003dc6e51cSSascha Wildner        vfs_stdvptofh,
1013dc6e51cSSascha Wildner        vfs_stdinit,
1023dc6e51cSSascha Wildner        vfs_stduninit,
1033dc6e51cSSascha Wildner        vfs_stdextattrctl,
1043dc6e51cSSascha Wildner};
1053dc6e51cSSascha Wildner
1063dc6e51cSSascha WildnerVFS_SET(myfs_vfsops, skelfs, 0);
1073dc6e51cSSascha Wildner.Ed
1083dc6e51cSSascha Wildner.Sh SEE ALSO
1093dc6e51cSSascha Wildner.\".Xr jail 2 ,
1103dc6e51cSSascha Wildner.\".Xr jail 8 ,
1113dc6e51cSSascha Wildner.Xr DECLARE_MODULE 9
1123dc6e51cSSascha Wildner.\".Xr vfsconf 9 ,
1133dc6e51cSSascha Wildner.\".Xr vfs_modevent 9
1143dc6e51cSSascha Wildner.Sh AUTHORS
1153dc6e51cSSascha WildnerThis manual page was written by
116c616d378SFranco Fichtner.An Chad David Aq Mt davidc@acns.ab.ca .
117