DEVEL15-libuafs-updates-20081229
authorAndrew Deason <adeason@sinenomine.net>
Mon, 29 Dec 2008 21:26:12 +0000 (21:26 +0000)
committerDerrick Brashear <shadow@dementia.org>
Mon, 29 Dec 2008 21:26:12 +0000 (21:26 +0000)
commita28a2ad2c17f7b4d3bdbe176584a1ad9b690b6ba
tree9b5535e34ac4c90d3c3ee01f64bbef73f5cc020f
parent2214f2bc46401fbaae481a12747b3c72bf895418
DEVEL15-libuafs-updates-20081229

LICENSE IPL10
FIXES 124072

adds ATTR_* constants for UKERNEL code, and makes use
of them. Without this in some cases updating file metadata will also
update unrelated metadata (e.g. truncating a file changes the mode
bits).

adds threadsafe positional i/o calls to
afs_usrops.c: uafs_pwrite and uafs_pread, allowing for threadsafe
libuafs i/o.

changes the types of some fs-related
variables to be more "correct", I think (off_t for offsets, mode_t for
file mode, etc), it fixes a bug where nDaemons is not correctly set from
the uafs_Init parameter, fixes a segfault in uafs_open when O_CREAT is
specified, initializes a couple of static vars, "#if 0"s out code that
copies tokens from kernel-space to user-space (doesn't seem to work from
what I've seen, and the current code crashes on clientless Solaris
machines from being killed by SIGSYS)

(cherry picked from commit 3d44f93f9a0b1d2d4a07b58b3104420e9c138d12)
src/afs/UKERNEL/afs_usrops.c
src/afs/UKERNEL/afs_usrops.h
src/afs/UKERNEL/sysincludes.h
src/afs/VNOPS/afs_vnop_attrs.c
src/afs/VNOPS/afs_vnop_create.c