From: Jeffrey Altman Date: Wed, 12 Mar 2014 16:41:45 +0000 (-0400) Subject: Windows: NP AFSGetConnectionInfo AuthId == 0 X-Git-Tag: upstream/1.8.0_pre1^2~773 X-Git-Url: https://git.michaelhowe.org/gitweb/?a=commitdiff_plain;h=85b747fc549a46b2170c99ab4fb86326894210ef;p=packages%2Fo%2Fopenafs.git 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 51eab1eda..f3b63c89d 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') {