cd9660_vnops.c (54272) | cd9660_vnops.c (54655) |
---|---|
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 * $FreeBSD: head/sys/fs/cd9660/cd9660_vnops.c 54272 1999-12-07 22:25:28Z sos $ | 39 * $FreeBSD: head/sys/fs/cd9660/cd9660_vnops.c 54655 1999-12-15 23:02:35Z eivind $ |
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/buf.h> --- 20 unchanged lines hidden (view full) --- 68static int cd9660_pathconf __P((struct vop_pathconf_args *)); 69static int cd9660_read __P((struct vop_read_args *)); 70struct isoreaddir; 71static int iso_uiodir __P((struct isoreaddir *idp, struct dirent *dp, 72 off_t off)); 73static int iso_shipdir __P((struct isoreaddir *idp)); 74static int cd9660_readdir __P((struct vop_readdir_args *)); 75static int cd9660_readlink __P((struct vop_readlink_args *ap)); | 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/buf.h> --- 20 unchanged lines hidden (view full) --- 68static int cd9660_pathconf __P((struct vop_pathconf_args *)); 69static int cd9660_read __P((struct vop_read_args *)); 70struct isoreaddir; 71static int iso_uiodir __P((struct isoreaddir *idp, struct dirent *dp, 72 off_t off)); 73static int iso_shipdir __P((struct isoreaddir *idp)); 74static int cd9660_readdir __P((struct vop_readdir_args *)); 75static int cd9660_readlink __P((struct vop_readlink_args *ap)); |
76static int cd9660_abortop __P((struct vop_abortop_args *)); | |
77static int cd9660_strategy __P((struct vop_strategy_args *)); 78static int cd9660_print __P((struct vop_print_args *)); 79static int cd9660_getpages __P((struct vop_getpages_args *)); 80static int cd9660_putpages __P((struct vop_putpages_args *)); 81 82/* 83 * Setattr call. Only allowed for block and character special devices. 84 */ --- 647 unchanged lines hidden (view full) --- 732 } 733 uio->uio_resid -= symlen; 734 uio->uio_iov->iov_base += symlen; 735 uio->uio_iov->iov_len -= symlen; 736 return (0); 737} 738 739/* | 76static int cd9660_strategy __P((struct vop_strategy_args *)); 77static int cd9660_print __P((struct vop_print_args *)); 78static int cd9660_getpages __P((struct vop_getpages_args *)); 79static int cd9660_putpages __P((struct vop_putpages_args *)); 80 81/* 82 * Setattr call. Only allowed for block and character special devices. 83 */ --- 647 unchanged lines hidden (view full) --- 731 } 732 uio->uio_resid -= symlen; 733 uio->uio_iov->iov_base += symlen; 734 uio->uio_iov->iov_len -= symlen; 735 return (0); 736} 737 738/* |
740 * Ufs abort op, called after namei() when a CREATE/DELETE isn't actually 741 * done. If a buffer has been saved in anticipation of a CREATE, delete it. 742 */ 743static int 744cd9660_abortop(ap) 745 struct vop_abortop_args /* { 746 struct vnode *a_dvp; 747 struct componentname *a_cnp; 748 } */ *ap; 749{ 750 if ((ap->a_cnp->cn_flags & (HASBUF | SAVESTART)) == HASBUF) 751 zfree(namei_zone, ap->a_cnp->cn_pnbuf); 752 return (0); 753} 754 755/* | |
756 * Calculate the logical to physical mapping if not done already, 757 * then call the device strategy routine. 758 */ 759static int 760cd9660_strategy(ap) 761 struct vop_strategy_args /* { 762 struct buf *a_vp; 763 struct buf *a_bp; --- 111 unchanged lines hidden (view full) --- 875} 876 877/* 878 * Global vfs data structures for cd9660 879 */ 880vop_t **cd9660_vnodeop_p; 881static struct vnodeopv_entry_desc cd9660_vnodeop_entries[] = { 882 { &vop_default_desc, (vop_t *) vop_defaultop }, | 739 * Calculate the logical to physical mapping if not done already, 740 * then call the device strategy routine. 741 */ 742static int 743cd9660_strategy(ap) 744 struct vop_strategy_args /* { 745 struct buf *a_vp; 746 struct buf *a_bp; --- 111 unchanged lines hidden (view full) --- 858} 859 860/* 861 * Global vfs data structures for cd9660 862 */ 863vop_t **cd9660_vnodeop_p; 864static struct vnodeopv_entry_desc cd9660_vnodeop_entries[] = { 865 { &vop_default_desc, (vop_t *) vop_defaultop }, |
883 { &vop_abortop_desc, (vop_t *) cd9660_abortop }, | |
884 { &vop_access_desc, (vop_t *) cd9660_access }, 885 { &vop_bmap_desc, (vop_t *) cd9660_bmap }, 886 { &vop_cachedlookup_desc, (vop_t *) cd9660_lookup }, 887 { &vop_getattr_desc, (vop_t *) cd9660_getattr }, 888 { &vop_inactive_desc, (vop_t *) cd9660_inactive }, 889 { &vop_ioctl_desc, (vop_t *) cd9660_ioctl }, 890 { &vop_islocked_desc, (vop_t *) vop_stdislocked }, 891 { &vop_lock_desc, (vop_t *) vop_stdlock }, --- 57 unchanged lines hidden --- | 866 { &vop_access_desc, (vop_t *) cd9660_access }, 867 { &vop_bmap_desc, (vop_t *) cd9660_bmap }, 868 { &vop_cachedlookup_desc, (vop_t *) cd9660_lookup }, 869 { &vop_getattr_desc, (vop_t *) cd9660_getattr }, 870 { &vop_inactive_desc, (vop_t *) cd9660_inactive }, 871 { &vop_ioctl_desc, (vop_t *) cd9660_ioctl }, 872 { &vop_islocked_desc, (vop_t *) vop_stdislocked }, 873 { &vop_lock_desc, (vop_t *) vop_stdlock }, --- 57 unchanged lines hidden --- |