+#define VFS_RETURNED 0 /* done with vnode, reference can be dropped */
+#define VFS_RETURNED_DONE 1 /* done with vnode, reference can be dropped, terminate iteration */
+#define VFS_CLAIMED 2 /* don't drop reference */
+#define VFS_CLAIMED_DONE 3 /* don't drop reference, terminate iteration */
+
+
+__BEGIN_DECLS
+/*
+ * prototypes for exported VFS operations
+ */
+extern int VFS_MOUNT(mount_t, vnode_t, user_addr_t, vfs_context_t);
+extern int VFS_START(mount_t, int, vfs_context_t);
+extern int VFS_UNMOUNT(mount_t, int, vfs_context_t);
+extern int VFS_ROOT(mount_t, vnode_t *, vfs_context_t);
+extern int VFS_QUOTACTL(mount_t, int, uid_t, caddr_t, vfs_context_t);
+extern int VFS_GETATTR(mount_t, struct vfs_attr *, vfs_context_t);
+extern int VFS_SETATTR(mount_t, struct vfs_attr *, vfs_context_t);
+extern int VFS_SYNC(mount_t, int, vfs_context_t);
+extern int VFS_VGET(mount_t, ino64_t, vnode_t *, vfs_context_t);
+extern int VFS_FHTOVP(mount_t, int, unsigned char *, vnode_t *, vfs_context_t);
+extern int VFS_VPTOFH(vnode_t, int *, unsigned char *, vfs_context_t);
+
+/* The file system registrartion KPI */
+int vfs_fsadd(struct vfs_fsentry *, vfstable_t *);
+int vfs_fsremove(vfstable_t);
+int vfs_iterate(int, int (*)(struct mount *, void *), void *);
+
+uint64_t vfs_flags(mount_t);
+void vfs_setflags(mount_t, uint64_t);
+void vfs_clearflags(mount_t, uint64_t);
+
+int vfs_issynchronous(mount_t);
+int vfs_iswriteupgrade(mount_t);
+int vfs_isupdate(mount_t);
+int vfs_isreload(mount_t);
+int vfs_isforce(mount_t);
+int vfs_isrdonly(mount_t);
+int vfs_isrdwr(mount_t);
+int vfs_authopaque(mount_t);
+int vfs_authopaqueaccess(mount_t);
+void vfs_setauthopaque(mount_t);
+void vfs_setauthopaqueaccess(mount_t);
+void vfs_clearauthopaque(mount_t);
+void vfs_clearauthopaqueaccess(mount_t);
+int vfs_extendedsecurity(mount_t);
+void vfs_setextendedsecurity(mount_t);
+void vfs_clearextendedsecurity(mount_t);
+void vfs_setlocklocal(mount_t);
+int vfs_authcache_ttl(mount_t);
+void vfs_setauthcache_ttl(mount_t, int);
+void vfs_clearauthcache_ttl(mount_t);
+void vfs_markdependency(mount_t);