Associate the OpenAFS icon with the Control Panel and Service and
the installers
====================
This delta was composed from multiple commits as part of the CVS->Git migration.
The checkin message with each commit was inconsistent.
The following are the additional commit messages.
====================
Update icon to OpenAFS logo
(cherry picked from commit cc8cfd47bc506396501c9bd2225dd907567e36b7)
remove the logic in cm_Analyze that performs a flush of the server
data and retries when all of the servers are marked down (aka ALLOFFLINE).
Instead return an immediate error to the caller. The servers will be
checked by the background daemon thread and made available when they are.
(cherry picked from commit 18bb5faec22ac8c000b7964eef635a1213500654)
Begin to store the Disk Volume Serial Number and Machine SID in the
AFSCache file for use in detecting system clones. Clones must get
a new UUID for the AFS Client.
(cherry picked from commit 870d414e6c3765ff52a65d1c06fbc5ddfb254f17)
"fs flushall" is like "fs flushvolume" but flushes all data in the cache
====================
This delta was composed from multiple commits as part of the CVS->Git migration.
The checkin message with each commit was inconsistent.
The following are the additional commit messages.
====================
typo
====================
remove extra patch from duplicate pullup
====================
ugh, one more time
(cherry picked from commit 9e348b344dfe9f3940f099beb2acc208fa90a61c)
As stated in the afs-install-notes, the MS Client for Networks should
be enabled on the loopback adapter, so enable it.
Prevent an install failure by not calling CoInitialize twice in the same
thread.
(cherry picked from commit 001f9b9732a3a30ea0c51c12a0f69c400102d7a7)
Apply AFS Client Admins group protect to AFS Shell Extension
Add support for \\afs\<name> to most commands except the symlink methods.
(cherry picked from commit 69a98684f0a85db5618a472835a0e588b01b5d6e)
When updating cell information from DNS, be sure to set a new timeout.
When obtaining cell information from a file, check every two hours to
see if it changed.
(cherry picked from commit 27b81213dfffc5c4d8979f1cc381084d924ea8e1)
Add support to allow use of \\AFS\<foo> where <foo> is either a mount
point or symlink. As <foo> is normally treated as a share name, we
transform it into \\AFS\all\<foo> for processing.
(cherry picked from commit 682f5ffb21575587123ecbb7a5867d1c5495dd4e)
Init 'code' to prevent false errors when integrated logon is disabled
and the service is not running
(cherry picked from commit 0b74a7d25c7f164702843b545615f906a6bdebbd)
Now that OAFW is ready for a stable series, we will default "fs trace"
to off on non-Debug builds. It can be set to on via the TraceOption
registry value. (see registry.txt)
(cherry picked from commit b9fc404bdf16fc3a61f13bffcaadc5d598d02cbd)
Add to mutex objects the ID of the thread that holds the lock. This
will make future debugging much easier.
(cherry picked from commit c0fea634084ee1c223c611c3ab3955a13d1ba884)
It was reported that Microsoft Word when editing files stored in AFS
would cause OAFW to fail to respond. It was determined that a scp->mx
lock was not being released in buf_WaitIO if the no one was waiting
on the scp.
This patch corrects the deadlock and fixes some debugging messages.
(cherry picked from commit 6620b9452bb3f270ebabc29a910918b1f17225f4)
alter the afsd_init.log tag for the TraceOption to not be
Windows Event Log specific.
(cherry picked from commit 48b0320b201c2efe153098e8a5a5e4e6470a41c5)
The log message added to buf_LockedCleanAsync() during the debugging
post 1.3.8201 is output for 1/10th of all buffers once every 5 seconds.
This is a huge performance hit. Move the message so that it is only
output for buffers that are actually dirty.
Also, change the algorithm so that the sqrt() of the number of buffers
are checked every 5 seconds instead of 1/10th. This will do a better
job with very large cache sizes.
(cherry picked from commit ee937439adc8d8ea214c9d53aee0ee5329697c80)
found a deadlock in the expiration check if a MessageBox dialog is
being displayed
(cherry picked from commit 84e761d850c4cf5f76dd844e6e6f738a35f88102)
Do not return error codes from the SMB/CIFS server that can be interpretted
by the SMB/CIFS client as meaning that the AFS Client Service is not
available.
(cherry picked from commit eb00f913748ba8651755451120a1f0d06b1e9cd2)
When tokens expire, do not display an obtain tokens dialog if there
is no network connectivity to the kdc for the realm associated with
the cell.
In the en_US build, stop displaying the expiration time of tokens
after the tokens expire.
(cherry picked from commit 7c34c9b5c0fbdf0b9b9429c2e763c635857974ab)
Ensure that queues that have forward and reverse pointers are
consistent that either both are NULL or neither are.
(cherry picked from commit 4d0a6e73bf46847766512c15d2466627237409e5)
change "fs wscell" to report the registry configured cell name when
using freelance mode.
change "fs mkmount|rmmount" to require membership in AFS Client Admins
group when freelance mode is being used
change "symlink make|remove" to require membership in AFS Client Admins
group when freelance mode is being used
Move some smb init debug messages to afsd_init.log
(cherry picked from commit 81b0f9cf1d0335a1e2f8ae897ba9566c1e4962e3)
Add debug logging to SMB and CM Locking code
Optimize cm_Analyze by only performing a cm_CheckServers on the current
cell instead of all cells
Add code to detect loops to the cm_scache_t validation routines.
(cherry picked from commit ab22c7a587126c100d3c4fe40465f5ba3ebc25f4)
add TellMeAboutYourself functionality and report on capabilities if they
are known. Used instead of WhoAreYou when supported by the cache manager.
(cherry picked from commit 3f3fdba33058521bc3f68edf56ef56910d32f0c8)
FIXES 20007
Update AFS Control Panel to display the default cache location based upon
the SYSTEM %TEMP% environment variable.
(cherry picked from commit 1c3d89463e55844de7b22ca80f72ed7fabda66e7)
Discovered a deadlock due to a violation of lock order. We may not
attempt to obtain a lock on a cm_scache_t mutex while holding the
cm_aclLock.
(cherry picked from commit f21fa57453f4c94690c56cf4933b4eed82d99edc)
remove the pr_Initialize force cell change hack from afskfw lib
====================
This delta was composed from multiple commits as part of the CVS->Git migration.
The checkin message with each commit was inconsistent.
The following are the additional commit messages.
====================
for the longest time aklog implementations with automatic pts registration
have included a work around for a bug in pr_Initialize. The bug fails to
reset the connection when the cell changes. pr_Initialize has been fixed
so we can remove the hack.
(cherry picked from commit c4b1decf6caacb13db666f516ceaf9b65e4371ab)
Visual Studio 2005 Beta 2 has been released. As part of this
release Microsoft has tightened the rules for their C++ compliance.
* no longer can a variable declared in a for() statement be used
outside of the associated command block
* no longer can a function or variable be declared implicitly as
'int'
* several types such as size_t have become 64-bit values on all platforms
* due to type changes the C++ function names in libraries have changed.
This requires the use of different .DEF file export lists
(cherry picked from commit c6a736486eb2704efd03082ff067858a198ae6d0)
Fix AFSDB queries using DNSAPI to always terminate the query string with
a period.
(cherry picked from commit f6d99fbba133ba996610d0c00457408fede942dc)
Support for NSIS 2.07 including named installation configurations
and an Icon for the uninstall entry listed in the Add/Remove Programs
control panel.
(cherry picked from commit 4464c62f92541c8b1f46260d6c4cbdd1ba4cf85f)
fix the return value of IsServiceStartPending.
use IsServiceRunning and IsServiceStartPending in the while loop
(cherry picked from commit be485c959856311853303f5633687adb1efc5109)
Add asetkey.exe
Add uninstall.exe and associated shortcut to Wix
Fix ability to uninstall loopback adapter on non-English Windows versions
====================
This delta was composed from multiple commits as part of the CVS->Git migration.
The checkin message with each commit was inconsistent.
The following are the additional commit messages.
====================
build wix/uninstall directory
====================
use "uninst" for build rule instead of "uninstall"
====================
add "clean" rule
====================
add OpenAFS logo icon
(cherry picked from commit 8f5d90c7cf6137fc5fde1e4063ceb62aeb1abcd1)
if scp is not known when flushing dirty buffers, find it by fid
only free the server list when one was obtained
hold the scp mutex until after the associated bufp flags are updated
only get the volume by id if there is a server callback
map CM_ERROR_ALLOFFLINE to NT Remote Host Down
(cherry picked from commit 06597a0e03faf2f5d4cd8d3f72b93017970b28fd)
The function cm_SyncOp() can cause threads to wait either because there
is a state conflict on the current use of the cm_scache_t object or
a state conflict on the cm_buf_t object. Waiting is always performed
on the cm_scache_t object. However, if the conflict was with the cm_buf_t
object there was no method for waking up the thread when the conflict is
cleared. Now all of the cm_buf_t waiting functions also take a cm_scache_t
and waiting threads are woken if necessary.
cm_scache_t and cm_buf_t objects now have waitCount and waitRequest fields.
The WAITING flag is now cleared by the waking thread who sets waitCount to
zero.
Many improvements to trace logging for these issues.
(cherry picked from commit dfd34687f29ea2c20c5c0438ab4dba11e077f889)
a couple of more locations at which cm_SyncOpDone() either was not
called or was called without holding the scache mutex.
(cherry picked from commit 528c511aabaefcafc01361c8038766ce56fe8e45)
(1) Replace all calls to getenv() with GetEnvironment(). getenv() does
not read from the real environment but instead from a copy created by
the C RTL.
(2) Add support for preserving Kerberos 5 tickets during the Integrated
Logon process. Now when Integrated Logon is used, the tickets will
be stored into the default ccache within the user session.
(3) Stress testing at MIT uncovered two code paths that could leave
threads in a permanent sleep state under heavy load. Calls to
cm_SyncOpDone were added to plug this hole.
====================
This delta was composed from multiple commits as part of the CVS->Git migration.
The checkin message with each commit was inconsistent.
The following are the additional commit messages.
====================
Install afscpcc.exe and register the KFWLogon WinLogon Event Handler
(cherry picked from commit 96472a6b3a71d5d5ef57e2481680920a7e006ffe)