cd9660_vfsops.c (55311) | cd9660_vfsops.c (55756) |
---|---|
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_vfsops.c 8.18 (Berkeley) 5/22/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_vfsops.c 8.18 (Berkeley) 5/22/95 |
39 * $FreeBSD: head/sys/fs/cd9660/cd9660_vfsops.c 55311 2000-01-02 15:16:17Z phk $ | 39 * $FreeBSD: head/sys/fs/cd9660/cd9660_vfsops.c 55756 2000-01-10 12:04:27Z phk $ |
40 */ 41 42#include <sys/param.h> 43#include <sys/systm.h> 44#include <sys/namei.h> 45#include <sys/proc.h> 46#include <sys/kernel.h> 47#include <sys/vnode.h> --- 167 unchanged lines hidden (view full) --- 215 return (error); 216 NDFREE(ndp, NDF_ONLY_PNBUF); 217 devvp = ndp->ni_vp; 218 219 if (devsw(devvp->v_rdev) == NULL) { 220 vrele(devvp); 221 return (ENXIO); 222 } | 40 */ 41 42#include <sys/param.h> 43#include <sys/systm.h> 44#include <sys/namei.h> 45#include <sys/proc.h> 46#include <sys/kernel.h> 47#include <sys/vnode.h> --- 167 unchanged lines hidden (view full) --- 215 return (error); 216 NDFREE(ndp, NDF_ONLY_PNBUF); 217 devvp = ndp->ni_vp; 218 219 if (devsw(devvp->v_rdev) == NULL) { 220 vrele(devvp); 221 return (ENXIO); 222 } |
223 if (!vn_isdisk(devvp)) { | 223 if (!vn_isdisk(devvp, &error)) { |
224 vrele(devvp); | 224 vrele(devvp); |
225 return (ENOTBLK); | 225 return (error); |
226 } 227 228 /* 229 * Verify that user has necessary permissions on the device, 230 * or has superuser abilities 231 */ 232 accessmode = VREAD; 233 vn_lock(devvp, LK_EXCLUSIVE | LK_RETRY, p); --- 669 unchanged lines hidden --- | 226 } 227 228 /* 229 * Verify that user has necessary permissions on the device, 230 * or has superuser abilities 231 */ 232 accessmode = VREAD; 233 vn_lock(devvp, LK_EXCLUSIVE | LK_RETRY, p); --- 669 unchanged lines hidden --- |