Subject: couple of minor fixes for msdosfs
To: None <netbsd-bugs@sun-lamp.cs.berkeley.edu>
From: Frank van der Linden <vdlinden@fwi.uva.nl>
List: netbsd-bugs
Date: 06/07/1994 21:22:09
Here are couple of fixes for msdosfs:
1. A minor change in the debugging output for msdosfs_vfsops.c
2. An important one for msdosfs_vfsops.c: uids are 32 bits not 16 !
This fixes the "Invalid argument" (EINVAL) error when trying to
overwrite an already existing file on a writeable DOS filesystem
with cp(1) or cat(1).
3. A typo in msdosfs_vfsops.c
Onno van der Linden c/o vdlinden@fwi.uva.nl (Frank van der Linden)
*** /sys/msdosfs/msdosfs_vfsops.c.orig Tue Jun 7 19:56:59 1994
--- /sys/msdosfs/msdosfs_vfsops.c Tue Jun 7 20:00:11 1994
***************
*** 494,499 ****
printf("lastr %d, id %d, mount %08x, op %08x\n",
vp->v_lastr, vp->v_id, vp->v_mount, vp->v_op);
! printf("freef %08x, freeb %08x, mountf %08x, mountb %08x\n",
! vp->v_freef, vp->v_freeb, vp->v_mountf, vp->v_mountb);
printf("cleanblkhd %08x, dirtyblkhd %08x, numoutput %d, type %d\n",
vp->v_cleanblkhd, vp->v_dirtyblkhd, vp->v_numoutput, vp->v_type);
--- 494,499 ----
printf("lastr %d, id %d, mount %08x, op %08x\n",
vp->v_lastr, vp->v_id, vp->v_mount, vp->v_op);
! printf("freelist %08x, mntvnodes %08x\n",
! vp->v_freelist, vp->v_mntvnodes);
printf("cleanblkhd %08x, dirtyblkhd %08x, numoutput %d, type %d\n",
vp->v_cleanblkhd, vp->v_dirtyblkhd, vp->v_numoutput, vp->v_type);
*** /sys/msdosfs/msdosfs_vnops.c.orig Tue Jun 7 20:00:59 1994
--- /sys/msdosfs/msdosfs_vnops.c Tue Jun 7 20:58:42 1994
***************
*** 268,273 ****
(vap->va_bytes != VNOVAL) ||
(vap->va_gen != VNOVAL) ||
! (vap->va_uid != (u_short) VNOVAL) ||
! (vap->va_gid != (u_short) VNOVAL) ||
(vap->va_atime.ts_sec != VNOVAL)) {
#if defined(MSDOSFSDEBUG)
--- 268,273 ----
(vap->va_bytes != VNOVAL) ||
(vap->va_gen != VNOVAL) ||
! (vap->va_uid != VNOVAL) ||
! (vap->va_gid != VNOVAL) ||
(vap->va_atime.ts_sec != VNOVAL)) {
#if defined(MSDOSFSDEBUG)
***************
*** 296,300 ****
/*
! * DOS files only have the ability to have thier writability
* attribute set, so we use the owner write bit to set the readonly
* attribute.
--- 296,300 ----
/*
! * DOS files only have the ability to have their writability
* attribute set, so we use the owner write bit to set the readonly
* attribute.
------------------------------------------------------------------------------