1 /* 2 * Copyright (c) 2000-2004 Apple Computer, Inc. All rights reserved. 3 * 4 * @APPLE_OSREFERENCE_LICENSE_HEADER_START@ 5 * 6 * This file contains Original Code and/or Modifications of Original Code 7 * as defined in and that are subject to the Apple Public Source License 8 * Version 2.0 (the 'License'). You may not use this file except in 9 * compliance with the License. The rights granted to you under the License 10 * may not be used to create, or enable the creation or redistribution of, 11 * unlawful or unlicensed copies of an Apple operating system, or to 12 * circumvent, violate, or enable the circumvention or violation of, any 13 * terms of an Apple operating system software license agreement. 14 * 15 * Please obtain a copy of the License at 16 * http://www.opensource.apple.com/apsl/ and read it before using this file. 17 * 18 * The Original Code and all software distributed under the License are 19 * distributed on an 'AS IS' basis, WITHOUT WARRANTY OF ANY KIND, EITHER 20 * EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES, 21 * INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY, 22 * FITNESS FOR A PARTICULAR PURPOSE, QUIET ENJOYMENT OR NON-INFRINGEMENT. 23 * Please see the License for the specific language governing rights and 24 * limitations under the License. 25 * 26 * @APPLE_OSREFERENCE_LICENSE_HEADER_END@ 27 */ 28 /* 29 * Copyright (c) 1998 Apple Computer, Inc. All rights reserved. 30 * 31 * File: vfs/vfs_support.h 32 * 33 * Prototypes for the default vfs routines. A VFS plugin can use these 34 * functions in case it does not want to implement all. These functions 35 * take care of releasing locks and free up memory that they are 36 * supposed to. 37 * 38 * HISTORY 39 * 18-Aug-1998 Umesh Vaishampayan ([email protected]) 40 * Created. 41 */ 42 43 #ifndef _VFS_VFS_SUPPORT_H_ 44 #define _VFS_VFS_SUPPORT_H_ 45 46 #include <sys/cdefs.h> 47 #include <sys/param.h> 48 #include <sys/systm.h> 49 #include <sys/kernel.h> 50 #include <sys/file.h> 51 #include <sys/stat.h> 52 #include <sys/proc.h> 53 #include <sys/conf.h> 54 #include <sys/mount.h> 55 #include <sys/vnode.h> 56 #include <sys/vnode_if.h> 57 #include <sys/malloc.h> 58 #include <sys/dirent.h> 59 60 __BEGIN_DECLS 61 extern int nop_create(struct vnop_create_args *ap); 62 extern int err_create(struct vnop_create_args *ap); 63 64 extern int nop_whiteout(struct vnop_whiteout_args *ap); 65 extern int err_whiteout(struct vnop_whiteout_args *ap); 66 67 extern int nop_mknod(struct vnop_mknod_args *ap); 68 extern int err_mknod(struct vnop_mknod_args *ap); 69 70 extern int nop_open(struct vnop_open_args *ap); 71 extern int err_open(struct vnop_open_args *ap); 72 73 extern int nop_close(struct vnop_close_args *ap); 74 extern int err_close(struct vnop_close_args *ap); 75 76 extern int nop_access(struct vnop_access_args *ap); 77 extern int err_access(struct vnop_access_args *ap); 78 79 extern int nop_getattr(struct vnop_getattr_args *ap); 80 extern int err_getattr(struct vnop_getattr_args *ap); 81 82 extern int nop_setattr(struct vnop_setattr_args *ap); 83 extern int err_setattr(struct vnop_setattr_args *ap); 84 85 extern int nop_read(struct vnop_read_args *ap); 86 extern int err_read(struct vnop_read_args *ap); 87 88 extern int nop_write(struct vnop_write_args *ap); 89 extern int err_write(struct vnop_write_args *ap); 90 91 extern int nop_ioctl(struct vnop_ioctl_args *ap); 92 extern int err_ioctl(struct vnop_ioctl_args *ap); 93 94 extern int nop_select(struct vnop_select_args *ap); 95 extern int err_select(struct vnop_select_args *ap); 96 97 extern int nop_exchange(struct vnop_exchange_args *ap); 98 extern int err_exchange(struct vnop_exchange_args *ap); 99 100 extern int nop_revoke(struct vnop_revoke_args *ap); 101 extern int err_revoke(struct vnop_revoke_args *ap); 102 103 extern int nop_mmap(struct vnop_mmap_args *ap); 104 extern int err_mmap(struct vnop_mmap_args *ap); 105 106 extern int nop_fsync(struct vnop_fsync_args *ap); 107 extern int err_fsync(struct vnop_fsync_args *ap); 108 109 extern int nop_remove(struct vnop_remove_args *ap); 110 extern int err_remove(struct vnop_remove_args *ap); 111 112 extern int nop_link(struct vnop_link_args *ap); 113 extern int err_link(struct vnop_link_args *ap); 114 115 extern int nop_rename(struct vnop_rename_args *ap); 116 extern int err_rename(struct vnop_rename_args *ap); 117 118 extern int nop_mkdir(struct vnop_mkdir_args *ap); 119 extern int err_mkdir(struct vnop_mkdir_args *ap); 120 121 extern int nop_rmdir(struct vnop_rmdir_args *ap); 122 extern int err_rmdir(struct vnop_rmdir_args *ap); 123 124 extern int nop_symlink(struct vnop_symlink_args *ap); 125 extern int err_symlink(struct vnop_symlink_args *ap); 126 127 extern int nop_readdir(struct vnop_readdir_args *ap); 128 extern int err_readdir(struct vnop_readdir_args *ap); 129 130 extern int nop_readdirattr(struct vnop_readdirattr_args *ap); 131 extern int err_readdirattr(struct vnop_readdirattr_args *ap); 132 133 extern int nop_readlink(struct vnop_readlink_args *ap); 134 extern int err_readlink(struct vnop_readlink_args *ap); 135 136 extern int nop_inactive(struct vnop_inactive_args *ap); 137 extern int err_inactive(struct vnop_inactive_args *ap); 138 139 extern int nop_reclaim(struct vnop_reclaim_args *ap); 140 extern int err_reclaim(struct vnop_reclaim_args *ap); 141 142 143 extern int nop_strategy(struct vnop_strategy_args *ap); 144 extern int err_strategy(struct vnop_strategy_args *ap); 145 146 extern int nop_pathconf(struct vnop_pathconf_args *ap); 147 extern int err_pathconf(struct vnop_pathconf_args *ap); 148 149 extern int nop_advlock(struct vnop_advlock_args *ap); 150 extern int err_advlock(struct vnop_advlock_args *ap); 151 152 153 extern int nop_allocate(struct vnop_allocate_args *ap); 154 extern int err_allocate(struct vnop_allocate_args *ap); 155 156 extern int nop_bwrite(struct vnop_bwrite_args *ap); 157 extern int err_bwrite(struct vnop_bwrite_args *ap); 158 159 extern int nop_pagein(struct vnop_pagein_args *ap); 160 extern int err_pagein(struct vnop_pagein_args *ap); 161 162 extern int nop_pageout(struct vnop_pageout_args *ap); 163 extern int err_pageout(struct vnop_pageout_args *ap); 164 165 extern int nop_searchfs(struct vnop_searchfs_args *ap); 166 extern int err_searchfs(struct vnop_searchfs_args *ap); 167 168 extern int nop_copyfile(struct vnop_copyfile_args *ap); 169 extern int err_copyfile(struct vnop_copyfile_args *ap); 170 171 extern int nop_blktooff(struct vnop_blktooff_args *ap); 172 extern int err_blktooff(struct vnop_blktooff_args *ap); 173 174 extern int nop_offtoblk(struct vnop_offtoblk_args *ap); 175 extern int err_offtoblk(struct vnop_offtoblk_args *ap); 176 177 extern int nop_blockmap(struct vnop_blockmap_args *ap); 178 extern int err_blockmap(struct vnop_blockmap_args *ap); 179 __END_DECLS 180 181 #endif /* _VFS_VFS_SUPPORT_H_ */ 182