VFS_SET(9)

NAME
VFS_SET - set up loadable file system vfsconf

SYNOPSIS
#include <sys/param.h>
#include <sys/kernel.h>
#include <sys/module.h>
#include <sys/mount.h>
void
VFS_SET(struct vfsops *vfsops, fsname, int flags);

DESCRIPTION
VFS_SET() creates a vfsconf structure for the loadable module with the given vfsops, fsname and flags, and declares it by calling DECLARE_MODULE(9) using vfs_modevent() as the event handler.

Possible values for the flags argument are:

VFCF_STATIC
    File system should be statically available in the kernel.

VFCF_NETWORK
    Network exportable file system.

VFCF_READONLY
    Does not support write operations.

VFCF_SYNTHETIC
    Pseudo file system, data does not represent on-disk files.

VFCF_LOOPBACK
    Loopback file system layer.

VFCF_UNICODE
    File names are stored as Unicode.

VFCF_JAIL
    Can be mounted from within a jail if security.jail.mount_allowed sysctl is set to 1.

VFCF_DELEGADMIN
    Supports delegated administration if vfs.usermount sysctl is set to 1.

PSEUDOCODE

    /*
     * fill in the ones we use, and use the vfs_std for the rest.
     */
    static struct vfsops myfs_vfsops = {
            myfs_mount,
            vfs_stdstart,
            myfs_unmount,
            myfs_root,
            vfs_stdquotactl,
            myfs_statfs,
            vfs_stdsync,
            vfs_stdvget,
            vfs_stdfhtovp,
            vfs_stdcheckexp,
            vfs_stdvptofh,
            vfs_stdinit,
            vfs_stduninit,
            vfs_stdextattrctl,
    };
    VFS_SET(myfs_vfsops, skelfs, 0);

SEE ALSO
jail(2), jail(8), DECLARE_MODULE(9), vfsconf(9), vfs_modevent(9)

AUTHORS
This manual page was written by Chad David <davidc@acns.ab.ca>.