LICENSE MIT
FIXES 123889
reverse change from 20081226. removing the auto-generated manifest
removes the manifest binding to the run time library. The reason
two manifests are specified is that we are merging them.
(cherry picked from commit bf51eaca47db1bbf58490d770f1be105e69f7ea9)
LICENSE MIT
Validating the state of the rx library is hard. This patch makes it
a bit easier to validate from within crash dumps (or on Windows in
"fs memdump" output) whether rx packets and calls are in a sane state.
When the library is compiled with -DDEBUG the rx_call and rx_packet
data structures are extended to include a linked list of all allocated
objects and counters are added to track the number of packets on each
of the transmit, receive, and iovec queues.
This compliments the tracking of packet states via RX_PKTFLAGs.
For Windows, rx_DumpCalls and rx_DumpPackets functions are added
that will dump the state of all allocated calls and packets (in Checked
build) in response to a "fs memdump" command. These functions are
exported from afsrpc.dll.
(cherry picked from commit 29e3bb5838ee224e8d13bf1e680e1eb9480f1400)
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)
LICENSE MIT
FIXES 123799
prevent rx_WriteProc() from passing a packet to rxi_PrepareSendPacket()
that has been freed and possibly allocated to another call.
(cherry picked from commit d0cc6eb2f5f0aea0a6ad88de2d847f93d07cc8b9)
LICENSE MIT
even though the docs for FILE_FS_ATTRIBUTE_INFORMATION state
that the MaximumComponentNameLength field is in bytes, it turns
out that Windows SMB servers return the value in characters.
Reduce the reported value to 255 to match NTFS.
(cherry picked from commit 8f3e660270d9c1af268ba45118ab87740fbeeef8)
LICENSE MIT
additional defines are to be appended to AFSDEV_AUXCDEFINES,
they are not supposed to replace the prior definition
(cherry picked from commit f70ba203206a2953a3f51b48fe3455b9cad52eae)
LICENSE MIT
Pointed out by jason edgecombe. the AFS SMB server failed to report
the FILE_UNICODE_ON_DISK characteristic when responding to
TRANS2_QUERY_FS_INFORMATION.
(cherry picked from commit a09a1709f646087c2ceb6f484b45b48495ea1127)
LICENSE BSD
FIXES 123889
remove extraneous reference to the output manifest file which resulted
in two manifests being generated with conflicting UAC values.
(cherry picked from commit 06468cb9393aca2c58cc75ee51bfb50f56957c52)
LICENSE MIT
when performing a lookup operation it is acceptable for the data version
of the btree to be greater than the data version of the cm_dirOp_t
under which the operation is being performed. No change to the btree
can take place and the result of the lookup will maintain consistency
without requiring an additional restart of the directory operation.
(cherry picked from commit 61aa1b199c28abc763456b35a644047cb9bafc18)
LICENSE MIT
when prefetching the directory buffers do not call cm_FlushFile to
discard locally modified buffers. Instead just set the cm_scache_t
bufDataVersionLow to the current version. out of date buffers will
therefore be ignored without requiring that locks be dropped and
reacquired and without searching all of the buffers associated with
the directory.
(cherry picked from commit 4435c4fdcc6ba21b86277cfd09b0dfa1b88989c5)
LICENSE MIT
permit the number of daemon threads to be increased to 64 instead of
a maximum of 8.
(cherry picked from commit 9784a9f0cc35cf485c5f9533db9dd8247df3b7c3)
LICENSE MIT
Do not permit cm_Rename() to rename an existing object such that it
creates a case-insensitive name collision with another object.
This change in behavior is consistent with the restrictions when
creating new objects. This change prevents the explorer shell from
getting confused when it creates a new folder.
(cherry picked from commit 9e2d9f6fa8862d33dfc7352c961f7945d0e04f4f)
LICENSE MIT
GetDriveType() will return "REMOTE" for drive letters that are mapped
to network devices via the SUBST command. Recursively check drive letters
for the final substitution before checking to see if the drive letter
is in fact an AFS device.
(cherry picked from commit 238ad07e13a85366bcf49a309e3735d26ff51ff2)
LICENSE BSD
FIXES 124054
reference count the server object returned by cm_FindServerByIP
(cherry picked from commit 411a63fb063cf24d6b9aedeb83df2eb58716e239)
LICENSE IPL10
FIXES 123984
add large file support for >2gb dumps; add incremental support
(cherry picked from commit d2ae1c99523ac4150a0d5536593781dbccfc1408)
LICENSE MIT
FIXES 124011
avoid "ologo" compilation error messages due to buffer overflow in rxgen
on Windows. research performed by mlane@sinenomine.net.
(cherry picked from commit 992ec096332c31f64e8cff66e20d2ab87708485f)
LICENSE IPL10
add missing semi-colons left out from DELTA tweak-vicelog-macros-20081218
(cherry picked from commit 46abfec0c74e6a1d4c5c76afcd24192484e2d0fa)
LICENSE IPL10
FIXES 123923
fix audit-consolidate-open-20081217 which broke the Windows build.
(cherry picked from commit dbc92bde39361c9741828be7a2151e521c9aeef9)
LICENSE IPL10
FIXES 123923
consolidate opening auditlog in one place; make opening nonblock easier
(cherry picked from commit 539dc6f501459712136f574744dba196598bee0b)
LICENSE IPL10
FIXES 123917
rpc is in sys now, like in current. tweaked from matt's patch to also
deal with amd64
(cherry picked from commit 1754101972ffb9b2d36c39656dac04464c5e9798)
LICENSE MIT
Change the mapping of CM_ERROR_WOULDBLOCK from
STATUS_LOCK_NOT_GRANTED to STATUS_CANT_WAIT.
STATUS_LOCK_NOT_GRANTED is used to indicate
CM_ERROR_LOCK_NOT_GRANTED.
(cherry picked from commit 9123966e43bc2f708baba756530aa90fcfe5e93d)
LICENSE IPL10
FIXES 123676
include com_err header in places where it's not so afs_error_message et al
exist
(cherry picked from commit 8166bd1d199f5a34225a49173b17e4682b5c3a84)
LICENSE IPL10
FIXES 123677
make the cache able to be filesystem-agnostic so a ZFS cache is possible
(cherry picked from commit 29457b1ca71518b29bb9e9e934c58e6fa4b9877a)
LICENSE IPL10
FIXES 123771
go back to referencing f.inode and not ainode when not using the fh cachefiles.
put back the dcache reference again.
(cherry picked from commit 4db6293a06ff573eb650cbf9bbf53440a7ee83a2)
LICENSE IPL10
FIXES 123714
fix code which tweaks refcounts on disconnected vcaches to be correct
(cherry picked from commit fb549013e7bb2cf5cb3da3083349cb559c093e8f)
LICENSE MIT
Rename rxi_getAllAddrMaskMtu to rx_getAllAddrMaskMtu.
Implement rx_getAllAddrMaskMtu for Windows.
Add rx_getAllAddrMaskMtu to the libafsrpc exports list.
Remove restrictions on use of NetRestrict / NetInfo files from
all services on Windows.
(cherry picked from commit 55ac2b7aa7da8ead2b3457781d9d60958bfad6be)