LICENSE MIT
when checking offline volumes, update the cell vlserver info
if required and don't perform a check if there are no servers
in the list.
(cherry picked from commit 935c49a2a6efa476c327e8a24fc4895f0c8f623d)
LICENSE MIT
Add volumes in the vl_unknown state to the list of objects to be
checked as offline or retried when an allbusy error is received
in cm_Analyze.
(cherry picked from commit 093433b981cd1917215a4ee6196c5a0a55352d92)
LICENSE MIT
avoid a crash when logging VNOVOL errors returned from cm_CheckOfflineVolume
(cherry picked from commit 1133cc441862f3f0d44f0ab380a7274ead672b0f)
LICENSE MIT
When osi_Log is disabled, osi_LogSaveString will no longer copy the
provided string into the circular log buffer. This saves a huge amount
of time.
(cherry picked from commit 00bada9c5eb803c13a6b930e79684a470cf94278)
LICENSE MIT
Treat srvsvc, wkssvc and ipc$ as pseudo files. Permit them to be opened
and closed without actually existing. For now we treat them as equivalent
to ioctls but this should eventually change.
Fix RAP processing to not reject names that exist in the root.afs volume
for GetInfo queries.
(cherry picked from commit 588a229110c92bd82b819916260ee9727759c4a0)
LICENSE MIT
Add "ipc$" to the list of names that must not be automatically added
as a share name.
If the sharename is a partial match and therefore will not be added
automatically to the share list, make sure that we return an error
to the requestor.
(cherry picked from commit 44c20384ed5c0fdb4bce737a2a3c2b9c0af4472b)
LICENSE MIT
Warnings as errors are nice, but when different compiler versions
stop building simply because a parameter is not being referenced
in a meaningful way its time for the option to be turned off
(cherry picked from commit e9e1d1a39bfe047a38f153afdc2fe8951174135c)
LICENSE MIT
Remove all references to rpcns4.lib and its included functions RpcNsXXX.
These APIs are no longer supported on Vista. Except for TaAfsAdmSvr
they had been commented out for a long time but we still continued to
link to the library. Loading the library generates a no longer supported
error on Vista. So lets get rid of it.
(cherry picked from commit a5e5736c67cdf3d08bce548447bc7635b65329c2)
LICENSE MIT
Use GetUserNameEx to obtain the username instead of searching the registry.
Try UserPrincipalName first and fallback to SamCompatible.
(cherry picked from commit 512ec8f51880d4e9e1cc5564bd27991a2c2915d6)
LICENSE MIT
FIXES 82701
Modifying the registry and the startup shortcuts is not permitted under
Vista UAC. Generate an error dialog and notify the end user.
(cherry picked from commit 7a8d8da95f5bd23fbb97d93840f3a2c5a145a695)
LICENSE MIT
Do not return BAD_NETWORK_ERROR in response to attempts to create directories
or files in the Freelance root.afs volume. Instead return ACCESS_DENIED.
BAD_NETWORK_ERROR was being sent because the Freelance cell has no
vldb servers. Short circuit the error by testing for freelance
in CreateFile and MakeDir
(cherry picked from commit 61bb3b7f096f3b10075dcb1403879e3ec518276b)
LICENSE IPL10
add magic vnodes like the magic mounts we already have. you can now
cons up any afs vnode if you know the cell and fid.
(cherry picked from commit a5dbdd03b8187f0c2c146f330e9adc42e103432c)
LICENSE MIT
Enable the 32-bit tools that are distributed for use in the WOW64 environment
to access the 64-bit registry keys instead of the 32-bit versions. This
will remove the need to support both 64-bit and 32-bit versions of the
values.
(cherry picked from commit cd82af9d4e50798e8fe5cf0f2f022f1f40e2b59e)
LICENSE MIT
Add support for returning RANGE_NOT_LOCKED errors
Do not attempt to add a mount point for share names of the form
<cell><mount-type><volume>. Its just a big waste of time. DNS
queries and CellServDB file searches are expensive.
(cherry picked from commit 0caf7c54dfac30c92587031af6a902f4d33b2e22)
LICENSE IPL10
remove VOID since it conflicts with this. and we shouldn't need it anymore anyway
(cherry picked from commit 607c0959f085a6d8283f78a9969c450930cab084)
LICENSE MIT
add lock assertions to ensure we are holding write locks when
manipulating scache refcounts
(cherry picked from commit 629feb40c46658d08e5dc3e6dcd1114996b8c734)
LICENSE MIT
for multi must compute the host string from the ip address for each server
(cherry picked from commit f2be22f71001852d5d461b34ba2c13d3d53d5e10)
LICENSE MIT
When updating the volume status do not introduce a deadlock by holding
cm_serverLock
(cherry picked from commit 1a95df210c51a4e1416e5996b99c5640e4265255)
LICENSE MIT
Ensure that the volume status is always updated after a server_ref
status change.
(cherry picked from commit 04cac1963a4716e57447b28c00629f0ef5a15258)
LICENSE MIT
do not leak references
remove signed vs unsigned warnings
retry all RXGEN_OPCODE responses regardless of whether or not the entry
had to be moved to consolidate the list.
(cherry picked from commit 5d61f37949fd561f4c9d777cc67c5fd3db835e29)
LICENSE MIT
No longer attempt to validate the target of the symlink.
There is no method of doing so reliably.
(cherry picked from commit d78bff3dbd561f9d0f4976eeb264e601216a37c6)
LICENSE MIT
VNOVOL means the volume could not be attached which from the client
perspective is the same as being offline. The VLDB should not be
queried in response to this error.
(cherry picked from commit a0e454bd41ec8b363f7669d620d4ff3caa8caf1d)
LICENSE MIT
FIXES 84279
Do not translate the character set of the pioctl path data.
These paths were not provided by the file system but by the end user.
Therefore, they were not converted to the OEM character set.
With this change the AFS shell context menu will be displayed for
non-ASCII file names when ANSI file names are being used as well
as the fs commands will work.
(cherry picked from commit b85428263c75316ff8fd15c188617f4eb02670a8)
LICENSE MIT
Instead of probing servers one at a time, use multi_rx versions of
RXAFS_GetCapabilities, RXAFS_GetTime and VL_ProbeServer to permit
simultaneous probing of servers in constant time regardless of the
number of servers.
(cherry picked from commit df5cfb3de1deae455d264780d3987c7fa6f33d2c)
LICENSE MIT
Add multi versions of RXAFS_GetCapabilities, RXAFS_GiveUpAllCallBacks,
and VL_ProbeServer.
(cherry picked from commit 5c7dfcad135a1c34942d264be2b72196e3b96003)
LICENSE MIT
When 'multi' is applied to an RPC definition, rxgen produced split prototypes,
Start and End, but failed to produce the prototype for the normal RPC call.
(cherry picked from commit 0088e5cb20c90a899aacb62cd13b57a7bbe13432)
LICENSE MIT
use clock time instead of osi_Time() for server down time tracking
for proper comparison with expiration times.
(cherry picked from commit ac614c7609f61394da1ea425940a09bf98fbc0ea)
LICENSE MIT
Install the dll dependencies for translate_et as part of the client
component.
(cherry picked from commit 48fe8ad6ab68620dbfc26ad44f078c01ba5174c5)
LICENSE IPL10
FIXES 84778
* Vnode package concurrency model was overhauled. Unlike the old model,
where concurrency was controlled via reader/writer locks, the new model
uses a per-vnode finite state automata.
* add several new volume states to deal with volume vnode list operations
* a new FSSYNC command code was added to allow volume utilities to close
out a volume operation without causing the fileserver to mount the volume
* a new FSSYNC command code was added to allow volume utilities to
transition a volume into a hard error state
* the salvageserver has been modified to keep volume group partition
path data coherent with the fileserver (like many other parts of the
volume package, this code assumes all members of the group are stored on
the same vice partition)
* make salvageserver correctly handle volume state when a child worker
process terminates abnormally
* update volume pre-attachment code to deal with move volumes across
partitions on the same server
* add volume state sanity checks to more volume package interfaces
* original vos online patch introduced a race condition; rearchitect vos
online/offline to eliminate race condition, and reduce i/o load caused
by operation
* unify duplicate code in volserver related to servicing vos examine and
vos listvol requests
* add doxygen formatted comment blocks to numerous volume package elements
* various updates to fssync-debug to allow dumping vnode state, and
updates to deal with added volume and vnode states
* several 1.5-specific fixes related to fssync and salvsync
(cherry picked from commit ed25934c1fe96b143715025b49104e75dce9a361)