X-Git-Url: https://git.reactos.org/?p=reactos.git;a=blobdiff_plain;f=reactos%2Fdll%2Fwin32%2Fkernel32%2Fprocess%2Fsession.c;fp=reactos%2Fdll%2Fwin32%2Fkernel32%2Fprocess%2Fsession.c;h=554fc066befb8aaba4392a97b448b5344d46b117;hp=04a43d0ceb08968dda2dcbcf156132ce849cd173;hb=5e5df9a7071e2240cd301321d49fed4b63cfab58;hpb=3f1658e7441b2feaffea752b831e0c714e2ac95e diff --git a/reactos/dll/win32/kernel32/process/session.c b/reactos/dll/win32/kernel32/process/session.c index 04a43d0ceb0..554fc066bef 100644 --- a/reactos/dll/win32/kernel32/process/session.c +++ b/reactos/dll/win32/kernel32/process/session.c @@ -19,11 +19,14 @@ DWORD ActiveConsoleSessionId = 0; /* * @unimplemented */ -DWORD WINAPI -DosPathToSessionPathW (DWORD SessionID, LPWSTR InPath, LPWSTR * OutPath) +DWORD +WINAPI +DosPathToSessionPathW(DWORD SessionID, + LPWSTR InPath, + LPWSTR *OutPath) { UNIMPLEMENTED; - return 0; + return 0; } /* @@ -39,68 +42,74 @@ DosPathToSessionPathW (DWORD SessionID, LPWSTR InPath, LPWSTR * OutPath) * * @unimplemented */ -DWORD WINAPI -DosPathToSessionPathA (DWORD SessionId, LPSTR InPath, LPSTR * OutPath) +DWORD +WINAPI +DosPathToSessionPathA(DWORD SessionId, + LPSTR InPath, + LPSTR *OutPath) { - //DosPathToSessionPathW (SessionId,InPathW,OutPathW); + //DosPathToSessionPathW (SessionId,InPathW,OutPathW); UNIMPLEMENTED; - return 0; + return 0; } /* * @implemented */ -BOOL WINAPI ProcessIdToSessionId (IN DWORD dwProcessId, - OUT DWORD* pSessionId) +BOOL +WINAPI +ProcessIdToSessionId(IN DWORD dwProcessId, + OUT DWORD *pSessionId) { - PROCESS_SESSION_INFORMATION SessionInformation; - OBJECT_ATTRIBUTES ObjectAttributes; - CLIENT_ID ClientId; - HANDLE ProcessHandle; - NTSTATUS Status; + PROCESS_SESSION_INFORMATION SessionInformation; + OBJECT_ATTRIBUTES ObjectAttributes; + CLIENT_ID ClientId; + HANDLE ProcessHandle; + NTSTATUS Status; - if(IsBadWritePtr(pSessionId, sizeof(DWORD))) - { - SetLastError(ERROR_INVALID_PARAMETER); - return FALSE; - } - - ClientId.UniqueProcess = (HANDLE)(ULONG_PTR)dwProcessId; - ClientId.UniqueThread = 0; + if (IsBadWritePtr(pSessionId, sizeof(DWORD))) + { + SetLastError(ERROR_INVALID_PARAMETER); + return FALSE; + } - InitializeObjectAttributes(&ObjectAttributes, NULL, 0, NULL, NULL); + ClientId.UniqueProcess = (HANDLE)(ULONG_PTR)dwProcessId; + ClientId.UniqueThread = 0; - Status = NtOpenProcess(&ProcessHandle, - PROCESS_QUERY_INFORMATION, - &ObjectAttributes, - &ClientId); - if(NT_SUCCESS(Status)) - { - Status = NtQueryInformationProcess(ProcessHandle, - ProcessSessionInformation, - &SessionInformation, - sizeof(SessionInformation), - NULL); - NtClose(ProcessHandle); + InitializeObjectAttributes(&ObjectAttributes, NULL, 0, NULL, NULL); - if(NT_SUCCESS(Status)) + Status = NtOpenProcess(&ProcessHandle, + PROCESS_QUERY_INFORMATION, + &ObjectAttributes, + &ClientId); + if (NT_SUCCESS(Status)) { - *pSessionId = SessionInformation.SessionId; - return TRUE; + Status = NtQueryInformationProcess(ProcessHandle, + ProcessSessionInformation, + &SessionInformation, + sizeof(SessionInformation), + NULL); + NtClose(ProcessHandle); + + if (NT_SUCCESS(Status)) + { + *pSessionId = SessionInformation.SessionId; + return TRUE; + } } - } - SetLastErrorByStatus(Status); - return FALSE; + SetLastErrorByStatus(Status); + return FALSE; } /* * @implemented */ -DWORD WINAPI -WTSGetActiveConsoleSessionId (VOID) +DWORD +WINAPI +WTSGetActiveConsoleSessionId(VOID) { - return ActiveConsoleSessionId; + return ActiveConsoleSessionId; } /* EOF */