/*
* This file and its contents are supplied under the terms of the
* Common Development and Distribution License ("CDDL"), version 1.0.
* You may only use this file in accordance with the terms of version
* 1.0 of the CDDL.
*
* A full copy of the text of the CDDL should have accompanied this
* source. A copy of the CDDL is also available via the Internet at
*/
/*
* Copyright (c) 2014 Joyent, Inc. All rights reserved.
*/
#ifndef _SYS_FS_BOOTFS_IMPL_H
#define _SYS_FS_BOOTFS_IMPL_H
#include <sys/vfs_opreg.h>
#ifdef __cplusplus
extern "C" {
#endif
/*
* The bootfs node is the file system specific version of the vnode for the
* bootfs file system. Because the bootfs file system is entirely a read-only
* file system, this structure requires no locking as the contents are
* immutable.
*/
typedef struct bootfs_node {
typedef struct bootfs_stat {
typedef struct bootfs {
char *bfs_mntpath;
} bootfs_t;
extern void bootfs_construct(bootfs_t *);
extern void bootfs_destruct(bootfs_t *);
extern int bootfs_node_constructor(void *, void *, int);
extern void bootfs_node_destructor(void *, void *);
extern struct vnodeops *bootfs_vnodeops;
extern const fs_operation_def_t bootfs_vnodeops_template[];
extern kmem_cache_t *bootfs_node_cache;
extern major_t bootfs_major;
#ifdef __cplusplus
}
#endif
#endif /* _SYS_FS_BOOTFS_IMPL_H */