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
.
VFCF_SBDRY
- When in VFS method, the thread suspension is deferred to the user boundary
upon arrival of stop action.
PSEUDOCODE¶
/*
* Fill in the fields for which we have special methods.
* The others are initially null. This tells vfs to change them to
* pointers to vfs_std* functions during file system registration.
*/
static struct vfsops myfs_vfsops = {
.vfs_mount = myfs_mount,
.vfs_root = myfs_root,
.vfs_statfs = myfs_statfs,
.vfs_unmount = myfs_unmount,
};
VFS_SET(myfs_vfsops, myfs, 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⟩.