wtsapi32: Improve the stub for WTSQuerySessionInformation(WTSClientProtocolType).

This commit is contained in:
Hans Leidekker 2022-12-01 16:01:40 +01:00 committed by Alexandre Julliard
parent 508b793ec9
commit 090e574adb
2 changed files with 34 additions and 0 deletions

View file

@ -192,6 +192,7 @@ static void test_WTSQuerySessionInformation(void)
WCHAR *buf1, usernameW[UNLEN + 1], computernameW[MAX_COMPUTERNAME_LENGTH + 1];
char *buf2, username[UNLEN + 1], computername[MAX_COMPUTERNAME_LENGTH + 1];
DWORD count, tempsize;
USHORT *protocol;
BOOL ret;
SetLastError(0xdeadbeef);
@ -283,6 +284,15 @@ static void test_WTSQuerySessionInformation(void)
ok(!stricmp(buf2, computername), "expected %s, got %s\n", computername, buf2);
ok(count == tempsize + 1, "expected %lu, got %lu\n", tempsize + 1, count);
WTSFreeMemory(buf2);
count = 0;
protocol = NULL;
ret = WTSQuerySessionInformationA(WTS_CURRENT_SERVER_HANDLE, WTS_CURRENT_SESSION, WTSClientProtocolType,
(char **)&protocol, &count);
ok(ret, "got %lu\n", GetLastError());
ok(protocol != NULL, "protocol not set\n");
ok(count == sizeof(*protocol), "got %lu\n", count);
WTSFreeMemory(protocol);
}
static void test_WTSQueryUserToken(void)

View file

@ -418,6 +418,18 @@ BOOL WINAPI WTSQuerySessionInformationA(HANDLE server, DWORD session_id, WTS_INF
return FALSE;
}
if (class == WTSClientProtocolType)
{
USHORT *protocol;
if (!(protocol = heap_alloc(sizeof(*protocol)))) return FALSE;
FIXME("returning 0 protocol type\n");
*protocol = 0;
*buffer = (char *)protocol;
*count = sizeof(*protocol);
return TRUE;
}
if (!WTSQuerySessionInformationW(server, session_id, class, &bufferW, count))
return FALSE;
@ -458,6 +470,18 @@ BOOL WINAPI WTSQuerySessionInformationW(HANDLE server, DWORD session_id, WTS_INF
return FALSE;
}
if (class == WTSClientProtocolType)
{
USHORT *protocol;
if (!(protocol = heap_alloc(sizeof(*protocol)))) return FALSE;
FIXME("returning 0 protocol type\n");
*protocol = 0;
*buffer = (WCHAR *)protocol;
*count = sizeof(*protocol);
return TRUE;
}
if (class == WTSUserName)
{
DWORD size = UNLEN + 1;