freebsd-skq/sys/fs
bde 1587b568dd Fix panic for `cp -p' by root to an msdos file system. Improve handling
of attributes so that `cp -p' to an msdos file system can succeed under
favourable circumstances (no uid or gid changes and no nonzero flags
except SF_ARCHIVED).

msdosfs_vnops.c:
The in-core inode flags were confused with the on-disk inode flags, so
chflags() clobbered the lock flag and caused a panic.

denode.h, msdosfs_denode.c, msdosfs_vnops.c:
Support the msdosfs archive attibute (ATTR_ARCHIVE) by mapping it to
the complement of the SF_ARCHIVED flag and setting the ATTR_ARCHIVE
bit when a file's modification time is set (but not when a file's
permissions are set; this is the standard wrong DOS behaviour).

denode.h, msdosfs_denode.c:
Remove the DE_UPDAT() macro.  It was only used once, and the corresponding
macro in ufs has already been removed.

denode.h:
Don't change the timestamp for directories in DE_TIMES() (be consistent
with deupdat()).

msdosfs_vnops.c:
Handle chown() better: return EPERM instead of EINVAL if there are
insufficient permissions; otherwise, allow null changes.
1994-12-27 12:37:36 +00:00
..
cd9660 Remove the bogus include of <sys/dkbad.h>. 1994-11-14 07:01:58 +00:00
deadfs Cosmetics: added a #include and a static prototype to silence gcc. 1994-10-08 22:37:00 +00:00
fdescfs Use tsleep() rather than sleep so that 'ps' is more informative about 1994-10-06 21:07:04 +00:00
fifofs GCC cleanup. 1994-10-02 17:48:58 +00:00
msdosfs Fix panic for `cp -p' by root to an msdos file system. Improve handling 1994-12-27 12:37:36 +00:00
nullfs Cosmetics. reduce the noise from gcc -Wall. 1994-10-10 07:55:48 +00:00
portalfs Cosmetics. reduce the noise from gcc -Wall. 1994-10-10 07:55:48 +00:00
procfs Fixed bug I just introduced that would have allowed a user to clobber 1994-10-18 04:40:41 +00:00
specfs Undo a previous change. <sys/disklabel.h> was broken, not these files. 1994-11-14 13:22:52 +00:00
umapfs Cosmetics. reduce the noise from gcc -Wall. 1994-10-10 07:55:48 +00:00
unionfs From tim@cs.city.ac.uk (Tim Wilkinson): 1994-11-04 14:41:46 +00:00