Windows: foo.backup -> foo.backup too many symlinks
authorJeffrey Altman <jaltman@your-file-system.com>
Fri, 23 Jan 2015 00:48:32 +0000 (19:48 -0500)
committerJeffrey Altman <jaltman@your-file-system.com>
Mon, 9 Feb 2015 23:02:31 +0000 (18:02 -0500)
commit0008ca80a873975e042993b30cbdc47d8f8f116b
tree8368091c965e9b84f67a6c70e37e9a9f0a4c62fd
parent73cad3be0a3489237ab7e66d3b12c52ffb0b67d0
Windows: foo.backup -> foo.backup too many symlinks

In the case where an explicit mount point to a .backup volume is
resolved from a .backup volume the cache manager refuses to evaluate
the mount point target.  This is meant to address unwanted recursion
in the directory tree searches.

Change the error code to ERROR_TOO_MANY_SYMLINKS and propagate that
error to the AFS redirector.  That will result in the application
receiving STATUS_ACCESS_DENIED instead of
STATUS_REPARSE_POINT_NOT_RESOLVED.

The STATUS_REPARSE_POINT_NOT_RESOLVED error causes cmd.exe and
powershell.exe to terminate recursive directory searches.

Change-Id: I5dfdd835e8696b823af45a8e5c33a5ca6320cf31
Reviewed-on: http://gerrit.openafs.org/11693
Tested-by: BuildBot <buildbot@rampaginggeek.com>
Reviewed-by: Jeffrey Altman <jaltman@your-file-system.com>
src/WINNT/afsd/cm_vnodeops.c
src/WINNT/afsrdr/user/RDRFunction.c