diff options
author | Philip Guenther <guenther@cvs.openbsd.org> | 2013-05-30 17:35:02 +0000 |
---|---|---|
committer | Philip Guenther <guenther@cvs.openbsd.org> | 2013-05-30 17:35:02 +0000 |
commit | 296a80d1ada7fc32000122b7bcbdcacf115d8c9f (patch) | |
tree | 1e40bb57a2c9f15cadada6f5ee64e421474c19ee /sys/isofs/udf/udf_vfsops.c | |
parent | 0edbe965a3d0f38e2719da8037b9e26a8f92b500 (diff) |
CD filesystems don't do inode numbers >2^32, so use a smaller type internally,
only using ino_t in the VFS layer APIs: vget, readdir, getattr.
ok matthew@
Diffstat (limited to 'sys/isofs/udf/udf_vfsops.c')
-rw-r--r-- | sys/isofs/udf/udf_vfsops.c | 10 |
1 files changed, 7 insertions, 3 deletions
diff --git a/sys/isofs/udf/udf_vfsops.c b/sys/isofs/udf/udf_vfsops.c index c35b80f54ec..68842c81a63 100644 --- a/sys/isofs/udf/udf_vfsops.c +++ b/sys/isofs/udf/udf_vfsops.c @@ -1,4 +1,4 @@ -/* $OpenBSD: udf_vfsops.c,v 1.40 2013/04/15 15:32:19 jsing Exp $ */ +/* $OpenBSD: udf_vfsops.c,v 1.41 2013/05/30 17:35:01 guenther Exp $ */ /* * Copyright (c) 2001, 2002 Scott Long <scottl@freebsd.org> @@ -503,7 +503,7 @@ udf_root(struct mount *mp, struct vnode **vpp) { struct umount *ump; struct vnode *vp; - ino_t id; + udfino_t id; int error; ump = VFSTOUDFFS(mp); @@ -562,7 +562,11 @@ udf_vget(struct mount *mp, ino_t ino, struct vnode **vpp) struct unode *up; struct extfile_entry *xfe; struct file_entry *fe; - int error, sector, size; + uint32_t sector; + int error, size; + + if (ino > (udfino_t)-1) + panic("udf_vget: alien ino_t %llu", (unsigned long long)ino); p = curproc; bp = NULL; |