X-Git-Url: https://git.subgeniuskitty.com/unix-history/.git/blobdiff_plain/584fddaaebc33daf3132bb14ad17fa6a5ae4c543..fa843d136ad132d9e167aff2415bbbfdcc3f2dc6:/sys/isofs/isofs_vfsops.c diff --git a/sys/isofs/isofs_vfsops.c b/sys/isofs/isofs_vfsops.c index 25a868aa0f..cab949b4c7 100644 --- a/sys/isofs/isofs_vfsops.c +++ b/sys/isofs/isofs_vfsops.c @@ -1,5 +1,5 @@ /* - * $Id: isofs_vfsops.c,v 1.5 1993/07/19 13:40:09 cgd Exp $ + * $Id: isofs_vfsops.c,v 1.5 1993/12/19 00:51:07 wollman Exp $ */ #include "param.h" @@ -43,6 +43,9 @@ struct vfsops isofs_vfsops = { */ #define ROOTNAME "root_device" +static int iso_mountfs(struct vnode *, struct mount *, struct proc *); + +int isofs_mountroot() { register struct mount *mp; @@ -96,6 +99,7 @@ int iso_doforce = 1; * * mount system call */ +int isofs_mount(mp, path, data, ndp, p) register struct mount *mp; char *path; @@ -107,7 +111,7 @@ isofs_mount(mp, path, data, ndp, p) struct ufs_args args; u_int size; int error; - struct iso_mnt *imp; + struct iso_mnt *imp = 0; if (error = copyin(data, (caddr_t)&args, sizeof (struct ufs_args))) return (error); @@ -172,12 +176,12 @@ isofs_mount(mp, path, data, ndp, p) imp = VFSTOISOFS(mp); /* Check the Rock Ridge Extention support */ - if ( args.exflags & ISOFSMNT_NORRIP ) { + if ( args.exflags & MNT_NORRIP ) { imp->iso_ftype = ISO_FTYPE_9660; - mp->mnt_flag |= ISOFSMNT_NORRIP; + mp->mnt_flag |= MNT_NORRIP; } else { imp->iso_ftype = ISO_FTYPE_RRIP; - mp->mnt_flag &= ~ISOFSMNT_NORRIP; + mp->mnt_flag &= ~MNT_NORRIP; } (void) copyinstr(path, imp->im_fsmnt, sizeof(imp->im_fsmnt)-1, &size); @@ -194,6 +198,7 @@ isofs_mount(mp, path, data, ndp, p) /* * Common code for mount and mountroot */ +static int iso_mountfs(devvp, mp, p) register struct vnode *devvp; struct mount *mp; @@ -328,6 +333,7 @@ out: * Nothing to do at the moment. */ /* ARGSUSED */ +int isofs_start(mp, flags, p) struct mount *mp; int flags; @@ -340,6 +346,7 @@ isofs_start(mp, flags, p) /* * unmount system call */ +int isofs_unmount(mp, mntflags, p) struct mount *mp; int mntflags; @@ -374,6 +381,7 @@ isofs_unmount(mp, mntflags, p) /* * Check to see if a filesystem is mounted on a block device. */ +int iso_mountedon(vp) register struct vnode *vp; { @@ -396,6 +404,7 @@ iso_mountedon(vp) /* * Return root of a filesystem */ +int isofs_root(mp, vpp) struct mount *mp; struct vnode **vpp; @@ -423,6 +432,7 @@ isofs_root(mp, vpp) /* * Get file system statistics. */ +int isofs_statfs(mp, sbp, p) struct mount *mp; register struct statfs *sbp; @@ -450,6 +460,7 @@ isofs_statfs(mp, sbp, p) return (0); } +int isofs_sync(mp, waitfor) struct mount *mp; int waitfor; @@ -476,6 +487,7 @@ struct ifid { int ifid_ino; }; +int isofs_fhtovp(mp, fhp, vpp) register struct mount *mp; struct fid *fhp; @@ -509,7 +521,7 @@ isofs_fhtovp(mp, fhp, vpp) return (EINVAL); if (ifhp->ifid_offset + sizeof (struct iso_directory_record) - >= imp->im_bsize) + > imp->im_bsize) return (EINVAL); if (error = bread (imp->im_devvp, @@ -522,7 +534,7 @@ isofs_fhtovp(mp, fhp, vpp) dirp = (struct iso_directory_record *) (bp->b_un.b_addr + ifhp->ifid_offset); - if (ifhp->ifid_offset + isonum_711 (dirp->length) >= imp->im_bsize) { + if (ifhp->ifid_offset + isonum_711 (dirp->length) > imp->im_bsize) { brelse (bp); return (EINVAL); } @@ -552,6 +564,7 @@ isofs_fhtovp(mp, fhp, vpp) * Vnode pointer to File handle */ /* ARGSUSED */ +int isofs_vptofh(vp, fhp) struct vnode *vp; struct fid *fhp;