From 5f60992bfe17b74526bf7d26c5e0df2a2d1c4833 Mon Sep 17 00:00:00 2001 From: Jeffrey Altman Date: Tue, 24 Jul 2012 13:56:02 -0400 Subject: [PATCH] Windows: NPAddConnection3 debugging Define Add3FlagsToString() and use it when generating debug output from NPAddConnection3(). Change-Id: I73251890659ea5a833b5f67d26129053c625b58a Reviewed-on: http://gerrit.openafs.org/7860 Tested-by: BuildBot Reviewed-by: Jeffrey Altman Tested-by: Jeffrey Altman --- src/WINNT/afsrdr/npdll/AFS_Npdll.c | 96 +++++++++++++++++++++++++++++- 1 file changed, 95 insertions(+), 1 deletion(-) diff --git a/src/WINNT/afsrdr/npdll/AFS_Npdll.c b/src/WINNT/afsrdr/npdll/AFS_Npdll.c index d1a488622..066918d37 100644 --- a/src/WINNT/afsrdr/npdll/AFS_Npdll.c +++ b/src/WINNT/afsrdr/npdll/AFS_Npdll.c @@ -610,6 +610,93 @@ NPAddConnection( LPNETRESOURCE lpNetResource, return NPAddConnection3( NULL, lpNetResource, lpPassword, lpUserName, 0 ); } +static void +Add3FlagsToString( DWORD dwFlags, WCHAR *wszBuffer, size_t wch) +{ + HRESULT hr; + int first = 1; + + *wszBuffer = L'\0'; + + if (dwFlags & CONNECT_TEMPORARY) { + + hr = StringCbCat( wszBuffer, wch, L"TEMPORARY"); + + if ( FAILED(hr)) { + + return; + } + + first = 0; + } + + if (dwFlags & CONNECT_INTERACTIVE) { + + if (!first) { + + hr = StringCbCat( wszBuffer, wch, L"|"); + + if ( FAILED(hr)) { + + return; + } + } + + hr = StringCbCat( wszBuffer, wch, L"INTERACTIVE"); + + if ( FAILED(hr)) { + + return; + } + + first = 0; + } + + if (dwFlags & CONNECT_PROMPT) { + + if (!first) { + + hr = StringCbCat( wszBuffer, wch, L"|"); + + if ( FAILED(hr)) { + + return; + } + } + + hr = StringCbCat( wszBuffer, wch, L"PROMPT"); + + if ( FAILED(hr)) { + + return; + } + + first = 0; + } + + if (dwFlags & CONNECT_INTERACTIVE) { + + if (!first) { + + hr = StringCbCat( wszBuffer, wch, L"|"); + + if ( FAILED(hr)) { + + return; + } + } + + hr = StringCbCat( wszBuffer, wch, L"DEFERRED"); + + if ( FAILED(hr)) { + + return; + } + + first = 0; + } +} + DWORD APIENTRY NPAddConnection3( HWND hwndOwner, @@ -630,6 +717,7 @@ NPAddConnection3( HWND hwndOwner, HANDLE hToken = NULL; LARGE_INTEGER liAuthId = {0,0}; HRESULT hr; + WCHAR wszFlagsString[1024]=L""; __Enter { @@ -657,7 +745,13 @@ NPAddConnection3( HWND hwndOwner, } #ifdef AFS_DEBUG_TRACE - AFSDbgPrint( L"NPAddConnection3 processing\n"); + Add3FlagsToString( dwFlags, wszFlagsString, 1024); + + AFSDbgPrint( L"NPAddConnection3 processing Remote %s User %s Pass %s Flags %s\n", + lpNetResource->lpRemoteName, + lpUserName == NULL? L"use-default": lpUserName[0] ? lpUserName : L"no-username", + lpPassword == NULL? L"use-default": lpPassword[0] ? L"provided" : L"no-password", + wszFlagsString); #endif if( lpNetResource->lpLocalName != NULL) { -- 2.39.5