+
+New development series 1.5.0 begun (17 Aug 2005)
+
+Since 1.3.87: 1.4.0 rc1 released (17 Aug 2005)
+ * Byte-range locking as described in cm_vnodeops.c has been implemented.
+
+ * When the cache manager reports ALLBUSY or ALLOFFLINE for
+ a resource we should not be returning status codes such
+ as Network Busy or Remote Host Down because these errors
+ will imply that the AFS Client Service is Busy or Down
+ and that is simply not the case. Instead we will return
+ Bad Network Path as the path is temporarily not available.
+
+ Instead of returning Sharing Paused when there is a
+ timeout error, return Timeout. Once again, the AFS Client
+ Service is not paused.
+
+ * afscreds.exe would display an Obtain Creds dialog when
+ the expired credentials reminder was triggered even
+ if there was no network path to the KDC. This is prevented
+ by adding KDC probe logic to the reminder thread.
+
+ * afscreds.exe would display expired tokens no differently
+ than unexpired ones. This would make it difficult for the
+ user to distiguish when the tokens were expired. For the
+ English build added a new resource string "(expired) that
+ is displayed instead of the expiration time.
+
+Since 1.3.86:
+ * "fs wscell" when executed in freelance mode will return the
+ name of the cell configured in the registry. The root.afs
+ volume is not loaded from this cell, but it is used for the
+ default for aklog and integrated login.
+
+ * "fs mkmount, fs rmmount, symlink make, symlink remove" will
+ no longer work on \\AFS\all when freelance is being used
+ unless the user is a member of the "AFS Client Admins" Windows
+ Security group.
+
+ * some more checks performed during persistent cache validation.
+
+Since 1.3.85:
+ * Optimize calls to cm_CheckServer from cm_Analyze. Only check
+ down servers for the current cell not all cells.
+
+ * If the scache LRU list becomes corrupted, the AFS Client Service
+ might enter an infinite loop at startup. Detect the corruption
+ and discard the cache contents in this case.
+
+ * Fixed the Explorer Shell's remove mountpoint functionality.
+
+ * Fixed a deadlock caused by the holder of cm_aclLock attempting to
+ obtain a mutex lock on a cm_scache_t object whose lock is held by
+ a thread attempting to obtain the cm_aclLock.
+
+Since 1.3.84:
+ * Really fixed DNS AFSDB queries to ensure that "csail" cannot be
+ misinterpretted as "csail.mit.edu" when the resolver
+ is configured to append ".mit.edu" to failed DNS queries.
+
+ * Added a new registry key, "LogoffPreserveTokens" (see registry.txt),
+ that can be used to force the preservation of user tokens upon logout.
+
+ * Update the NSIS install scripts to use NSIS 2.07. This release adds
+ recommended installation categories: AFS Client, AFS Administrator,
+ AFS Server, AFS Development Kit. Each category includes a different
+ default subset of the OpenAFS components.
+
+ The OpenAFS logo is now associated with the NSIS uninstall entry
+ in the Add/Remove Programs control panel.
+
+ * The user name associated with AFS tokens when obtained with
+ integrated login, the afs systray tool, or aklog will always
+ include the full Kerberos 5 user principal name regardless of
+ whether or not the cell is local to the realm.
+
+ * Eric William's IFS redirector has been checked onto the CVS head.
+ This code is experimental at the current time and is not being
+ incorporated into the 1-4 branch releases. Instructions for
+ building from sources are found in the top-level README-NT file.
+
+ * Modify integrated login so that it does not enter an infinite
+ loop if the service is not set to auto start.
+
+ * Added asetkey.exe used to set a Kerberos 5 key for use by the
+ AFS server daemons
+
+ * Added uninstall.exe to Wix installation
+
+ * More modifications to algorithms used to wake sleeping threads.
+
+Since 1.3.83:
+
+ * Changes to the algorithms used to wake threads when they are
+ put to sleep because of conflicts over buffer operations.
+
+Since 1.3.82:
+ * The OpenAFS integrated logon obtains Kerberos 5 tickets as part of
+ the process of producing AFS tokens. The tokens are stored within
+ the AFS Client Service but the Kerberos 5 tickets have been discarded.
+ New functionality has been added to temporarily copy the tickets to
+ a file ccache during the short window between the NPLogonNotify and
+ WinLogon Logon Event. The Logon Event handler starts a process as
+ user, afscpcc.exe, that copies the tickets into the default ccache.
+ The file ccache is then destroyed by the event handler.
+
+ * During synchronization operations on stat cache entries, if threads
+ are forced to sleep it was possible that the threads would not be
+ woken under heavy load.
+
+ * Enforce the delete on close flag specified by the NTCreateX()
+ operation.
+
+ * A race condition in the rx library was fixed that resulted in
+ a deadlock in rx_NewCall when the RX_CONN_MAKECALL_WAITING flag
+ was cleared when threads were still waiting to use the
+ connection. Also, fixed a potential case in which the
+ connection could be destroyed while threads were waiting to use it.
+
+ * The DNLC freelist has been seen to become corrupted with still
+ active entries being stored on the freelist. Changes were made
+ to perform a better job of cleaning entries before placing them
+ onto the freelist; marking them with the correct magic value when
+ purging the list; and allowing the list to be purged on startup
+ if the cache validation fails.
+
+ * Windows Crash Reporting does not get triggered for afsd_service.exe
+ because it provides its own top level exception handler. This patch
+ places an explicit call to ReportCrash() on platforms which support
+ it. (XP and above.)
+
+ If you configure Crash Reporting via AD Policy to capture crash
+ reports within the domain, then you will receive this output.
+
+ * Generate MiniDumps independent of the Windows Crash Reporting.
+
+ (a) If an exception occurs,a minidump will be generated at the path
+ %TEMP%\afsd.dmp. The type of minidump defaults to Normal but
+ can be set to any other type via use of the
+ registry.
+
+ [HKLM\SOFTWARE\OpenAFS\Client] MiniDumpType (DWORD)
+
+ (b) MiniDumps can be generated at any time using the "fs minidump"
+ command. This allows you to generate a minidump without
+ stopping the process or even requiring the use of a debugger
+ on the system.
+
+ * an RX connection which reports bad ticket now treats it the same way
+ the expired ticket is treated. The ticket is removed from the
+ connection and a new anonymous connection is established.
+
+ * fs memdump now requires that the caller be in the AFS Client Admins
+ group
+
+ * additional debugging information is provided in cm_Analyze when the
+ error code is ignored.
+
+ * Fix a regression introduced into the pioctl() client code which
+ will cause a crash in winlogon.exe, explorer.exe and fs.exe if
+ MIT KFW is not installed. (1.3.82a)
+
+ * Remove AFS Gateway option from OpenAFS Control Panel (1.3.82a)
+
+Since 1.3.81:
+ * Fix a race condition in cm_EndCallbackGrantingCall() that
+ could leave 'nrevp' pointing to freed memory. In the process,
+ optimize the processing to ensure that the applications monitoring
+ the status of the stat cache entry are only notified at most
+ once.
+
+ * Conditionalize access to the Explorer Shell AFS->Mount Point
+ ->Remove menu item. Disable the item if the selected item(s)
+ are not mount points.
+
+ * Activate AFS RPC (RX) Free Packet Queues stored in Thread
+ Local Storage. This eliminates thread contention on the
+ global RX free packet queue. This should improve performance
+ on multi-CPU systems.
+
+ * Fix the IP address filtering code to properly load/unload
+ the IPHelper DLL so that Windows XP/2003 and beyond systems
+ do not have to manually probe the registry.
+
+ * CleanupACLEnt() was not being called consistently with
+ the cm_scache_t object referred to by the back pointer
+ mutex locked. This could in very rare conditions lead to
+ an invalid memory access.
+
+ * Added a script command to the msi installer "afs_replace"
+ which can be used to replace one version of OpenAFS with
+ another without requiring an uninstall and reinstall if
+ the installed msi is no longer in its original location.
+
+ * Apparently the problem with multi-domain forests with cross-
+ realm trusts to non-Windows realms was not entirely solved.
+ The authentication to the AFS SMB service failed because
+ the wrong name was being used. Using ASU as an example,
+ the authentication was being performed with the name
+ "QAAD\user" (an account in the forest root) and not
+ "user@ASU.EDU (the MIT Kerberos principal used to login with)
+
+ The solution was to add an additional dependency on KFW
+ in order or to be able to easily obtain the client principal
+ name stored in the MSLSA ccache TGT. This information is
+ used in two locations:
+
+ - the pioctl() function
+
+ - a new WinLogon Event Handler for the "logon" event.
+
+ The pioctl function will now be able to use the correct
+ name when calling WNetAddConnection2() and the "logon"
+ event handler will now be able to call WNetAddConnection2().
+ The hope is that the "logon" event handler will be called
+ before the profile is loaded but I have not guarrantee
+ that will happen.
+
+Since 1.3.80:
+ * Fixed a locking error in cm_TryBulkStat() which had the
+ potential of deadlocking the system for the length of time
+ it takes to perform a bulk status fetch operation.
+
+ * Replaced time conversion code (UnixTime <-> FILETIME) to
+ be completely arithmetic instead of relying on a bizarre
+ algorithm involving a variety of C RTL time functions.
+ This has the side effect that UnixTime and FILETIME which
+ are both stored in UTC are interpretted as UTC throughout
+ the year. Windows will apply the same localization to AFS
+ as it does to NTFS. Applications which rely on the ability
+ to sync files between the two file systems will no longer
+ see the timestamps of files in AFS change an hour relative
+ to the files stored in NTFS or Windows based backup devices.
+
+ * Fixed a invalid memory access under a bizarre circumstance.
+ Windows will allow a physical mass media device to be
+ installed via Plug N Play to the system and will assign it
+ the lowest available drive letter. This is true even if the
+ drive letter is currently assigned in the user session to
+ a network device via NET USE (or its equivalent.) When this
+ happens, queries sent to the CIFS server will contain invalid
+ data. This invalid data was not being caught by the AFS
+ Client Service and was resulting in a crash when Freelance
+ mode was in use.
+
+ * Fixed a reference count error when registering callbacks
+ on a stat cache object if the callback was already registered
+
+ * Add a case to cm_Analyze() in order to handle the case where
+ cm_GetConnByMServers() returns CM_ERROR_NOSUCHVOLUME because
+ the server list for the volume is empty. In this case, force
+ an update of the volume info and retry.
+
+ * Insert a missing cm_EndCallbackGrantingCall() which could
+ result in threads waiting for a callback to complete to never
+ be woken up.
+
+ * In the persistent cache, there is a maximum number of volume
+ entries. Allow volume entries to be reused if the maximum
+ number have been allocated and their reference count is zero.
+
+ * If we already have a dead virtual connection object, don't
+ ignore the fact that additional dead vc objects must be taken
+ care of.
+
+ * Removed a deadlock condition introduced in the summer of 2004.
+ Do not hold mx locks around calls to RX functions including
+ rx_NewCall(). That is what reference counts on the rx_connection
+ object are for.
+
+ * Fixed an initialization error in afslogon.dll which could
+ result in random behavior including a failure to terminate
+ the NPLogon function. (1.3.80b)
+
+ * Fixed an error preventing the use of SMB authentication
+ on Windows 2000. (1.3.80a)
+
+Since 1.3.77:
+ * Updated CellServDB to Public CellServDB 16 Mar 2005
+
+ * Fixed DNS AFSDB queries to ensure that "csail" cannot be
+ misinterpretted as "csail.mit.edu" when the resolver
+ is configured to append ".mit.edu" to failed DNS queries.
+
+ * Fixed another case in which the client would replace connections
+ to the host when it was not necessary. In this case the
+ situation would occur if cryptall was on and the connections
+ were unauthenticated due to lack of an appropriate token.
+
+ * OpenAFS for Windows has failed to work at sites which are
+ utilizing a cross-realm trust between an MIT/Heimdal realm
+ and a multi-domain Windows forest when the workstation being
+ accessed is not located in the root domain. This is caused
+ by a bug in the workstation which was triggered after the
+ introduction of Windows 2003 Server. When the bug is triggered,
+ the workstation attempts to authenticate users to afsd_service.exe
+ by contacting the Domain Controller instead of using the
+ LSA loopback authentication mechanism.
+
+ One of the reasons this bug occurs is because the workstation
+ does not have a reliable way of knowing that the service whose
+ netbios name is "AFS" is located on the workstation. This will
+ be fixed starting in Longhorn Beta 1 by Microsoft. The
+ "BackConnectionHostNames" registry value will be used to
+ indicate that the authentications to that service name should
+ be performed using the loopback authentication mechanism.
+
+ In the meantime, when Logon Caching is enabled, we can force
+ afsd_service.exe to authenticate using the logon cache before
+ contacting the Domain Controller. This will work with both
+ password and smart card based logons.
+
+ * The allDown logic in cm_ConnByMServers() was wrong. The allDown
+ flag should not be cleared if a volume's server reference is
+ marked as "offline". In the case where all of the volume's
+ servers are either "down" or the volumes are "offline", we want
+ cm_Analyze() to process the condition as CM_ERROR_ALLOFFLINE
+ instead of as CM_ERROR_TIMEDOUT. In fact, CM_ERROR_TIMEDOUT
+ should never occur in practice.
+
+ In the case of CM_ERROR_ALLOFFLINE, cm_Analyze() will sleep for
+ 5 seconds, clear the server down and volume busy flags, and
+ then force an update from the VLDB. This allows the client to
+ update the location of a volume if the reason for it being
+ marked offline is because it is being moved. Calls to
+ cm_ConnByMServers() will be retried either until success or
+ the RDRtimeout period is reached.
+
+ * Correct the Power Management code behavior in response to
+ Standby, Suspend, and Shutdown events. Instead of flushing the
+ buffers associated with the mounted SMB submounts, simply write
+ all buffers which are marked dirty.
+
+ * Added support for "TheseCells" to afslogon.dll. "TheseCells"
+ provides a list of cells other than the default cell for which
+ tokens should be obtained using the default Kerberos principal.
+ This functionality is logon domain specific and is only available
+ when using KFW for authentication.
+
+ * Fixed FindNext Invalid Handle error caused by over agressive
+ attempts at garbage collecting dirSearch entries when the
+ dirSearch ID wraps from the maximum value to 1.
+
+ * Add support for registry defined server preferences for VLDB and
+ File servers. See registry.txt for details.
+
+ * Increased default cache size to 96MB and default number of cache
+ entries to 10,000.
+
+ * Fixed refCount leaks related to directory lookups and pioctl calls.
+
+ * Callbacks revoked during a race condition with an attempt to
+ obtain the same callback no longer result in an inaccessible
+ stat cache entry.
+
+ * New command line tool:
+
+ afsdacl : Set or reset the DACL to allow starting or stopping
+ the afsd service by any ordinary user.
+
+ Usage : afsdacl [-set | -reset] [-show]
+ -set : Sets the DACL
+ -reset : Reset the DACL
+ -show : Show current DACL (SDSF)
+
+ * IP addresses are no longer queried once at startup. Instead IP
+ addresses are obtained as needed. Loopback adapter addresses are
+ no longer published to the server.
+
+ * Pay attention to the MIT KFW registry configuration for automatic
+ importation of MSLSA credentials. (SOFTWARE\MIT\Leash32,MsLsaImport)
+
+ * Fix (once again) case-sensitive comparisons which was apparently
+ broken in 1.3.72.
+
+ * Activate support for vos listvol -format
+
+ * Population of the "AFS Client Admins" group failed on non-English
+ versions of Windows because the name of the "Administrators" group
+ is localized. Now we lookup the name of the group by using the
+ Administrators Group Alias Relative ID.
+
+ * Multiple cell token acquisition within afscreds.exe was broken in the
+ case of Kerberos 5 cross realm authentication. Instead of contacting
+ the KDC associated with the cell's realm, afscreds would obtain a
+ token from the KDC of the user's realm. This would result in
+ "invalid kvno errors" while authenticating to the AFS servers.
+ Unauthenticated access would work. The symptoms would vary based upon
+ whether or not the VLDB servers had been contacted using unauthenticated
+ connections prior to the user obtaining tokens.
+
+ * The list of ACL entries was becoming corrupted. It appears as if
+ an ACL when it expires was not being appropriately cleaned up. In
+ fact, it was left in the list of ACLs associated with the scache
+ entry.
+
+ * Changed the default @sys name list to "x86_win32 i386_w2k i386_nt40"
+ for 32-bit x86 systems. The default for itanium will be "ia64_win64"
+ and "amd64_win64" for amd 64-bit processors.
+
+ * When executing executables, Windows provides a mechanisms by which
+ the normal search for DLLs can be bypassed. If a file foo.exe is
+ being executed and there exists a file or directory "foo.exe.local"
+ (the contents are ignored if a file), then Windows will search for
+ DLLs first in the "foo.exe.local" directory and second in the
+ directory in which the "foo.exe" file is located.
+
+ Previous releases of OAFW would improperly return
+ STATUS_NOT_A_DIRECTORY instead of the expected
+ STATUS_OBJECT_PATH_NOT_FOUND. This would cause the Windows SMB client
+ to terminate the search for the DLL causing the execution of the
+ application to fail.
+
+ * Rework the reference counting of smb_vc_t objects. The references
+ stored in the waiting locks were not counted. This could result in
+ an assertion if the reference count drops to zero.
+
+ * "fs wscell" returns "Freelance.Local.Root" for the workstation cell
+ when running in freelance mode.
+
+ * Added support for persistent caching of file contents, stat entries,
+ volume data, cell data, and name lookup data. When the registry
+ value, "NonPersistentCaching", is not defined or set to 0 the file
+ specified by "CachePath" becomes a persistent cache file. The
+ size of the cache file is computed at run time. It has a maximum
+ size of approximately 1.2GB. The contents of the file will be
+ validated according to the rules specified by the "ValidateCache"
+ registry value.
+
+ * Added support for UUIDs. UUIDs are kept for as long as the
+ cache file is intact.
+
+ * Added cmdebug.exe and support cache manager debugging callback
+ interfaces in afsd_service.exe.
+
+ Usage: cmdebug -servers <server machine> [-port <IP port>] [-long]
+ [-addrs] [-cache] [-help]
+ Where: -long print all info
+ -addrs print only host interfaces
+ -cache print only cache configuration
+
+ * Symlinks to \\AFS\[all\]... will now be treated the same as
+ symlinks to /afs/.... However, please use /afs/... as otherwise
+ the symlinks won't work on Unix.
+
+ * Correct a problem with local CellID allocation for cells whose
+ server list is obtained via DNS instead of a CellServDB file. If
+ the DNS information expires the CellID assigned to the entry will
+ be changed. This causes all of the cm_scache_t objects which refer
+ to the old cellID number to become useless. Attempts to access
+ files or directories with cm_scache_t objects using the old cellID
+ will fail since the server list cannot be obtained.
+
+ * Correct deadlock condition in cm_EndCallbackGrantingCall which can
+ be triggered if the volume referenced by the cm_scache_t object is
+ offline.
+
+ * The AFS Service needs to respond to SERVICE_ACCEPT_SHUTDOWN messages
+ in addition to SERVICE_ACCEPT_STOP.
+
+ * Move RPC shutdown until after the SMB and RX shutdown procedures
+ complete. Block until RPC shutdown is complete.
+
+ * Modify afslogon.dll (integrated logon) to wait for service if its
+ state is START_PENDING. If the timeout period occurs, reset to
+ the retry interval and not the sleep interval.
+
+ * When renewing the server list for a cell obtained via DNS AFSDB
+ records, the cm_cell_t entry must be removed from the list of all
+ cells. Otherwise, the list of cells will be corrupted.
+
+ * In the dcache and scache modules, use the cm_scache_t dataVersion
+ instead of the cm_fakeDirVersion.
+
+ * Synchronize fs.c with the unix version.
+
+ * The variable used to determine whether a file or virtual memory
+ mapped cache is used was not properly initialized to a default
+ value. If the registry setting "NonPersistentCaching" was not
+ set, the choice would be random. Properly initialized to be
+ "file".
+
+ * The memory mapped view was never unmapped before closing the file
+ at service shutdown. This is now properly cleaned up.
+
+ * Default location of Cache file is now %TEMP%\AFSCache
+
+Since 1.3.76:
+
+ * A bug affecting new installations of 1.3.75/76 would result in
+ the creating of incorrect mountpoints in the freelance root.afs
+ volume for the default cell.
+
+ If "fs \\afs\all\<cellname>" lists a volume name of "root" instead
+ of "root.cell", you have been affected by the bug. To correct the
+ problem, execute the following commands:
+
+ fs rmmount \\afs\all\<cellname>
+ fs rmmount \\afs\all\.<cellname>
+
+ fs mkmount \\afs\all\<cellname> root.cell <cellname>
+ fs mkmount \\afs\all\.<cellname> root.cell <cellname> -rw
+
+Since 1.3.75:
+
+ * A bug has been fixed in the auto-generation of Freelance root.afs
+ symlinks which produced random entries in the \\AFS\all directory.
+
+ * Support has been added for multi-homed servers
+
+Since 1.3.74:
+ * Added a new registry value, "StoreAnsiFilenames", which can be used
+ to force the use of ANSI character sets instead of OEM Code Pages.
+ This feature is useful when users require the ability to create
+ filenames with 8-bit characters and need to access the files from
+ both Latin-1 based Unix systems as well as from Windows.
+
+ Activation of this feature will prevent access to files stored with
+ 8-bit OEM characters.
+
+ * Shutdown all SMB threads in a synchronized manner when stopping the
+ service.
+
+ * There is currently a maximum cache size of 1.3GB. The limit is imposed
+ by the largest contiguous block of unused memory within the 2GB process
+ space which can be assigned to the memory mapped file. Unfortunately,
+ when the executable digital signature verification code is activated
+ Windows sees fit to further segment the process memory which in turn
+ reduces the size of the maximum cache file to less then 800MB. If
+ larger cache sizes are desired, a new registry value should be set:
+
+ HKLM\SOFTWARE\OpenAFS\Client (DWORD) "VerifyServiceSignature" = 0x0
+
+ Setting this value will disable the runtime verification of digital
+ signatures on afsd_service.exe and the afs dlls which it loads. It
+ will not disable the the version number check on those same files.
+ The signature verification is not a security messure and is only meant
+ to enhance the ability to afsd_service.exe to detect potential
+ destablizing mixtures of DLLs from incompatible distributions.
+
+ Added code to auto-disable the signature verification check if
+ the desired cache size is greater then 700MB.
+
+ * Windows' WinTrustVerify(WIN_SPUB_ACTION_PUBLISHED_SOFTWARE) is
+ used to verify the validity of the afsd_service.exe binary
+ as well as each of the AFS DLLs loaded by the service. Not only
+ must the digital signature be valid but the signatures of the
+ DLL must be signed by the same entity as the service.
+
+ * Implement new functions: cm_freelanceMountPointExists and
+ cm_freelanceSymlinkExists. Use them along with other validity
+ checks in cm_freelanceAddMount and cm_freelanceAddSymlink to
+ ensure that name collisions do not occur and that empty strings
+ are not valid file names.
+
+ A symlink may not have a name which would resolve to a valid
+ cell name. Doing so would prevent access to the cell.
+
+ * Add missing cm_HoldSCacheNoLock call to Freelance mount point
+ re-initialization code. The reference counts of the fake root.afs
+ volume scache object(s) would become invalid when the mount point
+ or symlink lists were altered.
+
+ * Add registry entries to provide mappings from the afsdsbmt.ini
+ to the new locations for applications which count on the use
+ of the old Profile file APIs. These apps are likely to fail
+ if the user does not have administrator privileges and the
+ registry is locked down.
+
+ * The afs_config.exe submounts dialog had two errors.
+ First, attempts to remove entries failed because the registry
+ key was being opened without KEY_WRITE privileges.
+ Second, when editing a submount entry, changing the name
+ would add a new key and leave the original one in place.
+ Now the original submount will be removed if its name is
+ changed.
+
+ * In recent months there have been several incidents in which
+ users have experienced problems starting or accessing
+ afsd_service.exe and after significant effort has been spent
+ it has turned out that they have two versions of AFS on the
+ machine or an inconsistent set of DLLs.
+
+ Code has now been added to afsd_service.exe which will walk
+ the list of modules loaded by afsd_service.exe and validate
+ that the version of the AFS DLLs matches the version of the
+ afsd_service.exe executable. If they do not match the service
+ will not start.
+
+ * When Freelance mode is enabled and there is no registry
+ key HKLM\SOFTWARE\OpenAFS\Client\Freelance, afsd_service.exe
+ will attempt to import the afs_freelance.ini file contents.
+ If the file does not exist, it was creating a dummy file
+ with a r/o and r/w entry for the default cell and then
+ importing those values.
+
+ This process has been changed. The temporary file is no
+ longer created. Also, both the OpenAFS Client install
+ directory as well as %WINDIR% are checked for previous
+ afs_freelance.ini files.
+
+ * Added support for VL_GetEntryByNameN(). Still need to add
+ support for VL_GetEntryByNameU() for multi-homed support.
+
+ * Fix a deadlock situation in afscreds.exe when canceling an
+ auto-generated Obtain Tokens dialog
+
Since 1.3.72/73:
+ * Fix the locking of objects during Directory Searches in the
+ SMB/CIFS server. The failure to properly lock the reference
+ counts was resulting in the premature freeing of smb_dirSearch_t
+ objects while they were still in use by the SMB/CIFS client.
+ This does not solve the "Invalid Handle" problem.
+
+ * Fix Find Cell By Name pioctl call to return a valid cell
+ name for the Freelance fake root.afs volume.
+ "Freelance.Local.Root".
+
+ * Fix the Explorer Shell Extension Symlinks->Add operation.
+ The dialog template was missing and the link destination
+ string was too short.
+
* Add support for symlinks to Freelance root.afs volume
Stored at HKLM\SOFTWARE\OpenAFS\Client\Freelance\Symlinks
<number> = "<linkname>:<relative-path>."
* Fix AFS Client Configuration Control Panel to support new SysName
protocol.
+
* Fix a bug in afsd_service.exe which could result in the SysName
not being read from the registry.