From: Jeffrey Altman Date: Wed, 12 Mar 2014 16:41:45 +0000 (-0400) Subject: Windows: NP AFSGetConnectionInfo AuthId == 0 X-Git-Tag: openafs-stable-1_8_0pre1~773 X-Git-Url: https://git.openafs.org/?p=openafs.git;a=commitdiff_plain;h=85b747fc549a46b2170c99ab4fb86326894210ef;hp=8a6732f9f6d876fc20f5612a4b325533d157d091 Windows: NP AFSGetConnectionInfo AuthId == 0 During the processing of a network provider GetConnectionInfo request if the provided Authentication Logon Session Id is zero, the redirector should attempt to obtain the Logon Session Id in kernel. This was not performed within AFSGetConnectionInfo(). Change-Id: Ia060abfdebc17e52eefac24ac9dc19a7d6434314 Reviewed-on: http://gerrit.openafs.org/10899 Reviewed-by: Jeffrey Altman Tested-by: Jeffrey Altman --- diff --git a/src/WINNT/afsrdr/kernel/lib/AFSNetworkProviderSupport.cpp b/src/WINNT/afsrdr/kernel/lib/AFSNetworkProviderSupport.cpp index 51eab1e..f3b63c8 100644 --- a/src/WINNT/afsrdr/kernel/lib/AFSNetworkProviderSupport.cpp +++ b/src/WINNT/afsrdr/kernel/lib/AFSNetworkProviderSupport.cpp @@ -1466,6 +1466,17 @@ AFSGetConnectionInfo( IN AFSNetworkProviderConnectionCB *ConnectCB, uniRemoteName.MaximumLength = uniRemoteName.Length + sizeof( WCHAR); uniRemoteName.Buffer = (WCHAR *)ConnectCB->RemoteName; + if( ConnectCB->AuthenticationId.QuadPart == 0) + { + + ConnectCB->AuthenticationId = AFSGetAuthenticationId(); + + AFSDbgTrace(( AFS_SUBSYSTEM_NETWORK_PROVIDER, + AFS_TRACE_LEVEL_VERBOSE, + "AFSGetConnectionInfo Retrieved authentication id %I64X\n", + ConnectCB->AuthenticationId.QuadPart)); + } + if( ConnectCB->LocalName != L'\0') {