[REACTOS] Fix 64 bit build (#465)
[reactos.git] / modules / rostests / apitests / ntdll / NtOpenProcessToken.c
1 /*
2 * PROJECT: ReactOS api tests
3 * LICENSE: LGPLv2.1+ - See COPYING.LIB in the top level directory
4 * PURPOSE: Test for NtOpenProcessToken[Ex]
5 * PROGRAMMER: Thomas Faber <thomas.faber@reactos.org>
6 */
7
8 #include "precomp.h"
9
10 START_TEST(NtOpenProcessToken)
11 {
12 NTSTATUS Status;
13 HANDLE TokenHandle;
14
15 Status = NtOpenProcessToken(NtCurrentProcess(),
16 TOKEN_READ,
17 &TokenHandle);
18 ok(Status == STATUS_SUCCESS, "Status = %lx\n", Status);
19 if (NT_SUCCESS(Status))
20 {
21 ok((LONG_PTR)TokenHandle > 0, "TokenHandle = %p\n", TokenHandle);
22 Status = NtClose(TokenHandle);
23 ok(Status == STATUS_SUCCESS, "Status = %lx\n", Status);
24 }
25
26 Status = NtOpenProcessTokenEx(NtCurrentProcess(),
27 TOKEN_READ,
28 0,
29 &TokenHandle);
30 ok(Status == STATUS_SUCCESS, "Status = %lx\n", Status);
31 if (NT_SUCCESS(Status))
32 {
33 ok((LONG_PTR)TokenHandle > 0, "TokenHandle = %p\n", TokenHandle);
34 Status = NtClose(TokenHandle);
35 ok(Status == STATUS_SUCCESS, "Status = %lx\n", Status);
36 }
37
38 Status = NtOpenProcessTokenEx(NtCurrentProcess(),
39 TOKEN_READ,
40 OBJ_KERNEL_HANDLE,
41 &TokenHandle);
42 ok(Status == STATUS_SUCCESS, "Status = %lx\n", Status);
43 if (NT_SUCCESS(Status))
44 {
45 ok((LONG_PTR)TokenHandle > 0, "TokenHandle = %p\n", TokenHandle);
46 Status = NtClose(TokenHandle);
47 ok(Status == STATUS_SUCCESS, "Status = %lx\n", Status);
48 }
49 }