// ./win32ss/user/winsrv/consrv/api.h:80: #define CON_API(Name, TYPE, RequestName) \ CON_API_ENTRY(Name, TYPE, RequestName); \ CON_API_IMPL(Name, TYPE, RequestName) // ./sdk/include/psdk/intsafe.h:96: typedef unsigned long long UINT_PTR, ULONG_PTR, DWORD_PTR, SIZE_T, size_t; // ./sdk/include/psdk/intsafe.h:101: // typedef _W64 unsigned long ULONG_PTR, DWORD_PTR, SIZE_T; // ./sdk/include/reactos/idl/ms-dtyp.idl:88: // typedef ULONG_PTR SIZE_T; // ./sdk/include/xdk/ntbasedef.h:3: #ifndef ANYSIZE_ARRAY #define ANYSIZE_ARRAY 1 #endif // ./sdk/include/xdk/ntbasedef.h:7: // ./sdk/include/xdk/ntbasedef.h:9: // ./sdk/include/xdk/ntbasedef.h:11: #ifndef __GNU_EXTENSION #ifdef __GNUC__ #define __GNU_EXTENSION __extension__ #else #define __GNU_EXTENSION #endif #endif /* __GNU_EXTENSION */ // ./sdk/include/xdk/ntbasedef.h:322: typedef void *PVOID; // ./sdk/include/xdk/ntbasedef.h:326: typedef void *HANDLE, **PHANDLE; #ifdef STRICT #define DECLARE_HANDLE(n) typedef struct n##__{int unused;} *n #else #define DECLARE_HANDLE(n) typedef HANDLE n #endif // ./sdk/include/xdk/ntbasedef.h:354: typedef unsigned long ULONG, *PULONG; // ./sdk/include/xdk/ntbasedef.h:340: // ./sdk/include/xdk/ntbasedef.h:342: #ifndef VOID #define VOID void typedef char CHAR; typedef short SHORT; #if defined(__ROS_LONG64__) typedef int LONG; #else typedef long LONG; #endif #if !defined(MIDL_PASS) typedef int INT; #endif /* !MIDL_PASS */ #endif /* VOID */ // ./sdk/include/xdk/ntbasedef.h:504: typedef short CSHORT, *PCSHORT; // ./sdk/include/xdk/ntbasedef.h:600: #define NT_SUCCESS(Status) (((NTSTATUS)(Status)) >= 0) // ./sdk/include/xdk/ntbasedef.h:791: #define C_ASSERT(expr) extern char (*c_assert(void)) [(expr) ? 1 : -1] // ./sdk/include/xdk/iotypes.h:184: typedef struct _CLIENT_ID { HANDLE UniqueProcess; HANDLE UniqueThread; } CLIENT_ID, *PCLIENT_ID; // ./sdk/include/xdk/ntifs.template.h:1580: // ./sdk/include/xdk/ntifs.template.h:1585: #if defined(USE_LPC6432) #define LPC_CLIENT_ID CLIENT_ID64 #define LPC_SIZE_T ULONGLONG #define LPC_PVOID ULONGLONG #define LPC_HANDLE ULONGLONG #else #define LPC_CLIENT_ID CLIENT_ID #define LPC_SIZE_T SIZE_T #define LPC_PVOID PVOID #define LPC_HANDLE HANDLE #endif // ./sdk/include/xdk/ntifs.template.h:1591 typedef struct _PORT_MESSAGE { union { struct { CSHORT DataLength; CSHORT TotalLength; } s1; ULONG Length; } u1; union { struct { CSHORT Type; CSHORT DataInfoOffset; } s2; ULONG ZeroInit; } u2; __GNU_EXTENSION union { LPC_CLIENT_ID ClientId; double DoNotUseThisField; }; ULONG MessageId; __GNU_EXTENSION union { LPC_SIZE_T ClientViewSize; ULONG CallbackId; }; } PORT_MESSAGE, *PPORT_MESSAGE; // ./base/applications/drwtsn32/precomp.h:26: // typedef LONG NTSTATUS; // ./modules/rosapps/applications/net/tsclient/rdesktop/types.h:183: // typedef uint32 NTSTATUS; // ./modules/rostests/tests/tokentest/tokentest.c:19: // typedef LONG NTSTATUS, *PNTSTATUS; // ./modules/rostests/win32/DriverLoading/Application/DriverTester.h:11: // typedef LONG NTSTATUS; // ./sdk/include/ddk/hidsdi.h:24: // typedef LONG NTSTATUS; // ./sdk/include/host/typedefs.h:78: // typedef INT NTSTATUS, POOL_TYPE; // ./sdk/include/psdk/ntsecapi.h:152: // typedef LONG NTSTATUS, *PNTSTATUS; // ./sdk/include/psdk/subauth.h:70: // typedef LONG NTSTATUS, *PNTSTATUS; // ./sdk/include/reactos/idl/eventlogrpc.idl:8: // typedef long NTSTATUS; // ./sdk/include/reactos/idl/lsa.idl:20: // typedef long NTSTATUS; // ./sdk/include/reactos/idl/netlogon.idl:8: // typedef ULONG NTSTATUS; // ./sdk/include/reactos/idl/sam.idl:8: // typedef long NTSTATUS; // ./sdk/include/reactos/wine/winternl.h:51: typedef LONG NTSTATUS; // ./sdk/include/reactos/subsys/win/conmsg.h:15: #define CONSRV_SERVERDLL_INDEX 2 // ./sdk/include/reactos/subsys/csr/csrmsg.h:35: typedef ULONG CSR_API_NUMBER; // ./sdk/include/reactos/subsys/csr/csrmsg.h:37: #define CSR_CREATE_API_NUMBER(ServerId, ApiId) \ (CSR_API_NUMBER)(((ServerId) << 16) | (ApiId)) // ./sdk/include/reactos/subsys/csr/csrmsg.h:47: typedef struct _CSR_API_CONNECTINFO { HANDLE ObjectDirectory; // Unused on Windows >= 2k3 PVOID SharedSectionBase; PVOID SharedStaticServerData; PVOID SharedSectionHeap; ULONG DebugFlags; ULONG SizeOfPebData; ULONG SizeOfTebData; ULONG NumberOfServerDllNames; HANDLE ServerProcessId; } CSR_API_CONNECTINFO, *PCSR_API_CONNECTINFO; // ./sdk/include/reactos/subsys/csr/csrmsg.h:83: typedef struct _CSR_CLIENT_CONNECT { ULONG ServerId; PVOID ConnectionInfo; ULONG ConnectionInfoSize; } CSR_CLIENT_CONNECT, *PCSR_CLIENT_CONNECT; // ./sdk/include/reactos/subsys/csr/csrmsg.h:90: typedef struct _CSR_CAPTURE_BUFFER { ULONG Size; struct _CSR_CAPTURE_BUFFER *PreviousCaptureBuffer; ULONG PointerCount; PVOID BufferEnd; ULONG_PTR PointerOffsetsArray[ANYSIZE_ARRAY]; } CSR_CAPTURE_BUFFER, *PCSR_CAPTURE_BUFFER; // ./sdk/include/reactos/subsys/csr/csrmsg.h:100 typedef struct _CSR_API_MESSAGE { PORT_MESSAGE Header; union { CSR_API_CONNECTINFO ConnectionInfo; // Uniquely used in CSRSRV for internal signaling (opening a new connection). struct { PCSR_CAPTURE_BUFFER CsrCaptureData; CSR_API_NUMBER ApiNumber; NTSTATUS Status; // ReturnValue; ULONG Reserved; union { CSR_CLIENT_CONNECT CsrClientConnect; #if (NTDDI_VERSION < NTDDI_WS03) CSR_SET_PRIORITY_CLASS SetPriorityClass; CSR_IDENTIFY_ALERTABLE_THREAD IdentifyAlertableThread; #endif // // This padding is used to make the CSR_API_MESSAGE structure // large enough to hold full other API_MESSAGE-type structures // used by other servers. These latter structures's sizes must // be checked against the size of CSR_API_MESSAGE by using the // CHECK_API_MSG_SIZE macro defined below. // // This is required because LPC will use this generic structure // for communicating all the different servers' messages, and // thus we avoid possible buffer overflows with this method. // The problems there are, that we have to manually adjust the // size of the padding to hope that all the servers' messaging // structures will hold in it, or, that we have to be careful // to not define too big messaging structures for the servers. // // Finally, the overall message structure size must be at most // equal to the maximum acceptable LPC message size. // ULONG_PTR ApiMessageData[39]; } Data; }; }; } CSR_API_MESSAGE, *PCSR_API_MESSAGE; // We must have a size at most equal to the maximum acceptable LPC message size. // C_ASSERT(sizeof(CSR_API_MESSAGE) <= LPC_MAX_MESSAGE_LENGTH); // Macro to check that the total size of servers' message structures // are at most equal to the size of the CSR_API_MESSAGE structure. #define CHECK_API_MSG_SIZE(type) C_ASSERT(sizeof(type) <= sizeof(CSR_API_MESSAGE)) // ./sdk/include/reactos/subsys/win/conmsg.h:366 typedef struct _CONSOLE_GETSETCONSOLEMODE { HANDLE ConsoleHandle; HANDLE Handle; ULONG Mode; } CONSOLE_GETSETCONSOLEMODE, *PCONSOLE_GETSETCONSOLEMODE; #define C_ASSERT(expr) extern char (*c_assert(void)) [(expr) ? 1 : -1] // ./sdk/include/reactos/subsys/win/conmsg.h:897: typedef struct _CONSOLE_API_MESSAGE { PORT_MESSAGE Header; PCSR_CAPTURE_BUFFER CsrCaptureData; CSR_API_NUMBER ApiNumber; NTSTATUS Status; ULONG Reserved; union { // /* Console initialization and uninitialization */ // CONSOLE_ALLOCCONSOLE AllocConsoleRequest; // CONSOLE_ATTACHCONSOLE AttachConsoleRequest; // CONSOLE_FREECONSOLE FreeConsoleRequest; // /* Processes */ // CONSOLE_GETPROCESSLIST GetProcessListRequest; // CONSOLE_GENERATECTRLEVENT GenerateCtrlEventRequest; // CONSOLE_NOTIFYLASTCLOSE NotifyLastCloseRequest; // /* Handles */ // CONSOLE_OPENCONSOLE OpenConsoleRequest; // CONSOLE_CLOSEHANDLE CloseHandleRequest; // CONSOLE_VERIFYHANDLE VerifyHandleRequest; // CONSOLE_DUPLICATEHANDLE DuplicateHandleRequest; // CONSOLE_GETHANDLEINFO GetHandleInfoRequest; // CONSOLE_SETHANDLEINFO SetHandleInfoRequest; // /* Cursor & Mouse */ // CONSOLE_SHOWCURSOR ShowCursorRequest; // CONSOLE_SETCURSOR SetCursorRequest; // CONSOLE_GETSETCURSORINFO CursorInfoRequest; // CONSOLE_SETCURSORPOSITION SetCursorPositionRequest; // CONSOLE_GETMOUSEINFO GetMouseInfoRequest; // /* Screen-buffer */ // CONSOLE_CREATESCREENBUFFER CreateScreenBufferRequest; // CONSOLE_SETACTIVESCREENBUFFER SetScreenBufferRequest; // CONSOLE_GETSCREENBUFFERINFO ScreenBufferInfoRequest; // CONSOLE_SETSCREENBUFFERSIZE SetScreenBufferSizeRequest; // CONSOLE_SCROLLSCREENBUFFER ScrollScreenBufferRequest; // CONSOLE_GETSELECTIONINFO GetSelectionInfoRequest; // CONSOLE_FLUSHINPUTBUFFER FlushInputBufferRequest; // /* Console mode */ CONSOLE_GETSETCONSOLEMODE ConsoleModeRequest; // CONSOLE_GETDISPLAYMODE GetDisplayModeRequest; // CONSOLE_SETDISPLAYMODE SetDisplayModeRequest; // CONSOLE_GETSETHWSTATE HardwareStateRequest; // /* Console fonts */ // CONSOLE_GETNUMFONTS GetNumFontsRequest; // CONSOLE_GETFONTINFO GetFontInfoRequest; // CONSOLE_GETFONTSIZE GetFontSizeRequest; // CONSOLE_GETCURRENTFONT GetCurrentFontRequest; // CONSOLE_SETFONT SetFontRequest; // /* Console window */ // CONSOLE_INVALIDATEDIBITS InvalidateDIBitsRequest; // CONSOLE_SETPALETTE SetPaletteRequest; // CONSOLE_GETSETCONSOLETITLE TitleRequest; // CONSOLE_GETLARGESTWINDOWSIZE GetLargestWindowSizeRequest; // CONSOLE_MENUCONTROL MenuControlRequest; // CONSOLE_SETMENUCLOSE SetMenuCloseRequest; // CONSOLE_SETWINDOWINFO SetWindowInfoRequest; // CONSOLE_GETWINDOW GetWindowRequest; // CONSOLE_SETICON SetIconRequest; // /* Read */ // CONSOLE_READCONSOLE ReadConsoleRequest; // SrvReadConsole / ReadConsole // CONSOLE_GETINPUT GetInputRequest; // SrvGetConsoleInput / PeekConsoleInput & ReadConsoleInput // CONSOLE_READOUTPUT ReadOutputRequest; // SrvReadConsoleOutput / ReadConsoleOutput // CONSOLE_READOUTPUTCODE ReadOutputCodeRequest; // SrvReadConsoleOutputString / ReadConsoleOutputAttribute & ReadConsoleOutputCharacter // CONSOLE_GETNUMINPUTEVENTS GetNumInputEventsRequest; // /* Write */ // CONSOLE_WRITECONSOLE WriteConsoleRequest; // SrvWriteConsole / WriteConsole // CONSOLE_WRITEINPUT WriteInputRequest; // CONSOLE_WRITEOUTPUT WriteOutputRequest; // CONSOLE_WRITEOUTPUTCODE WriteOutputCodeRequest; // CONSOLE_FILLOUTPUTCODE FillOutputRequest; // CONSOLE_SETTEXTATTRIB SetTextAttribRequest; // /* Aliases */ // CONSOLE_ADDGETALIAS ConsoleAliasRequest; // CONSOLE_GETALLALIASES GetAllAliasesRequest; // CONSOLE_GETALLALIASESLENGTH GetAllAliasesLengthRequest; // CONSOLE_GETALIASESEXES GetAliasesExesRequest; // CONSOLE_GETALIASESEXESLENGTH GetAliasesExesLengthRequest; // /* History */ // CONSOLE_GETCOMMANDHISTORY GetCommandHistoryRequest; // CONSOLE_GETCOMMANDHISTORYLENGTH GetCommandHistoryLengthRequest; // CONSOLE_EXPUNGECOMMANDHISTORY ExpungeCommandHistoryRequest; // CONSOLE_GETSETHISTORYINFO HistoryInfoRequest; // CONSOLE_SETHISTORYNUMBERCOMMANDS SetHistoryNumberCommandsRequest; // CONSOLE_SETHISTORYMODE SetHistoryModeRequest; // /* Input and Output Code Pages; keyboard */ // CONSOLE_GETINPUTOUTPUTCP GetConsoleCPRequest; // CONSOLE_SETINPUTOUTPUTCP SetConsoleCPRequest; // CONSOLE_GETLANGID LangIdRequest; // CONSOLE_GETKBDLAYOUTNAME GetKbdLayoutNameRequest; // /* Virtual DOS Machine */ // CONSOLE_REGISTERVDM RegisterVDMRequest; } Data; } CONSOLE_API_MESSAGE, *PCONSOLE_API_MESSAGE; // Check that a CONSOLE_API_MESSAGE can hold in a CSR_API_MESSAGE. CHECK_API_MSG_SIZE(CONSOLE_API_MESSAGE); // ./dll/win32/kernel32/client/shared_utils.c:22: DWORD WINAPI BaseSetLastNTError(IN NTSTATUS Status) { DWORD dwErrCode; /* Convert from NT to Win32, then set */ dwErrCode = RtlNtStatusToDosError(Status); SetLastError(dwErrCode); return dwErrCode; } // ./sdk/lib/crt/wine/winternl.h:76: // typedef struct _TEB // { /* win32/win64 */ // NT_TIB Tib; /* 000/0000 */ // PVOID EnvironmentPointer; /* 01c/0038 */ // CLIENT_ID ClientId; /* 020/0040 */ // PVOID ActiveRpcHandle; /* 028/0050 */ // PVOID ThreadLocalStoragePointer; /* 02c/0058 */ // PPEB Peb; /* 030/0060 */ // ULONG LastErrorValue; /* 034/0068 */ // ULONG CountOfOwnedCriticalSections; /* 038/006c */ // PVOID CsrClientThread; /* 03c/0070 */ // PVOID Win32ThreadInfo; /* 040/0078 */ // ULONG Win32ClientInfo[31]; /* 044/0080 used for user32 private data in Wine */ // PVOID WOW32Reserved; /* 0c0/0100 */ // ULONG CurrentLocale; /* 0c4/0108 */ // ULONG FpSoftwareStatusRegister; /* 0c8/010c */ // PVOID SystemReserved1[54]; /* 0cc/0110 used for kernel32 private data in Wine */ // LONG ExceptionCode; /* 1a4/02c0 */ // ACTIVATION_CONTEXT_STACK ActivationContextStack; /* 1a8/02c8 */ // BYTE SpareBytes1[24]; /* 1bc/02e8 */ // PVOID SystemReserved2[10]; /* 1d4/0300 used for ntdll platform-specific private data in Wine */ // GDI_TEB_BATCH GdiTebBatch; /* 1fc/0350 used for ntdll private data in Wine */ // HANDLE gdiRgn; /* 6dc/0838 */ // HANDLE gdiPen; /* 6e0/0840 */ // HANDLE gdiBrush; /* 6e4/0848 */ // CLIENT_ID RealClientId; /* 6e8/0850 */ // HANDLE GdiCachedProcessHandle; /* 6f0/0860 */ // ULONG GdiClientPID; /* 6f4/0868 */ // ULONG GdiClientTID; /* 6f8/086c */ // PVOID GdiThreadLocaleInfo; /* 6fc/0870 */ // ULONG UserReserved[5]; /* 700/0878 */ // PVOID glDispatchTable[280]; /* 714/0890 */ // PVOID glReserved1[26]; /* b74/1150 */ // PVOID glReserved2; /* bdc/1220 */ // PVOID glSectionInfo; /* be0/1228 */ // PVOID glSection; /* be4/1230 */ // PVOID glTable; /* be8/1238 */ // PVOID glCurrentRC; /* bec/1240 */ // PVOID glContext; /* bf0/1248 */ // ULONG LastStatusValue; /* bf4/1250 */ // UNICODE_STRING StaticUnicodeString; /* bf8/1258 used by advapi32 */ // WCHAR StaticUnicodeBuffer[261]; /* c00/1268 used by advapi32 */ // PVOID DeallocationStack; /* e0c/1478 */ // PVOID TlsSlots[64]; /* e10/1480 */ // LIST_ENTRY TlsLinks; /* f10/1680 */ // PVOID Vdm; /* f18/1690 */ // PVOID ReservedForNtRpc; /* f1c/1698 */ // PVOID DbgSsReserved[2]; /* f20/16a0 */ // ULONG HardErrorDisabled; /* f28/16b0 */ // PVOID Instrumentation[16]; /* f2c/16b8 */ // PVOID WinSockData; /* f6c/1738 */ // ULONG GdiBatchCount; /* f70/1740 */ // ULONG Spare2; /* f74/1744 */ // ULONG GuaranteedStackBytes; /* f78/1748 */ // PVOID ReservedForPerf; /* f7c/1750 */ // PVOID ReservedForOle; /* f80/1758 */ // ULONG WaitingOnLoaderLock; /* f84/1760 */ // PVOID Reserved5[3]; /* f88/1768 */ // PVOID* TlsExpansionSlots; /* f94/1780 */ // #ifdef _WIN64 // PVOID DeallocationBStore; /* /1788 */ // PVOID BStoreLimit; /* /1790 */ // #endif // ULONG ImpersonationLocale; /* f98/1798 */ // ULONG IsImpersonating; /* f9c/179c */ // PVOID NlsCache; /* fa0/17a0 */ // PVOID ShimData; /* fa4/17a8 */ // ULONG HeapVirtualAffinity; /* fa8/17b0 */ // PVOID CurrentTransactionHandle; /* fac/17b8 */ // TEB_ACTIVE_FRAME* ActiveFrame; /* fb0/17c0 */ // PVOID* FlsSlots; /* fb4/17c8 */ // } TEB, * PTEB; // ./sdk/lib/crt/wine/winternl.h:154: // typedef struct _TEB // { /* win32/win64 */ // NT_TIB Tib; /* 000/0000 */ // PVOID EnvironmentPointer; /* 01c/0038 */ // CLIENT_ID ClientId; /* 020/0040 */ // PVOID ActiveRpcHandle; /* 028/0050 */ // PVOID ThreadLocalStoragePointer; /* 02c/0058 */ // PPEB Peb; /* 030/0060 */ // ULONG LastErrorValue; /* 034/0068 */ // ULONG CountOfOwnedCriticalSections; /* 038/006c */ // PVOID CsrClientThread; /* 03c/0070 */ // PVOID Win32ThreadInfo; /* 040/0078 */ // ULONG Win32ClientInfo[31]; /* 044/0080 used for user32 private data in Wine */ // PVOID WOW32Reserved; /* 0c0/0100 */ // ULONG CurrentLocale; /* 0c4/0108 */ // ULONG FpSoftwareStatusRegister; /* 0c8/010c */ // PVOID SystemReserved1[54]; /* 0cc/0110 used for kernel32 private data in Wine */ // LONG ExceptionCode; /* 1a4/02c0 */ // ACTIVATION_CONTEXT_STACK ActivationContextStack; /* 1a8/02c8 */ // BYTE SpareBytes1[24]; /* 1bc/02e8 */ // PVOID SystemReserved2[10]; /* 1d4/0300 used for ntdll platform-specific private data in Wine */ // GDI_TEB_BATCH GdiTebBatch; /* 1fc/0350 used for ntdll private data in Wine */ // HANDLE gdiRgn; /* 6dc/0838 */ // HANDLE gdiPen; /* 6e0/0840 */ // HANDLE gdiBrush; /* 6e4/0848 */ // CLIENT_ID RealClientId; /* 6e8/0850 */ // HANDLE GdiCachedProcessHandle; /* 6f0/0860 */ // ULONG GdiClientPID; /* 6f4/0868 */ // ULONG GdiClientTID; /* 6f8/086c */ // PVOID GdiThreadLocaleInfo; /* 6fc/0870 */ // ULONG UserReserved[5]; /* 700/0878 */ // PVOID glDispatchTable[280]; /* 714/0890 */ // PVOID glReserved1[26]; /* b74/1150 */ // PVOID glReserved2; /* bdc/1220 */ // PVOID glSectionInfo; /* be0/1228 */ // PVOID glSection; /* be4/1230 */ // PVOID glTable; /* be8/1238 */ // PVOID glCurrentRC; /* bec/1240 */ // PVOID glContext; /* bf0/1248 */ // ULONG LastStatusValue; /* bf4/1250 */ // UNICODE_STRING StaticUnicodeString; /* bf8/1258 used by advapi32 */ // WCHAR StaticUnicodeBuffer[261]; /* c00/1268 used by advapi32 */ // PVOID DeallocationStack; /* e0c/1478 */ // PVOID TlsSlots[64]; /* e10/1480 */ // LIST_ENTRY TlsLinks; /* f10/1680 */ // PVOID Vdm; /* f18/1690 */ // PVOID ReservedForNtRpc; /* f1c/1698 */ // PVOID DbgSsReserved[2]; /* f20/16a0 */ // ULONG HardErrorDisabled; /* f28/16b0 */ // PVOID Instrumentation[16]; /* f2c/16b8 */ // PVOID WinSockData; /* f6c/1738 */ // ULONG GdiBatchCount; /* f70/1740 */ // ULONG Spare2; /* f74/1744 */ // ULONG GuaranteedStackBytes; /* f78/1748 */ // PVOID ReservedForPerf; /* f7c/1750 */ // PVOID ReservedForOle; /* f80/1758 */ // ULONG WaitingOnLoaderLock; /* f84/1760 */ // PVOID Reserved5[3]; /* f88/1768 */ // PVOID* TlsExpansionSlots; /* f94/1780 */ // #ifdef _WIN64 // PVOID DeallocationBStore; /* /1788 */ // PVOID BStoreLimit; /* /1790 */ // #endif // ULONG ImpersonationLocale; /* f98/1798 */ // ULONG IsImpersonating; /* f9c/179c */ // PVOID NlsCache; /* fa0/17a0 */ // PVOID ShimData; /* fa4/17a8 */ // ULONG HeapVirtualAffinity; /* fa8/17b0 */ // PVOID CurrentTransactionHandle; /* fac/17b8 */ // TEB_ACTIVE_FRAME* ActiveFrame; /* fb0/17c0 */ // PVOID* FlsSlots; /* fb4/17c8 */ // } TEB, * PTEB; // ./dll/win32/dbghelp/compat.h:835: // ./drivers/storage/ide/uniata/ntddk_ex.h:331: // ./sdk/include/ndk/peb_teb.h:230: // ./sdk/lib/crt/wine/winternl.h:226: // typedef struct _TEB // { /* win32/win64 */ // NT_TIB Tib; /* 000/0000 */ // PVOID EnvironmentPointer; /* 01c/0038 */ // CLIENT_ID ClientId; /* 020/0040 */ // PVOID ActiveRpcHandle; /* 028/0050 */ // PVOID ThreadLocalStoragePointer; /* 02c/0058 */ // PPEB Peb; /* 030/0060 */ // ULONG LastErrorValue; /* 034/0068 */ // ULONG CountOfOwnedCriticalSections; /* 038/006c */ // PVOID CsrClientThread; /* 03c/0070 */ // PVOID Win32ThreadInfo; /* 040/0078 */ // ULONG Win32ClientInfo[31]; /* 044/0080 used for user32 private data in Wine */ // PVOID WOW32Reserved; /* 0c0/0100 */ // ULONG CurrentLocale; /* 0c4/0108 */ // ULONG FpSoftwareStatusRegister; /* 0c8/010c */ // PVOID SystemReserved1[54]; /* 0cc/0110 used for kernel32 private data in Wine */ // LONG ExceptionCode; /* 1a4/02c0 */ // ACTIVATION_CONTEXT_STACK ActivationContextStack; /* 1a8/02c8 */ // BYTE SpareBytes1[24]; /* 1bc/02e8 */ // PVOID SystemReserved2[10]; /* 1d4/0300 used for ntdll platform-specific private data in Wine */ // GDI_TEB_BATCH GdiTebBatch; /* 1fc/0350 used for ntdll private data in Wine */ // HANDLE gdiRgn; /* 6dc/0838 */ // HANDLE gdiPen; /* 6e0/0840 */ // HANDLE gdiBrush; /* 6e4/0848 */ // CLIENT_ID RealClientId; /* 6e8/0850 */ // HANDLE GdiCachedProcessHandle; /* 6f0/0860 */ // ULONG GdiClientPID; /* 6f4/0868 */ // ULONG GdiClientTID; /* 6f8/086c */ // PVOID GdiThreadLocaleInfo; /* 6fc/0870 */ // ULONG UserReserved[5]; /* 700/0878 */ // PVOID glDispatchTable[280]; /* 714/0890 */ // PVOID glReserved1[26]; /* b74/1150 */ // PVOID glReserved2; /* bdc/1220 */ // PVOID glSectionInfo; /* be0/1228 */ // PVOID glSection; /* be4/1230 */ // PVOID glTable; /* be8/1238 */ // PVOID glCurrentRC; /* bec/1240 */ // PVOID glContext; /* bf0/1248 */ // ULONG LastStatusValue; /* bf4/1250 */ // UNICODE_STRING StaticUnicodeString; /* bf8/1258 used by advapi32 */ // WCHAR StaticUnicodeBuffer[261]; /* c00/1268 used by advapi32 */ // PVOID DeallocationStack; /* e0c/1478 */ // PVOID TlsSlots[64]; /* e10/1480 */ // LIST_ENTRY TlsLinks; /* f10/1680 */ // PVOID Vdm; /* f18/1690 */ // PVOID ReservedForNtRpc; /* f1c/1698 */ // PVOID DbgSsReserved[2]; /* f20/16a0 */ // ULONG HardErrorDisabled; /* f28/16b0 */ // PVOID Instrumentation[16]; /* f2c/16b8 */ // PVOID WinSockData; /* f6c/1738 */ // ULONG GdiBatchCount; /* f70/1740 */ // ULONG Spare2; /* f74/1744 */ // ULONG GuaranteedStackBytes; /* f78/1748 */ // PVOID ReservedForPerf; /* f7c/1750 */ // PVOID ReservedForOle; /* f80/1758 */ // ULONG WaitingOnLoaderLock; /* f84/1760 */ // PVOID Reserved5[3]; /* f88/1768 */ // PVOID* TlsExpansionSlots; /* f94/1780 */ // #ifdef _WIN64 // PVOID DeallocationBStore; /* /1788 */ // PVOID BStoreLimit; /* /1790 */ // #endif // ULONG ImpersonationLocale; /* f98/1798 */ // ULONG IsImpersonating; /* f9c/179c */ // PVOID NlsCache; /* fa0/17a0 */ // PVOID ShimData; /* fa4/17a8 */ // ULONG HeapVirtualAffinity; /* fa8/17b0 */ // PVOID CurrentTransactionHandle; /* fac/17b8 */ // TEB_ACTIVE_FRAME* ActiveFrame; /* fb0/17c0 */ // PVOID* FlsSlots; /* fb4/17c8 */ // } TEB, * PTEB;