LICENSE MIT
kfw referrals logic broke the logic for automated configuration of
the workstation cell with a new identity. Now if a referrals
response is returned, assume the cell belongs with the new identity.
In the long term, we need to change the logic as follows:
1. if realm indicates referrals, try to obtain the krb5 service ticket
but do not generate a token
2. if the service ticket can be obtained and
a. if the cell is not bound to any other identities,
then bind it to this one
b. if the cell is bound to another identity, prompt the user to ask
which identity (or both) should this cell be bound to and follow
the user's instruction
LICENSE IPL10
FIXES 123604
The code has long contained a backing_dev_info structure, but it
was never attached to anything. Initialize its use properly with
bdi_init, and attach it to i_mapping for every newly filled inode.
bdi_init and bdi_destroy are needed for proper initialization of
some percpu counters, otherwise we get some oopses.
LICENSE MIT
When loading the afsdhook.dll require that it be in the same directory
as afsd_service.exe. This prevents LoadLibrary() from searching the PATH
environment variable if it cannot be found. If the PATH environment
variable contains a path in AFS, the library will fail to load and take
a very long time doing so.
LICENSE MIT
FIXES 123571
The Windows code base was implemented ignorant of linked cells as
defined in the src/auth/cellconfig.h struct afsconf_cell. The code
that made use of the afsconf_cell objects would leak the memory from
the linkedCell field if is non-NULL.
Add cm_SearchCellFileEx which is an extended version of cm_SearchCellFile
capable of returning a linked cell obtained from the CellServDB file.
Update GetCellConfig to populate the linkedCell field of the afsconf_cell
structure.
Modify cm_cell_t to support a linked cell name.
Modify cm_GetCell_Gen() to populate the cm_cell_t linked cell and enforce
that two cells are linked to each other.
Modify cm_GetVolumeByID() and cm_GetVolumeByName() to perform fallback
to the linked cell if the response is CM_ERROR_NOSUCHVOLUME.
LICENSE BSD
rename RWLOCK_INIT to AFS_RWLOCK_INIT in order to maintain naming
consistency and to distinguish them from the new RWLOCK_INIT macros
being used in rx.
====================
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.
====================
LICENSE BSD
add rx/rx_internal.h as a dependency
====================
LICENSE BSD
define RWLOCK_xxx operations
replace MUTEX_xxx operations with RWLOCK_xxx when it is appropriate
to do so. This improves concurrency on multi-processor systems.
make additional use of atomic operations
LICENSE IPL10
revise things so we don't need to check initd outside analyze.c/InitReq
====================
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.
====================
LICENSE IPL10
since these end up being used, init them too
LICENSE MIT
FIXES 116641
Windows will deliver to OpenAFS UTF16 strings that are not valid Unicode
and cannot be converted to UTF8. Return bad file name errors in those
cases.
Make sure all file server strings once converted to UTF16 can be converted
back. If not, escape the invalid portions of the string so that the
file can be accessed.
LICENSE MIT
if an smb request takes longer than 45 seconds, log info to afsd_init.log
that might be helpful in determining patterns in the smb client disconnects
LICENSE MIT
add the error preprocessor symbol to the error string
if both an NRC_BRIDGE and NRC_NOWILD error are received within
the smb_Listener thread, try re-adding the NetbiosName to the lana
before giving up and quiting.
LICENSE MIT
When reporting the attribute of a directory name which happens to be
a symlink object to a file that cannot be accessed or does not exist,
use the target name to guess the type of the object. If it has an
extension, consider it a file, otherwise report it as a directory.
LICENSE MIT
use WNetEnumXXX functions to list connected disk resources.
If the requested drive letter is an AFS resource, perform the pioctl
test. If it is not, fail immediately.