cd9660_vnops.c (29888) | cd9660_vnops.c (30431) |
---|---|
1/*- 2 * Copyright (c) 1994 3 * The Regents of the University of California. All rights reserved. 4 * 5 * This code is derived from software contributed to Berkeley 6 * by Pace Willisson (pace@blitz.com). The Rock Ridge Extension 7 * Support code is derived from software contributed to Berkeley 8 * by Atsushi Murai (amurai@spec.co.jp). --- 22 unchanged lines hidden (view full) --- 31 * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS 32 * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) 33 * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT 34 * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY 35 * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF 36 * SUCH DAMAGE. 37 * 38 * @(#)cd9660_vnops.c 8.19 (Berkeley) 5/27/95 | 1/*- 2 * Copyright (c) 1994 3 * The Regents of the University of California. All rights reserved. 4 * 5 * This code is derived from software contributed to Berkeley 6 * by Pace Willisson (pace@blitz.com). The Rock Ridge Extension 7 * Support code is derived from software contributed to Berkeley 8 * by Atsushi Murai (amurai@spec.co.jp). --- 22 unchanged lines hidden (view full) --- 31 * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS 32 * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) 33 * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT 34 * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY 35 * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF 36 * SUCH DAMAGE. 37 * 38 * @(#)cd9660_vnops.c 8.19 (Berkeley) 5/27/95 |
39 * $Id: cd9660_vnops.c,v 1.39 1997/09/21 04:22:40 dyson Exp $ | 39 * $Id: cd9660_vnops.c,v 1.40 1997/09/27 13:38:51 kato Exp $ |
40 */ 41 42#include <sys/param.h> 43#include <sys/systm.h> 44#include <sys/namei.h> 45#include <sys/kernel.h> 46#include <sys/stat.h> 47#include <sys/sysctl.h> --- 942 unchanged lines hidden (view full) --- 990#define cd9660_bwrite \ 991 ((int (*) __P((struct vop_bwrite_args *)))eopnotsupp) 992 993/* 994 * Global vfs data structures for cd9660 995 */ 996vop_t **cd9660_vnodeop_p; 997struct vnodeopv_entry_desc cd9660_vnodeop_entries[] = { | 40 */ 41 42#include <sys/param.h> 43#include <sys/systm.h> 44#include <sys/namei.h> 45#include <sys/kernel.h> 46#include <sys/stat.h> 47#include <sys/sysctl.h> --- 942 unchanged lines hidden (view full) --- 990#define cd9660_bwrite \ 991 ((int (*) __P((struct vop_bwrite_args *)))eopnotsupp) 992 993/* 994 * Global vfs data structures for cd9660 995 */ 996vop_t **cd9660_vnodeop_p; 997struct vnodeopv_entry_desc cd9660_vnodeop_entries[] = { |
998 999 { &vop_default_desc, (vop_t *)vn_default_error }, 1000 { &vop_lookup_desc, (vop_t *)vfs_cache_lookup }, /* lookup */ 1001 { &vop_cachedlookup_desc, (vop_t *)cd9660_lookup }, /* lookup */ 1002 { &vop_create_desc, (vop_t *)cd9660_create }, /* create */ 1003/* XXX: vop_whiteout */ 1004 { &vop_mknod_desc, (vop_t *)cd9660_mknod }, /* mknod */ 1005 { &vop_open_desc, (vop_t *)cd9660_open }, /* open */ 1006 { &vop_close_desc, (vop_t *)cd9660_close }, /* close */ 1007 { &vop_access_desc, (vop_t *)cd9660_access }, /* access */ 1008 { &vop_getattr_desc, (vop_t *)cd9660_getattr }, /* getattr */ 1009 { &vop_setattr_desc, (vop_t *)cd9660_setattr }, /* setattr */ 1010 { &vop_read_desc, (vop_t *)cd9660_read }, /* read */ 1011 { &vop_write_desc, (vop_t *)cd9660_write }, /* write */ 1012 { &vop_lease_desc, (vop_t *)cd9660_lease_check },/* lease */ 1013 { &vop_ioctl_desc, (vop_t *)cd9660_ioctl }, /* ioctl */ 1014 { &vop_poll_desc, (vop_t *)cd9660_poll }, /* poll */ 1015 { &vop_revoke_desc, (vop_t *)cd9660_revoke }, /* revoke */ 1016 { &vop_mmap_desc, (vop_t *)cd9660_mmap }, /* mmap */ 1017 { &vop_fsync_desc, (vop_t *)cd9660_fsync }, /* fsync */ 1018 { &vop_seek_desc, (vop_t *)cd9660_seek }, /* seek */ 1019 { &vop_remove_desc, (vop_t *)cd9660_remove }, /* remove */ 1020 { &vop_link_desc, (vop_t *)cd9660_link }, /* link */ 1021 { &vop_rename_desc, (vop_t *)cd9660_rename }, /* rename */ 1022 { &vop_mkdir_desc, (vop_t *)cd9660_mkdir }, /* mkdir */ 1023 { &vop_rmdir_desc, (vop_t *)cd9660_rmdir }, /* rmdir */ 1024 { &vop_symlink_desc, (vop_t *)cd9660_symlink }, /* symlink */ 1025 { &vop_readdir_desc, (vop_t *)cd9660_readdir }, /* readdir */ 1026 { &vop_readlink_desc, (vop_t *)cd9660_readlink },/* readlink */ 1027 { &vop_abortop_desc, (vop_t *)cd9660_abortop }, /* abortop */ 1028 { &vop_inactive_desc, (vop_t *)cd9660_inactive },/* inactive */ 1029 { &vop_reclaim_desc, (vop_t *)cd9660_reclaim }, /* reclaim */ 1030 { &vop_lock_desc, (vop_t *)cd9660_lock }, /* lock */ 1031 { &vop_unlock_desc, (vop_t *)cd9660_unlock }, /* unlock */ 1032 { &vop_bmap_desc, (vop_t *)cd9660_bmap }, /* bmap */ 1033 { &vop_strategy_desc, (vop_t *)cd9660_strategy },/* strategy */ 1034 { &vop_print_desc, (vop_t *)cd9660_print }, /* print */ 1035 { &vop_islocked_desc, (vop_t *)cd9660_islocked },/* islocked */ 1036 { &vop_pathconf_desc, (vop_t *)cd9660_pathconf },/* pathconf */ 1037 { &vop_advlock_desc, (vop_t *)cd9660_advlock }, /* advlock */ 1038 { &vop_blkatoff_desc, (vop_t *)cd9660_blkatoff },/* blkatoff */ 1039 { &vop_valloc_desc, (vop_t *)cd9660_valloc }, /* valloc */ 1040/* XXX: vop_reallocblks */ 1041 { &vop_vfree_desc, (vop_t *)cd9660_vfree }, /* vfree */ 1042 { &vop_truncate_desc, (vop_t *)cd9660_truncate },/* truncate */ 1043 { &vop_update_desc, (vop_t *)cd9660_update }, /* update */ 1044/* XXX: vop_getpages */ 1045/* XXX: vop_putpages */ 1046 { &vop_bwrite_desc, (vop_t *)vn_bwrite }, | 998 { &vop_default_desc, (vop_t *) vn_default_error }, 999 { &vop_abortop_desc, (vop_t *) cd9660_abortop }, 1000 { &vop_access_desc, (vop_t *) cd9660_access }, 1001 { &vop_advlock_desc, (vop_t *) cd9660_advlock }, 1002 { &vop_blkatoff_desc, (vop_t *) cd9660_blkatoff }, 1003 { &vop_bmap_desc, (vop_t *) cd9660_bmap }, 1004 { &vop_bwrite_desc, (vop_t *) vn_bwrite }, 1005 { &vop_cachedlookup_desc, (vop_t *) cd9660_lookup }, 1006 { &vop_close_desc, (vop_t *) cd9660_close }, 1007 { &vop_create_desc, (vop_t *) cd9660_create }, 1008 { &vop_fsync_desc, (vop_t *) cd9660_fsync }, 1009 { &vop_getattr_desc, (vop_t *) cd9660_getattr }, 1010 { &vop_inactive_desc, (vop_t *) cd9660_inactive }, 1011 { &vop_ioctl_desc, (vop_t *) cd9660_ioctl }, 1012 { &vop_islocked_desc, (vop_t *) cd9660_islocked }, 1013 { &vop_lease_desc, (vop_t *) cd9660_lease_check }, 1014 { &vop_link_desc, (vop_t *) cd9660_link }, 1015 { &vop_lock_desc, (vop_t *) cd9660_lock }, 1016 { &vop_lookup_desc, (vop_t *) vfs_cache_lookup }, 1017 { &vop_mkdir_desc, (vop_t *) cd9660_mkdir }, 1018 { &vop_mknod_desc, (vop_t *) cd9660_mknod }, 1019 { &vop_mmap_desc, (vop_t *) cd9660_mmap }, 1020 { &vop_open_desc, (vop_t *) cd9660_open }, 1021 { &vop_pathconf_desc, (vop_t *) cd9660_pathconf }, 1022 { &vop_poll_desc, (vop_t *) cd9660_poll }, 1023 { &vop_print_desc, (vop_t *) cd9660_print }, 1024 { &vop_read_desc, (vop_t *) cd9660_read }, 1025 { &vop_readdir_desc, (vop_t *) cd9660_readdir }, 1026 { &vop_readlink_desc, (vop_t *) cd9660_readlink }, 1027 { &vop_reclaim_desc, (vop_t *) cd9660_reclaim }, 1028 { &vop_remove_desc, (vop_t *) cd9660_remove }, 1029 { &vop_rename_desc, (vop_t *) cd9660_rename }, 1030 { &vop_revoke_desc, (vop_t *) cd9660_revoke }, 1031 { &vop_rmdir_desc, (vop_t *) cd9660_rmdir }, 1032 { &vop_seek_desc, (vop_t *) cd9660_seek }, 1033 { &vop_setattr_desc, (vop_t *) cd9660_setattr }, 1034 { &vop_strategy_desc, (vop_t *) cd9660_strategy }, 1035 { &vop_symlink_desc, (vop_t *) cd9660_symlink }, 1036 { &vop_truncate_desc, (vop_t *) cd9660_truncate }, 1037 { &vop_unlock_desc, (vop_t *) cd9660_unlock }, 1038 { &vop_update_desc, (vop_t *) cd9660_update }, 1039 { &vop_valloc_desc, (vop_t *) cd9660_valloc }, 1040 { &vop_vfree_desc, (vop_t *) cd9660_vfree }, 1041 { &vop_write_desc, (vop_t *) cd9660_write }, |
1047 { NULL, NULL } 1048}; 1049static struct vnodeopv_desc cd9660_vnodeop_opv_desc = 1050 { &cd9660_vnodeop_p, cd9660_vnodeop_entries }; 1051VNODEOP_SET(cd9660_vnodeop_opv_desc); 1052 1053/* 1054 * Special device vnode ops 1055 */ 1056vop_t **cd9660_specop_p; 1057struct vnodeopv_entry_desc cd9660_specop_entries[] = { | 1042 { NULL, NULL } 1043}; 1044static struct vnodeopv_desc cd9660_vnodeop_opv_desc = 1045 { &cd9660_vnodeop_p, cd9660_vnodeop_entries }; 1046VNODEOP_SET(cd9660_vnodeop_opv_desc); 1047 1048/* 1049 * Special device vnode ops 1050 */ 1051vop_t **cd9660_specop_p; 1052struct vnodeopv_entry_desc cd9660_specop_entries[] = { |
1058 { &vop_default_desc, (vop_t *)vn_default_error }, 1059 { &vop_lookup_desc, (vop_t *)spec_lookup }, /* lookup */ 1060/* XXX: vop_cachedlookup */ 1061 { &vop_create_desc, (vop_t *)spec_create }, /* create */ 1062/* XXX: vop_whiteout */ 1063 { &vop_mknod_desc, (vop_t *)spec_mknod }, /* mknod */ 1064 { &vop_open_desc, (vop_t *)spec_open }, /* open */ 1065 { &vop_close_desc, (vop_t *)spec_close }, /* close */ 1066 { &vop_access_desc, (vop_t *)cd9660_access }, /* access */ 1067 { &vop_getattr_desc, (vop_t *)cd9660_getattr }, /* getattr */ 1068 { &vop_setattr_desc, (vop_t *)cd9660_setattr }, /* setattr */ 1069 { &vop_read_desc, (vop_t *)spec_read }, /* read */ 1070 { &vop_write_desc, (vop_t *)spec_write }, /* write */ 1071 { &vop_lease_desc, (vop_t *)spec_lease_check }, /* lease */ 1072 { &vop_ioctl_desc, (vop_t *)spec_ioctl }, /* ioctl */ 1073 { &vop_poll_desc, (vop_t *)spec_poll }, /* poll */ 1074 { &vop_revoke_desc, (vop_t *)spec_revoke }, /* revoke */ 1075 { &vop_mmap_desc, (vop_t *)spec_mmap }, /* mmap */ 1076 { &vop_fsync_desc, (vop_t *)spec_fsync }, /* fsync */ 1077 { &vop_seek_desc, (vop_t *)spec_seek }, /* seek */ 1078 { &vop_remove_desc, (vop_t *)spec_remove }, /* remove */ 1079 { &vop_link_desc, (vop_t *)spec_link }, /* link */ 1080 { &vop_rename_desc, (vop_t *)spec_rename }, /* rename */ 1081 { &vop_mkdir_desc, (vop_t *)spec_mkdir }, /* mkdir */ 1082 { &vop_rmdir_desc, (vop_t *)spec_rmdir }, /* rmdir */ 1083 { &vop_symlink_desc, (vop_t *)spec_symlink }, /* symlink */ 1084 { &vop_readdir_desc, (vop_t *)spec_readdir }, /* readdir */ 1085 { &vop_readlink_desc, (vop_t *)spec_readlink }, /* readlink */ 1086 { &vop_abortop_desc, (vop_t *)spec_abortop }, /* abortop */ 1087 { &vop_inactive_desc, (vop_t *)cd9660_inactive },/* inactive */ 1088 { &vop_reclaim_desc, (vop_t *)cd9660_reclaim }, /* reclaim */ 1089 { &vop_lock_desc, (vop_t *)cd9660_lock }, /* lock */ 1090 { &vop_unlock_desc, (vop_t *)cd9660_unlock }, /* unlock */ 1091 { &vop_bmap_desc, (vop_t *)spec_bmap }, /* bmap */ 1092 { &vop_strategy_desc, (vop_t *)spec_strategy }, /* strategy */ 1093 { &vop_print_desc, (vop_t *)cd9660_print }, /* print */ 1094 { &vop_islocked_desc, (vop_t *)cd9660_islocked },/* islocked */ 1095 { &vop_pathconf_desc, (vop_t *)spec_pathconf }, /* pathconf */ 1096 { &vop_advlock_desc, (vop_t *)spec_advlock }, /* advlock */ 1097 { &vop_blkatoff_desc, (vop_t *)spec_blkatoff }, /* blkatoff */ 1098 { &vop_valloc_desc, (vop_t *)spec_valloc }, /* valloc */ 1099/* XXX: vop_reallocblks */ 1100 { &vop_vfree_desc, (vop_t *)spec_vfree }, /* vfree */ 1101 { &vop_truncate_desc, (vop_t *)spec_truncate }, /* truncate */ 1102 { &vop_update_desc, (vop_t *)cd9660_update }, /* update */ 1103/* XXX: vop_getpages */ 1104/* XXX: vop_putpages */ 1105 { &vop_bwrite_desc, (vop_t *)vn_bwrite }, | 1053 { &vop_default_desc, (vop_t *) vn_default_error }, 1054 { &vop_abortop_desc, (vop_t *) spec_abortop }, 1055 { &vop_access_desc, (vop_t *) cd9660_access }, 1056 { &vop_advlock_desc, (vop_t *) spec_advlock }, 1057 { &vop_blkatoff_desc, (vop_t *) spec_blkatoff }, 1058 { &vop_bmap_desc, (vop_t *) spec_bmap }, 1059 { &vop_bwrite_desc, (vop_t *) vn_bwrite }, 1060 { &vop_close_desc, (vop_t *) spec_close }, 1061 { &vop_create_desc, (vop_t *) spec_create }, 1062 { &vop_fsync_desc, (vop_t *) spec_fsync }, 1063 { &vop_getattr_desc, (vop_t *) cd9660_getattr }, 1064 { &vop_inactive_desc, (vop_t *) cd9660_inactive }, 1065 { &vop_ioctl_desc, (vop_t *) spec_ioctl }, 1066 { &vop_islocked_desc, (vop_t *) cd9660_islocked }, 1067 { &vop_lease_desc, (vop_t *) spec_lease_check }, 1068 { &vop_link_desc, (vop_t *) spec_link }, 1069 { &vop_lock_desc, (vop_t *) cd9660_lock }, 1070 { &vop_lookup_desc, (vop_t *) spec_lookup }, 1071 { &vop_mkdir_desc, (vop_t *) spec_mkdir }, 1072 { &vop_mknod_desc, (vop_t *) spec_mknod }, 1073 { &vop_mmap_desc, (vop_t *) spec_mmap }, 1074 { &vop_open_desc, (vop_t *) spec_open }, 1075 { &vop_pathconf_desc, (vop_t *) spec_pathconf }, 1076 { &vop_poll_desc, (vop_t *) spec_poll }, 1077 { &vop_print_desc, (vop_t *) cd9660_print }, 1078 { &vop_read_desc, (vop_t *) spec_read }, 1079 { &vop_readdir_desc, (vop_t *) spec_readdir }, 1080 { &vop_readlink_desc, (vop_t *) spec_readlink }, 1081 { &vop_reclaim_desc, (vop_t *) cd9660_reclaim }, 1082 { &vop_remove_desc, (vop_t *) spec_remove }, 1083 { &vop_rename_desc, (vop_t *) spec_rename }, 1084 { &vop_revoke_desc, (vop_t *) spec_revoke }, 1085 { &vop_rmdir_desc, (vop_t *) spec_rmdir }, 1086 { &vop_seek_desc, (vop_t *) spec_seek }, 1087 { &vop_setattr_desc, (vop_t *) cd9660_setattr }, 1088 { &vop_strategy_desc, (vop_t *) spec_strategy }, 1089 { &vop_symlink_desc, (vop_t *) spec_symlink }, 1090 { &vop_truncate_desc, (vop_t *) spec_truncate }, 1091 { &vop_unlock_desc, (vop_t *) cd9660_unlock }, 1092 { &vop_update_desc, (vop_t *) cd9660_update }, 1093 { &vop_valloc_desc, (vop_t *) spec_valloc }, 1094 { &vop_vfree_desc, (vop_t *) spec_vfree }, 1095 { &vop_write_desc, (vop_t *) spec_write }, |
1106 { NULL, NULL } 1107}; 1108static struct vnodeopv_desc cd9660_specop_opv_desc = 1109 { &cd9660_specop_p, cd9660_specop_entries }; 1110VNODEOP_SET(cd9660_specop_opv_desc); 1111 1112vop_t **cd9660_fifoop_p; 1113struct vnodeopv_entry_desc cd9660_fifoop_entries[] = { | 1096 { NULL, NULL } 1097}; 1098static struct vnodeopv_desc cd9660_specop_opv_desc = 1099 { &cd9660_specop_p, cd9660_specop_entries }; 1100VNODEOP_SET(cd9660_specop_opv_desc); 1101 1102vop_t **cd9660_fifoop_p; 1103struct vnodeopv_entry_desc cd9660_fifoop_entries[] = { |
1114 { &vop_default_desc, (vop_t *)vn_default_error }, 1115 { &vop_lookup_desc, (vop_t *)fifo_lookup }, /* lookup */ 1116/* XXX: vop_cachedlookup */ 1117 { &vop_create_desc, (vop_t *)fifo_create }, /* create */ 1118/* XXX: vop_whiteout */ 1119 { &vop_mknod_desc, (vop_t *)fifo_mknod }, /* mknod */ 1120 { &vop_open_desc, (vop_t *)fifo_open }, /* open */ 1121 { &vop_close_desc, (vop_t *)fifo_close }, /* close */ 1122 { &vop_access_desc, (vop_t *)cd9660_access }, /* access */ 1123 { &vop_getattr_desc, (vop_t *)cd9660_getattr }, /* getattr */ 1124 { &vop_setattr_desc, (vop_t *)cd9660_setattr }, /* setattr */ 1125 { &vop_read_desc, (vop_t *)fifo_read }, /* read */ 1126 { &vop_write_desc, (vop_t *)fifo_write }, /* write */ 1127 { &vop_lease_desc, (vop_t *)fifo_lease_check }, /* lease */ 1128 { &vop_ioctl_desc, (vop_t *)fifo_ioctl }, /* ioctl */ 1129 { &vop_poll_desc, (vop_t *)fifo_poll }, /* poll */ 1130 { &vop_revoke_desc, (vop_t *)fifo_revoke }, /* revoke */ 1131 { &vop_mmap_desc, (vop_t *)fifo_mmap }, /* mmap */ 1132 { &vop_fsync_desc, (vop_t *)fifo_fsync }, /* fsync */ 1133 { &vop_seek_desc, (vop_t *)fifo_seek }, /* seek */ 1134 { &vop_remove_desc, (vop_t *)fifo_remove }, /* remove */ 1135 { &vop_link_desc, (vop_t *)fifo_link } , /* link */ 1136 { &vop_rename_desc, (vop_t *)fifo_rename }, /* rename */ 1137 { &vop_mkdir_desc, (vop_t *)fifo_mkdir }, /* mkdir */ 1138 { &vop_rmdir_desc, (vop_t *)fifo_rmdir }, /* rmdir */ 1139 { &vop_symlink_desc, (vop_t *)fifo_symlink }, /* symlink */ 1140 { &vop_readdir_desc, (vop_t *)fifo_readdir }, /* readdir */ 1141 { &vop_readlink_desc, (vop_t *)fifo_readlink }, /* readlink */ 1142 { &vop_abortop_desc, (vop_t *)fifo_abortop }, /* abortop */ 1143 { &vop_inactive_desc, (vop_t *)cd9660_inactive },/* inactive */ 1144 { &vop_reclaim_desc, (vop_t *)cd9660_reclaim }, /* reclaim */ 1145 { &vop_lock_desc, (vop_t *)cd9660_lock }, /* lock */ 1146 { &vop_unlock_desc, (vop_t *)cd9660_unlock }, /* unlock */ 1147 { &vop_bmap_desc, (vop_t *)fifo_bmap }, /* bmap */ 1148 { &vop_strategy_desc, (vop_t *)fifo_strategy }, /* strategy */ 1149 { &vop_print_desc, (vop_t *)cd9660_print }, /* print */ 1150 { &vop_islocked_desc, (vop_t *)cd9660_islocked },/* islocked */ 1151 { &vop_pathconf_desc, (vop_t *)fifo_pathconf }, /* pathconf */ 1152 { &vop_advlock_desc, (vop_t *)fifo_advlock }, /* advlock */ 1153 { &vop_blkatoff_desc, (vop_t *)fifo_blkatoff }, /* blkatoff */ 1154 { &vop_valloc_desc, (vop_t *)fifo_valloc }, /* valloc */ 1155/* XXX: vop_reallocpages */ 1156 { &vop_vfree_desc, (vop_t *)fifo_vfree }, /* vfree */ 1157 { &vop_truncate_desc, (vop_t *)fifo_truncate }, /* truncate */ 1158 { &vop_update_desc, (vop_t *)cd9660_update }, /* update */ 1159/* XXX: vop_getpages */ 1160/* XXX: vop_putpages */ 1161 { &vop_bwrite_desc, (vop_t *)vn_bwrite }, | 1104 { &vop_default_desc, (vop_t *) vn_default_error }, 1105 { &vop_abortop_desc, (vop_t *) fifo_abortop }, 1106 { &vop_access_desc, (vop_t *) cd9660_access }, 1107 { &vop_advlock_desc, (vop_t *) fifo_advlock }, 1108 { &vop_blkatoff_desc, (vop_t *) fifo_blkatoff }, 1109 { &vop_bmap_desc, (vop_t *) fifo_bmap }, 1110 { &vop_bwrite_desc, (vop_t *) vn_bwrite }, 1111 { &vop_close_desc, (vop_t *) fifo_close }, 1112 { &vop_create_desc, (vop_t *) fifo_create }, 1113 { &vop_fsync_desc, (vop_t *) fifo_fsync }, 1114 { &vop_getattr_desc, (vop_t *) cd9660_getattr }, 1115 { &vop_inactive_desc, (vop_t *) cd9660_inactive }, 1116 { &vop_ioctl_desc, (vop_t *) fifo_ioctl }, 1117 { &vop_islocked_desc, (vop_t *) cd9660_islocked }, 1118 { &vop_lease_desc, (vop_t *) fifo_lease_check }, 1119 { &vop_link_desc, (vop_t *) fifo_link }, 1120 { &vop_lock_desc, (vop_t *) cd9660_lock }, 1121 { &vop_lookup_desc, (vop_t *) fifo_lookup }, 1122 { &vop_mkdir_desc, (vop_t *) fifo_mkdir }, 1123 { &vop_mknod_desc, (vop_t *) fifo_mknod }, 1124 { &vop_mmap_desc, (vop_t *) fifo_mmap }, 1125 { &vop_open_desc, (vop_t *) fifo_open }, 1126 { &vop_pathconf_desc, (vop_t *) fifo_pathconf }, 1127 { &vop_poll_desc, (vop_t *) fifo_poll }, 1128 { &vop_print_desc, (vop_t *) cd9660_print }, 1129 { &vop_read_desc, (vop_t *) fifo_read }, 1130 { &vop_readdir_desc, (vop_t *) fifo_readdir }, 1131 { &vop_readlink_desc, (vop_t *) fifo_readlink }, 1132 { &vop_reclaim_desc, (vop_t *) cd9660_reclaim }, 1133 { &vop_remove_desc, (vop_t *) fifo_remove }, 1134 { &vop_rename_desc, (vop_t *) fifo_rename }, 1135 { &vop_revoke_desc, (vop_t *) fifo_revoke }, 1136 { &vop_rmdir_desc, (vop_t *) fifo_rmdir }, 1137 { &vop_seek_desc, (vop_t *) fifo_seek }, 1138 { &vop_setattr_desc, (vop_t *) cd9660_setattr }, 1139 { &vop_strategy_desc, (vop_t *) fifo_strategy }, 1140 { &vop_symlink_desc, (vop_t *) fifo_symlink }, 1141 { &vop_truncate_desc, (vop_t *) fifo_truncate }, 1142 { &vop_unlock_desc, (vop_t *) cd9660_unlock }, 1143 { &vop_update_desc, (vop_t *) cd9660_update }, 1144 { &vop_valloc_desc, (vop_t *) fifo_valloc }, 1145 { &vop_vfree_desc, (vop_t *) fifo_vfree }, 1146 { &vop_write_desc, (vop_t *) fifo_write }, |
1162 { NULL, NULL } 1163}; 1164static struct vnodeopv_desc cd9660_fifoop_opv_desc = 1165 { &cd9660_fifoop_p, cd9660_fifoop_entries }; 1166 1167VNODEOP_SET(cd9660_fifoop_opv_desc); | 1147 { NULL, NULL } 1148}; 1149static struct vnodeopv_desc cd9660_fifoop_opv_desc = 1150 { &cd9660_fifoop_p, cd9660_fifoop_entries }; 1151 1152VNODEOP_SET(cd9660_fifoop_opv_desc); |