diff options
author | bde <bde@FreeBSD.org> | 1994-12-27 12:37:36 +0000 |
---|---|---|
committer | bde <bde@FreeBSD.org> | 1994-12-27 12:37:36 +0000 |
commit | 1587b568dd32b6f0f1d6cc5e282a606459d7ee2e (patch) | |
tree | adf9bcdb7a70ae862914612112ca8fbaee09e226 /lib/libc/regex/regcomp.c | |
parent | 94497e0a34c7b774c88ebe2d120a83d82e6361f9 (diff) | |
download | FreeBSD-src-1587b568dd32b6f0f1d6cc5e282a606459d7ee2e.zip FreeBSD-src-1587b568dd32b6f0f1d6cc5e282a606459d7ee2e.tar.gz |
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.
Diffstat (limited to 'lib/libc/regex/regcomp.c')
0 files changed, 0 insertions, 0 deletions