ReactOS  0.4.10-dev-19-g39281f0
except.c File Reference
#include <k32.h>
#include <strsafe.h>
#include <debug.h>
Include dependency graph for except.c:

Go to the source code of this file.

Macros

#define NDEBUG
 

Functions

static const char_module_name_from_addr (const void *addr, void **module_start_addr, char *psz, size_t nChars, char **module_name)
 
static VOID _dump_context (PCONTEXT pc)
 
static VOID PrintStackTrace (IN PEXCEPTION_POINTERS ExceptionInfo)
 
LONG WINAPI BasepCheckForReadOnlyResource (IN PVOID Ptr)
 
UINT WINAPI GetErrorMode (VOID)
 
LONG WINAPI UnhandledExceptionFilter (IN PEXCEPTION_POINTERS ExceptionInfo)
 
VOID WINAPI RaiseException (IN DWORD dwExceptionCode, IN DWORD dwExceptionFlags, IN DWORD nNumberOfArguments, IN CONST ULONG_PTR *lpArguments OPTIONAL)
 
UINT WINAPI SetErrorMode (IN UINT uMode)
 
LPTOP_LEVEL_EXCEPTION_FILTER
WINAPI DECLSPEC_HOTPATCH 
SetUnhandledExceptionFilter (IN LPTOP_LEVEL_EXCEPTION_FILTER lpTopLevelExceptionFilter)
 
BOOL WINAPI IsBadReadPtr (IN LPCVOID lp, IN UINT_PTR ucb)
 
BOOL NTAPI IsBadHugeReadPtr (LPCVOID lp, UINT_PTR ucb)
 
BOOL NTAPI IsBadCodePtr (FARPROC lpfn)
 
BOOL NTAPI IsBadWritePtr (IN LPVOID lp, IN UINT_PTR ucb)
 
BOOL NTAPI IsBadHugeWritePtr (IN LPVOID lp, IN UINT_PTR ucb)
 
BOOL NTAPI IsBadStringPtrW (IN LPCWSTR lpsz, IN UINT_PTR ucchMax)
 
BOOL NTAPI IsBadStringPtrA (IN LPCSTR lpsz, IN UINT_PTR ucchMax)
 
VOID WINAPI SetLastError (IN DWORD dwErrCode)
 
DWORD WINAPI BaseSetLastNTError (IN NTSTATUS Status)
 
DWORD WINAPI GetLastError (VOID)
 

Variables

LPTOP_LEVEL_EXCEPTION_FILTER GlobalTopLevelExceptionFilter
 
DWORD g_dwLastErrorToBreakOn
 

Macro Definition Documentation

#define NDEBUG

Definition at line 17 of file except.c.

Function Documentation

static VOID _dump_context ( PCONTEXT  pc)
static

Definition at line 57 of file except.c.

Referenced by PrintStackTrace().

58 {
59 #ifdef _M_IX86
60  /*
61  * Print out the CPU registers
62  */
63  DbgPrint("CS:EIP %x:%x\n", pc->SegCs&0xffff, pc->Eip );
64  DbgPrint("DS %x ES %x FS %x GS %x\n", pc->SegDs&0xffff, pc->SegEs&0xffff,
65  pc->SegFs&0xffff, pc->SegGs&0xfff);
66  DbgPrint("EAX: %.8x EBX: %.8x ECX: %.8x\n", pc->Eax, pc->Ebx, pc->Ecx);
67  DbgPrint("EDX: %.8x EBP: %.8x ESI: %.8x ESP: %.8x\n", pc->Edx,
68  pc->Ebp, pc->Esi, pc->Esp);
69  DbgPrint("EDI: %.8x EFLAGS: %.8x\n", pc->Edi, pc->EFlags);
70 #elif defined(_M_AMD64)
71  DbgPrint("CS:RIP %x:%I64x\n", pc->SegCs&0xffff, pc->Rip );
72  DbgPrint("DS %x ES %x FS %x GS %x\n", pc->SegDs&0xffff, pc->SegEs&0xffff,
73  pc->SegFs&0xffff, pc->SegGs&0xfff);
74  DbgPrint("RAX: %I64x RBX: %I64x RCX: %I64x RDI: %I64x\n", pc->Rax, pc->Rbx, pc->Rcx, pc->Rdi);
75  DbgPrint("RDX: %I64x RBP: %I64x RSI: %I64x RSP: %I64x\n", pc->Rdx, pc->Rbp, pc->Rsi, pc->Rsp);
76  DbgPrint("R8: %I64x R9: %I64x R10: %I64x R11: %I64x\n", pc->R8, pc->R9, pc->R10, pc->R11);
77  DbgPrint("R12: %I64x R13: %I64x R14: %I64x R15: %I64x\n", pc->R12, pc->R13, pc->R14, pc->R15);
78  DbgPrint("EFLAGS: %.8x\n", pc->EFlags);
79 #elif defined(_M_ARM)
80  DbgPrint("PC: %08lx LR: %08lx SP: %08lx\n", pc->Pc);
81  DbgPrint("R0: %08lx R1: %08lx R2: %08lx R3: %08lx\n", pc->R0, pc->R1, pc->R2, pc->R3);
82  DbgPrint("R4: %08lx R5: %08lx R6: %08lx R7: %08lx\n", pc->R4, pc->R5, pc->R6, pc->R7);
83  DbgPrint("R8: %08lx R9: %08lx R10: %08lx R11: %08lx\n", pc->R8, pc->R9, pc->R10, pc->R11);
84  DbgPrint("R12: %08lx CPSR: %08lx FPSCR: %08lx\n", pc->R12, pc->Cpsr, pc->R1, pc->Fpscr, pc->R3);
85 #else
86  #error "Unknown architecture"
87 #endif
88 }
ULONG Esp
Definition: nt_native.h:1479
ULONG Eip
Definition: nt_native.h:1476
#define DbgPrint
Definition: loader.c:25
ULONG Ecx
Definition: nt_native.h:1467
ULONG R6
Definition: compat.h:341
ULONG R0
Definition: compat.h:335
ULONG SegGs
Definition: nt_native.h:1453
ULONG SegFs
Definition: nt_native.h:1454
ULONG SegDs
Definition: nt_native.h:1456
ULONG R8
Definition: compat.h:343
ULONG SegEs
Definition: nt_native.h:1455
ULONG Esi
Definition: nt_native.h:1464
ULONG SegCs
Definition: nt_native.h:1477
ULONG Edx
Definition: nt_native.h:1466
ULONG R9
Definition: compat.h:344
ULONG R1
Definition: compat.h:336
ULONG EFlags
Definition: nt_native.h:1478
ULONG Ebx
Definition: nt_native.h:1465
ULONG R4
Definition: compat.h:339
ULONG Fpscr
Definition: ke.h:275
ULONG R11
Definition: ke.h:266
ULONG Eax
Definition: nt_native.h:1468
ULONG Cpsr
Definition: compat.h:353
ULONG R5
Definition: compat.h:340
ULONG R7
Definition: compat.h:342
ULONG R12
Definition: ke.h:267
ULONG R10
Definition: compat.h:345
ULONG R2
Definition: compat.h:337
ULONG Pc
Definition: compat.h:352
ULONG R3
Definition: compat.h:338
ULONG Ebp
Definition: nt_native.h:1475
ULONG Edi
Definition: nt_native.h:1463
static const char* _module_name_from_addr ( const void addr,
void **  module_start_addr,
char psz,
size_t  nChars,
char **  module_name 
)
static

Definition at line 25 of file except.c.

Referenced by PrintStackTrace().

27 {
29  if (VirtualQuery(addr, &mbi, sizeof(mbi)) != sizeof(mbi) ||
30  !GetModuleFileNameA((HMODULE)mbi.AllocationBase, psz, nChars))
31  {
32  psz[0] = '\0';
33  *module_name = psz;
34  *module_start_addr = 0;
35  }
36  else
37  {
38  char* s1 = strrchr(psz, '\\'), *s2 = strrchr(psz, '/');
39  if (s2 && !s1)
40  s1 = s2;
41  else if (s1 && s2 && s1 < s2)
42  s1 = s2;
43 
44  if (!s1)
45  s1 = psz;
46  else
47  s1++;
48 
49  *module_name = s1;
50  *module_start_addr = (void *)mbi.AllocationBase;
51  }
52  return psz;
53 }
struct S2 s2
static LPCWSTR LPCWSTR module_name
Definition: db.cpp:158
_Check_return_ _CRTIMP _CONST_RETURN char *__cdecl strrchr(_In_z_ const char *_Str, _In_ int _Ch)
DWORD WINAPI GetModuleFileNameA(HINSTANCE hModule, LPSTR lpFilename, DWORD nSize)
Definition: loader.c:545
struct S1 s1
SIZE_T NTAPI VirtualQuery(IN LPCVOID lpAddress, OUT PMEMORY_BASIC_INFORMATION lpBuffer, IN SIZE_T dwLength)
Definition: virtmem.c:220
HANDLE HMODULE
Definition: typedefs.h:75
LONG WINAPI BasepCheckForReadOnlyResource ( IN PVOID  Ptr)

Definition at line 163 of file except.c.

Referenced by UnhandledExceptionFilter().

164 {
165  PVOID Data;
166  ULONG Size, OldProtect;
170 
171  /* Check if it was an attempt to write to a read-only image section! */
173  Ptr,
175  &mbi,
176  sizeof(mbi),
177  NULL);
178  if (NT_SUCCESS(Status) &&
179  mbi.Protect == PAGE_READONLY && mbi.Type == MEM_IMAGE)
180  {
181  /* Attempt to treat it as a resource section. We need to
182  use SEH here because we don't know if it's actually a
183  resource mapping */
184  _SEH2_TRY
185  {
187  TRUE,
189  &Size);
190 
191  if (Data != NULL &&
192  (ULONG_PTR)Ptr >= (ULONG_PTR)Data &&
193  (ULONG_PTR)Ptr < (ULONG_PTR)Data + Size)
194  {
195  /* The user tried to write into the resources. Make the page
196  writable... */
197  Size = 1;
199  &Ptr,
200  &Size,
202  &OldProtect);
203  if (NT_SUCCESS(Status))
204  {
206  }
207  }
208  }
210  {
211  }
212  _SEH2_END;
213  }
214 
215  return Ret;
216 }
DWORD *typedef PVOID
Definition: winlogon.h:52
#define TRUE
Definition: types.h:120
#define MEM_IMAGE
Definition: mmtypes.h:88
_Must_inspect_result_ _In_ PFSRTL_PER_STREAM_CONTEXT Ptr
Definition: fsrtlfuncs.h:898
NTSTATUS NTAPI NtProtectVirtualMemory(IN HANDLE ProcessHandle, IN OUT PVOID *UnsafeBaseAddress, IN OUT SIZE_T *UnsafeNumberOfBytesToProtect, IN ULONG NewAccessProtection, OUT PULONG UnsafeOldAccessProtection)
Definition: virtual.c:2986
NTSTATUS NTAPI NtQueryVirtualMemory(IN HANDLE ProcessHandle, IN PVOID BaseAddress, IN MEMORY_INFORMATION_CLASS MemoryInformationClass, OUT PVOID MemoryInformation, IN SIZE_T MemoryInformationLength, OUT PSIZE_T ReturnLength)
Definition: virtual.c:4284
PVOID ULONG ULONG PULONG Data
Definition: oprghdlr.h:14
_SEH2_TRY
Definition: create.c:4250
uint32_t ULONG_PTR
Definition: typedefs.h:63
#define EXCEPTION_CONTINUE_SEARCH
Definition: excpt.h:86
long LONG
Definition: pedump.c:60
#define EXCEPTION_EXECUTE_HANDLER
Definition: excpt.h:85
smooth NULL
Definition: ftsmooth.c:416
#define NtCurrentProcess()
Definition: nt_native.h:1657
UINTN Size
Definition: acefiex.h:555
LONG NTSTATUS
Definition: precomp.h:26
#define NT_SUCCESS(StatCode)
Definition: apphelp.c:24
#define RtlImageDirectoryEntryToData
Definition: compat.h:460
Status
Definition: gdiplustypes.h:24
_SEH2_END
Definition: create.c:4424
#define PAGE_READONLY
Definition: compat.h:127
unsigned int ULONG
Definition: retypes.h:1
#define _SEH2_EXCEPT(...)
Definition: pseh2_64.h:6
#define IMAGE_DIRECTORY_ENTRY_RESOURCE
Definition: pedump.c:261
#define PAGE_READWRITE
Definition: nt_native.h:1304
#define EXCEPTION_CONTINUE_EXECUTION
Definition: excpt.h:87
DWORD WINAPI BaseSetLastNTError ( IN NTSTATUS  Status)

Definition at line 1041 of file except.c.

Referenced by GetErrorMode().

1042 {
1043  DWORD dwErrCode;
1044 
1045  /* Convert from NT to Win32, then set */
1046  dwErrCode = RtlNtStatusToDosError(Status);
1047  SetLastError(dwErrCode);
1048  return dwErrCode;
1049 }
DWORD DWORD
Definition: winlogon.h:75
VOID WINAPI SetLastError(IN DWORD dwErrCode)
Definition: except.c:1027
Status
Definition: gdiplustypes.h:24
NTSYSAPI ULONG WINAPI RtlNtStatusToDosError(NTSTATUS)
UINT WINAPI GetErrorMode ( VOID  )

Definition at line 220 of file except.c.

Referenced by SetErrorMode(), and UnhandledExceptionFilter().

221 {
223  UINT ErrMode;
224 
225  /* Query the current setting */
228  &ErrMode,
229  sizeof(ErrMode),
230  NULL);
231  if (!NT_SUCCESS(Status))
232  {
233  /* Fail if we couldn't query */
234  BaseSetLastNTError(Status);
235  return 0;
236  }
237 
238  /* Check if NOT failing critical errors was requested */
239  if (ErrMode & SEM_FAILCRITICALERRORS)
240  {
241  /* Mask it out, since the native API works differently */
242  ErrMode &= ~SEM_FAILCRITICALERRORS;
243  }
244  else
245  {
246  /* OR it if the caller didn't, due to different native semantics */
247  ErrMode |= SEM_FAILCRITICALERRORS;
248  }
249 
250  /* Return the mode */
251  return ErrMode;
252 }
DWORD WINAPI BaseSetLastNTError(IN NTSTATUS Status)
Definition: except.c:1041
#define SEM_FAILCRITICALERRORS
Definition: rtltypes.h:69
NTSTATUS NTAPI NtQueryInformationProcess(IN HANDLE ProcessHandle, IN PROCESSINFOCLASS ProcessInformationClass, OUT PVOID ProcessInformation, IN ULONG ProcessInformationLength, OUT PULONG ReturnLength OPTIONAL)
Definition: query.c:59
smooth NULL
Definition: ftsmooth.c:416
#define NtCurrentProcess()
Definition: nt_native.h:1657
LONG NTSTATUS
Definition: precomp.h:26
#define NT_SUCCESS(StatCode)
Definition: apphelp.c:24
Status
Definition: gdiplustypes.h:24
unsigned int UINT
Definition: ndis.h:50
DWORD WINAPI GetLastError ( VOID  )

Definition at line 1056 of file except.c.

Referenced by __delayLoadHelper2(), __file_size(), __mbtowc(), __mingwthr_run_key_dtors(), _access(), _ActivateCtx(), _AddPrintProviderToList(), _async_query_data_available(), _beginthreadex(), _cancel_overlapped(), _chdrive(), _check_file_exists(), _chmod(), _chsize_s(), _close(), _close_request(), _commit(), _ConvertAtoW(), _cowait_msgs_expect_queued(), _create_process(), _CreateActCtxFromFile(), CBandSiteMenu::_CreateMenuPart(), _CreateNonspooledPort(), _cwait(), _DeactivateCtx(), _delete_testfontfile(), CRecyclerDropTarget::_DoDeleteDataObject(), _DoDLLInjection(), _dup2(), _expect_data_available(), _findclose(), _fstat64(), _futime(), _GetNonspooledPortName(), _GetUserSidStringFromToken(), _HandleConfigureLPTPortCommandOK(), _HandleGetDefaultCommConfig(), _HandlePortExists(), _HandleSetDefaultCommConfig(), _heapchk(), _heapmin(), _heapwalk(), _LocalEnumPrintersCheckName(), _LocalGetJobLevel2(), _LocalGetPrintServerHandleData(), _LocalOpenPortHandle(), _LocalOpenPrinterHandle(), _LocalOpenXcvHandle(), _LocalSetJobLevel1(), _LocalSetJobLevel2(), _lseeki64(), _open_osfhandle(), _open_simple_request(), _overlapped_read_async(), _overlapped_read_sync(), _overlapped_write_async(), _overlapped_write_sync(), _pclose(), _pipe(), _PrinterJobListCompareRoutine(), _read_expect_sync_data_len(), _read_request_data(), _readex_expect_async(), _readex_expect_sync_data_len(), _receive_simple_request(), _RpcAddJob(), _RpcClosePrinter(), _RpcEndDocPrinter(), _RpcEndPagePrinter(), _RpcEnumJobs(), _RpcEnumMonitors(), _RpcEnumPorts(), _RpcEnumPrinters(), _RpcEnumPrintProcessorDatatypes(), _RpcEnumPrintProcessors(), _RpcGetJob(), _RpcGetPrinter(), _RpcGetPrintProcessorDirectory(), _RpcOpenPrinter(), _RpcReadPrinter(), _RpcScheduleJob(), _RpcSetJob(), _RpcSpoolerInit(), _RpcStartDocPrinter(), _RpcStartPagePrinter(), _RpcWritePrinter(), _RunRemoteTest(), _ServiceMain(), _set_secflags(), _setmbcp_l(), _SHExpandEnvironmentStrings(), _SHGetDefaultValue(), _StartDocPrinterSpooled(), _tchdir(), _tempnam(), _test_accounting(), _test_assigned_proc(), _test_completion(), _test_file_access(), _test_flush_async(), _test_flush_done(), _test_flush_sync(), _test_hkey_main_Value_A(), _test_hkey_main_Value_W(), _test_http_version(), _test_language_string(), _test_not_signaled(), _test_overlapped_failure(), _test_overlapped_result(), _test_peek_pipe(), _test_request_flags(), _test_request_url(), _test_secflags_option(), _test_security_info(), _test_status_code(), _test_store_is_empty(), _tfindfirst(), _tfindnext(), _tfullpath(), _tgetcwd(), _tiffSeekProc(), _tmain(), _tmkdir(), CMenuBand::_TrackContextMenu(), _trmdir(), _tsearchenv_s(), _tstat64(), _tWinMain(), _unlink(), _waccess(), _wchmod(), _wfreopen(), _wmktemp(), _wremove(), _wrename(), _write(), _wsopen_s(), _wtempnam(), _wtmpnam(), _wunlink(), AbortSvchostService(), access_dirT(), AccpLookupCurrentUser(), AccpLookupSidByName(), AccpOpenNamedObject(), AccRewriteGetExplicitEntriesFromAcl(), AccRewriteGetHandleRights(), AccRewriteGetNamedRights(), AccRewriteSetEntriesInAcl(), AccRewriteSetHandleRights(), AccRewriteSetNamedRights(), AcquireRemoveRestorePrivilege(), ACTION_CallDllFunction(), ACTION_RemoveFiles(), activate_context(), StartMenu::ActivateEntry(), add_lv_column(), add_ms_root_certs(), AddAceToDesktop(), AddAceToWindowStation(), CMenuToolbarBase::AddButton(), BtrfsSend::AddClone(), BtrfsDeviceAdd::AddDevice(), AddDeviceW(), CMenuToolbarBase::AddPlaceholder(), CMenuToolbarBase::AddSeparator(), AddSubst(), AddToMessageLog(), AdvInstallFileW(), CTrayWindow::AlignControls(), AllocAndGetEntityArray(), AllowWinstaAccess(), AlphaBlendProc(), apartment_createwindowifneeded(), append_file(), append_file_test(), AppendFullPathURL(), AppendSystemPostfix(), BtrfsPropSheet::apply_changes_file(), ApplyGeneralSettings(), are_all_privileges_disabled(), assembly_create(), ata_send_ioctl(), ata_send_scsi(), AtlLoadTypeLib(), ATL::AtlLoadTypeLib(), AttachToConsoleInternal(), attr_cache_init(), BackgroundCopyJob_Cancel(), BackupBootSector(), BtrfsBalance::BalanceOptsDlgProc(), BaseCheckVDM(), BaseMemAllocator_Commit(), BaseMemAllocator_ReleaseBuffer(), BasepCopyFileExW(), BasepDoTapeOperation(), BasepGetComputerNameFromNtPath(), BaseWindowImpl_PrepareWindow(), CSecurityDescriptor::BeginDACLInteration(), CSecurityDescriptor::BeginSACLInteration(), bind_image(), BiosInitialize(), BtrfsSend::BrowseParent(), BuildLogListAndFilterList(), cabinet_copy_file(), cache_container_clean_index(), cache_container_lock_index(), cache_container_open_index(), cache_container_set_size(), cache_containers_add(), cache_containers_init(), cache_entry_exists(), cache_file_available(), cache_insert(), cache_UninstallAssembly(), callback_child(), CallBackConvertToAscii(), can_do_https(), capCreateCaptureWindowW(), CapTest(), cb_running(), cb_stopped(), CRecycleBinEnum::CBEnumRecycleBin(), CBSearchRecycleBin(), CertCreateSelfSignCertificate(), CertGetValidUsages(), CertRemoveEnhancedKeyUsageIdentifier(), CertUnregisterSystemStore(), ChangeACLsOfFiles(), ChangeACLsOfFilesInCurDir(), ChangeAttribute(), check_dc_state(), check_dirid(), check_exe(), check_instance_(), check_key(), check_menu_item_info(), check_param(), check_result(), check_thread_instance(), check_wellknown_name(), check_win9x(), checkChainPolicyStatus(), checkCRLHash(), checkHash(), CheckTestFile(), child_process(), ClassTest(), clean_up_aes_environment(), clean_up_base_environment(), cleanup_eventlog(), cleanup_gcc_exe(), cleanup_msvc_exe(), cleanup_tests(), clear_clipboard_(), ClearEvents(), ClientRpcChannelBuffer_SendReceive(), ClientSideInstallW(), clip_emf_enum_proc(), clipboard_render_data_thread(), clipboard_thread(), clipboard_wnd_proc(), clnt_vc_create(), Close(), close_async_handle(), close_debugger(), close_request(), CloseProcessAndVerify_(), CloseSharedMemory(), closetest_callback(), BtrfsRecv::cmd_chmod(), BtrfsRecv::cmd_chown(), BtrfsRecv::cmd_clone(), cmd_copy(), cmd_label(), BtrfsRecv::cmd_link(), cmd_mkdir(), BtrfsRecv::cmd_mkfile(), cmd_mklink(), cmd_move(), BtrfsRecv::cmd_removexattr(), cmd_rename(), BtrfsRecv::cmd_rename(), BtrfsRecv::cmd_rmdir(), cmd_rmdir(), BtrfsRecv::cmd_setxattr(), BtrfsRecv::cmd_snapshot(), cmd_start(), BtrfsRecv::cmd_subvol(), BtrfsRecv::cmd_truncate(), cmd_type(), BtrfsRecv::cmd_unlink(), BtrfsRecv::cmd_utimes(), BtrfsRecv::cmd_write(), cmdContinue(), cmdPause(), CmdSetExitCode(), CmdStartProcess(), cmdStop(), CmosInitialize(), MainFrameBase::Command(), MDIMainFrame::Command(), CommandThreadProc(), commit_cache_entry(), ATL::CAtlModule::CommonInitRegistrar(), CommonInstall(), compare_emf_bits(), compare_export_(), compare_mf_disk_bits(), compareStore(), CompleteFilename(), ComponentFactory_CreateBitmapFromHICON(), condvar_base_consumer(), condvar_consumer(), condvar_producer(), ConsoleEventThread(), context_create(), context_create_wgl_attribs(), context_destroy_gl_resources(), context_restore_gl_context(), context_set_current(), context_set_gl_context(), context_set_pixel_format(), Control(), control_service(), convert_nfs4acl_2_dacl(), ConvertAddrinfoFromUnicodeToAnsi(), _com_util::ConvertBSTRToString(), ConvertPath(), CClassNode::ConvertResourceDescriptorToString(), _com_util::ConvertStringToBSTR(), ConvertUTF8StringToBSTR(), copy_file(), copy_folder(), copy_install_file(), CopyDirectory(), CopyKey(), correct_behavior(), count_blocks(), CoWaitForMultipleHandles(), crash_and_debug(), crash_and_winedbg(), Create(), create_actctx(), create_and_write_file(), create_async_message_window(), create_backup(), create_cache_entry(), create_cdf_file(), create_converted_emf(), create_desk(), create_dialog(), create_file(), create_file_test(), create_fileW(), create_full_path(), create_full_pathW(), create_ico_file(), create_internet_session(), create_listview_control(), create_listview_controlW(), create_manifest(), create_manifest_file(), create_menu_from_data(), create_menuitem_from_data(), create_open_state(), create_overlapped_pipe(), create_package(), create_pipe_pair(), create_req_file(), create_server(), create_silly_rename(), create_snapshot(), create_storagefile(), create_stream(), create_target_process(), create_temp_binary(), create_test_actctx(), create_test_dll(), create_test_dll_sections(), create_test_file(), create_testfontfile(), create_textstream(), create_unknownsid(), create_window(), create_window_thread(), create_winsta(), create_writepipe_process(), CreateAssemblyCache(), CreateAudioDeviceList(), CKsProxy::CreateClockInstance(), SEALED_::CreateControlWindow(), CreateDirectoryPath(), CreateEnvironmentBlock(), CreateJob(), CreateLogoffSecurityAttributes(), CreateMain(), CreateMemoryDialog(), CreatePerfWindows(), CreateProcessAsUserA(), CreateProcessAsUserW(), CreateProcessInternalW(), CreateProfile(), CreateServers(), CreateServiceThread(), CCabinet::CreateSimpleCabinet(), CreateSoundThread(), CreateStandardProfile(), CreateTempDir(), CreateTestDir(), CreateTestFile(), CreateUserEnvironment(), CreateUserProfileExW(), CreateWindowStationAndDesktops(), CredUIPromptForCredentialsW(), CRYPT_AsnDecodeBits(), CRYPT_AsnDecodeBitsInternal(), CRYPT_AsnDecodeBitsSwapBytes(), CRYPT_AsnDecodeBool(), CRYPT_AsnDecodeCert(), CRYPT_AsnDecodeCertInfo(), CRYPT_AsnDecodeCertSignedContent(), CRYPT_AsnDecodeCRL(), CRYPT_AsnDecodeCRLEntries(), CRYPT_AsnDecodeCRLInfo(), CRYPT_AsnDecodeExtension(), CRYPT_AsnDecodePathLenConstraint(), CRYPT_AsnDecodePolicyQualifiers(), CRYPT_AsnDecodeRdnAttr(), CRYPT_AsnDecodeSequence(), CRYPT_AsnDecodeSequenceItems(), CRYPT_AsnDecodeSubtreeConstraints(), CRYPT_AsnDecodeUnicodeRdnAttr(), CRYPT_AsnEncodeAltName(), CRYPT_AsnEncodeAltNameEntry(), CRYPT_AsnEncodeBool(), CRYPT_AsnEncodeCRLDistPoints(), CRYPT_AsnEncodeCRLEntry(), CRYPT_AsnEncodeExtension(), CRYPT_AsnEncodeOctets(), CRYPT_AsnEncodeSequence(), CRYPT_CacheURL(), CRYPT_DownloadObject(), CRYPT_EncodeValueWithType(), CRYPT_FindIssuer(), CRYPT_GetObjectFromCache(), CRYPT_ImportSystemRootCertsToReg(), CRYPT_LoadProvider(), CRYPT_SaveSerializedToMem(), CryptCATAdminEnumCatalogFromHash(), CryptEnumProvidersA(), CryptEnumProviderTypesA(), CryptGetDefaultProviderA(), CryptProtectData(), CryptUnprotectData(), CSR_API(), CURSORICON_CopyImage(), d3dincludefromfile_open(), ddraw_attach_d3d_device(), ddraw_set_cooperative_level(), debug_init(), debugstr_sid(), DECLARE_INTERFACE_(), decodeAndCompareBase64_A(), decodeBase64WithLenFmt(), decompress_file_cab(), delegation_create(), delegation_return(), Delete(), delete_chm(), delete_file(), delete_files(), delete_folder(), delete_object(), delete_test_service(), DeleteFiles(), DeleteSubst(), demClientErrorEx(), demFileDelete(), demFileFindFirst(), demFileFindNext(), DemLoadNTDOSKernel(), derive_key(), DestroyService(), detect_nt(), DEVENUM_CreateSpecialCategories(), device_tests(), BtrfsVolPropSheet::DeviceDlgProc(), DeviceIdMatch(), DevInstallW(), DhcpCApiInitialize(), DiskFreeMain(), DismountMain(), dispatch_rpc(), display_error(), DisplayClassInstaller(), DisplayDeviceAdvancedProperties(), DisplayDevicePropertyText(), DisplayEntryPoint(), DisplayError(), DisplayPageSetDeviceDetails(), DisplayPendingOps(), dlg_configure_lpt(), DlgProc(), DlgThreadProc(), dll_entry_point(), DllMain(), DllRegisterServer(), do_child(), do_error_dialog(), do_file_copyW(), do_parent(), BtrfsRecv::do_recv(), do_register_dll(), BtrfsDeviceResize::do_resize(), do_spawnT(), do_typelib_reg_key(), do_wait_idle_child(), doChild(), doChildren(), doDebugger(), DoEjectDrive(), DoEntry(), DoesPortExist(), DoesUserHavePrivilege(), DoFileSave(), DoFormatMessage(), Telnet::DoInit(), DoOpenFile(), DoRegServer(), DoSaveFile(), DosChangeDirectory(), DosCmdInterpreterBop(), DosCreateFile(), DosCreateFileEx(), DosCreateProcess(), DosGetCountryInfo(), DosInitialize(), DosInt21h(), DosKRNLInitialize(), DosLoadDriver(), DosLoadExecutable(), DosLockFile(), DosOpenFile(), DosReadFile(), DosSeekFile(), DosStart(), DosStartProcess32(), DoStartService(), DosUnlockFile(), DosWriteFile(), dotest_spi_iconhorizontalspacing(), dotest_spi_iconverticalspacing(), DoUnregServer(), CVfdShExt::DoVfdDrop(), CVfdShExt::DoVfdProtect(), DownloadBSC_OnStopBinding(), downloadcb_OnStopBinding(), DPLAYX_ConstructData(), DrawDibBegin(), DriveDlgProc(), DrivesContextMenuCallback(), DrivesMain(), drop_window_therad(), dsm_RegisterWindowClasses(), DSoundRender_create(), dump_emf_records(), DumpFont(), DumpMemory(), DumpParams(), DwInitializeSdFromThreadToken(), empty_clipboard_thread(), CDeviceNode::EnableDevice(), EnableDevice(), EnablePrivilege(), EnablePrivilegeInCurrentProcess(), EnableThemeDialogTexture(), EnableUserModePnpManager(), encodeAndCompareBase64_A(), end_host_object(), Enum(), enum_thread(), EnumDepend(), EnumerateDevices(), EnumerateRecycleBinW(), EnumerateRunningServices(), EnumEventsThread(), EnumHotpluggedDevices(), EnumOLEVERB_Clone(), EnumPrintersW(), EnumServices(), error(), Escape(), eto_emf_enum_proc(), CShellCommandDACL::Execute(), CShellCommandOwner::Execute(), CShellCommandSACL::Execute(), execute_command(), ExecuteAsync(), exercizeServer(), ExitWindowsThread(), ExitWindowsWorker(), export_validate_filename(), Extract(), CZipExtract::Extract(), extract_gcc_exe(), extract_msvc_exe(), extract_one(), extract_test(), CCabinet::ExtractFile(), ExtractFilesFromCab(), ExtractZipImage(), ExtractZipInfo(), fetch_thread_info(), FiberMainProc(), file_get_Attributes(), file_get_Size(), file_matches_data(), file_put_Attributes(), ATL::CRegObject::file_register(), file_register(), FileAsyncReader_Length(), FileAsyncReader_Request(), FileAsyncReader_SyncRead(), FileAsyncReader_WaitForNext(), filecoll_get_Count(), FILEDLG95_MRU_load_filename(), FILEDLG95_MRU_save_filename(), FileExists(), FileLoadByHandle(), FileOpen(), FileProtocol_StartEx(), FileSource_Load(), filesys_CreateFolder(), filesys_GetFileVersion(), filesys_GetSpecialFolder(), fill_printer(), fill_service(), FillList(), FilterLoadUnload(), find_devices(), find_installed_ports(), find_local_server(), find_portinfo2(), find_tempfile(), FindCurrentDriver(), FindDfltProvRegVals(), FindFirstVolumeW(), FinishNotificationThread(), SEALED_::FireEventOutsideApartmentAsync(), flush_proc(), FmtAcquireDrive_(), foldercoll_get_Count(), Format(), format_size(), FormatOutput(), BtrfsVolPropSheet::FormatUsage(), FormatVerisignExtension(), FrameWndProc(), free_package_structures(), FreeFunctionPointer(), FTP_FtpOpenFileW(), FTPFILE_ReadFile(), FtpProtocol_open_request(), FtpProtocol_start_downloading(), full_file_path_name_in_a_CWD(), Generate(), get_base_dir(), get_clipboard_data_process(), get_combobox_info(), get_computer_name(), get_connected_filter_name(), get_current_group(), get_current_owner(), get_device(), get_drive_connection(), get_driver_infoA(), get_driver_infoW(), get_ea_list(), get_field_string(), get_file_handle(), get_file_version(), get_font_fsselection(), get_glyph_indices(), get_language_string(), get_last_error(), get_lock_error(), get_menu_style(), get_owner(), get_printer_infoA(), get_printer_infoW(), get_redirect_url(), get_script_from_file(), get_sid_info(), get_url_components(), get_user_sid(), get_versioned_classname(), getaddrinfo(), GetAllUsersProfileDirectoryW(), GetAndSendInputThread(), CAddressBand::GetBandInfo(), CExplorerBand::GetBandInfo(), GetBatteryState(), DriveVolume::GetBitmap(), GetBitmapPixelBuffer(), getChain(), GetClassInfoExA(), GetClassInfoExW(), DriveVolume::GetClusterInfo(), GetComputerNameA(), GetComputerNameW(), GetComputerObjectNameW(), CSecurityDescriptor::GetDACLEntriesCount(), CSecurityDescriptor::GetDACLEntry(), GetDefaultPrinterA(), GetDefaultUserProfileDirectoryW(), GetDeviceCapabilities(), GetDeviceData(), getDeviceInterfaceDetail(), GetDeviceListInterfaces(), GetDiskFreeSpaceExW(), GetDiskGeometry(), GetDisplayName(), getdomainname(), GetError(), GetFromToken(), GetFunctionPointer(), GetHardwareAndCompatibleIDsLists(), gethostbyaddr(), gethostbyname(), GetIFEntry(), GetIPSNMPInfo(), GetKeyName(), GetLastErrorText(), GetLineText(), GetListOfTestExes(), GetLocaleName(), GetLocalsplFuncs(), GetNameInfoW(), GetNumberOfExesInFolder(), GetPathOfFile(), GetPortNameWithoutColon(), GetProfilesDirectoryW(), CSecurityDescriptor::GetSACLEntriesCount(), CSecurityDescriptor::GetSACLEntry(), GetServiceConfig(), GetServiceDescription(), GetServiceDllFunction(), GetServiceList(), GetServiceMainFunctions(), GetServices(), GetSetFileTimestamp(), GetSpoolssFunc(), GetStorageDirectory(), GetTdiEntityType(), GetTempFileNameW(), GetThemeBackgroundRegion(), GetThemeSysFont(), GetThemeTextMetrics(), CTravelLog::GetToolTipText(), GetUserAndDomainName(), GetUserNameW(), GetUserProfileDirectoryW(), GetUserSid(), GetUserToken(), GetVolumeNameForRoot(), GetVolumePathNamesForVolumeNameA(), GetVolumePathNamesForVolumeNameW(), GetVolumePathNameW(), GetWinprintFunc(), getxyDataEnt(), gl_local_filename_completion_proc(), GopherProtocol_open_request(), grab_clipboard_process(), GuiConsoleShowConsoleProperties(), GuiSaveParam(), handle_getacl(), handle_lock(), handle_readdir(), handle_setacl(), HandleException(), HandleLogoff(), HandleShutdown(), hash_mac_addrs(), header_cb(), Help(), HideMinimizedWindows(), HotkeyThread(), HTMLDocument_get_cookie(), HTMLDocument_put_cookie(), HTMLLocation_get_href(), HTMLWindow2_alert(), HTMLWindow2_confirm(), HTTP_RetrieveEncodedObjectW(), HttpHeaders_test(), HttpProtocol_end_request(), HttpProtocol_open_request(), HttpProtocol_start_downloading(), HTTPREQ_QueryOption(), HttpSendRequestEx_test(), ICO_ExtractIconExW(), COpenWithMenu::IconToBitmap(), IDirectInputAImpl_RunControlPanel(), IDirectSoundCaptureBufferImpl_Start(), IdnToNameprepUnicode(), IEffectivePermission_fnGetEffectivePermission(), ImageSymToVa(), ImpersonatePrinterClient(), import_reg(), import_validate_filename(), SEALED_::IMsRdpClient::RequestClose(), CConsole::Init(), init(), init_access_tests(), init_aes_environment(), init_base_environment(), init_functions(), BtrfsPropSheet::init_propsheet(), init_sym_imp(), init_test(), init_wksta_tests(), InitApplet(), InitEntrypointMutexes(), CFileDefExt::InitFileType(), InitFont(), Initialize(), BtrfsPropSheet::Initialize(), CFileSysEnum::Initialize(), CExplorerBand::InitializeExplorerBand(), InitializePnPManager(), InitializePortList(), InitializePrintMonitor2(), InitializePrintMonitorList(), InitializePrintProcessorList(), InitializeProfiles(), InitializeProgramFilesDir(), InitializeScreenSaver(), InitiateShutdownA(), InitiateSystemShutdownThread(), InitLogging(), InitPropertyBag_IPropertyBag_Read(), InitShellServices(), InputWait(), insendmessage_wnd_proc(), insert_menu_item(), install_assembly(), install_init(), install_policy(), InstallBuiltinAccounts(), InstallCurrentDriver(), InstallDevice(), InstallDeviceData(), InstallDevInst(), InstallEventSource(), InstallHinfSectionW(), InstallLiveCD(), InstallNetDevice(), InstallOneInterface(), InstallOneService(), InstallParallelPort(), InstallPrivileges(), InstallReactOS(), InstallScreenSaverW(), InstallSerialPort(), InstallSoftwareDeviceInterface(), InstallSoftwareDeviceInterfaceInf(), InstallSysSetupInfComponents(), IntDeleteRecursive(), InteractiveConsole(), InternalExplicitAccessAToW(), InternalTrusteeAToW(), INTERNET_InternetOpenUrlW(), InternetCrackUrl_test(), InternetCrackUrlW(), InternetCrackUrlW_test(), InternetCreateUrlA(), InternetCreateUrlA_test(), InternetExplorer_put_MenuBar(), InternetLockRequestFile_test(), InternetOpenRequest_test(), InternetOpenUrlA_test(), InternetReadFile_chunked_test(), InternetReadFile_test(), InternetReadFileExA_test(), InternetTimeFromSystemTimeA_test(), InternetTimeFromSystemTimeW_test(), InternetTimeToSystemTimeA_test(), InternetTimeToSystemTimeW_test(), InternetTransport_Connect(), BtrfsContextMenu::InvokeCommand(), iocp_async_closesocket(), iocp_async_read(), iocp_async_read_closesocket(), iocp_async_read_thread(), iocp_async_read_thread_closesocket(), ioctl(), COutputPin::IoProcessRoutine(), is_font_available(), ISecurityObjectTypeInfo_fnGetInheritSource(), IsLetterOwned(), IsNTAdmin(), CShellDispatch::IsServiceRunning(), IStream_fnRead(), IStream_fnSeek(), IStream_fnWrite(), IsUserAnAdmin(), ITERATE_DeleteService(), ITERATE_DuplicateFiles(), ITERATE_InstallService(), ITERATE_MoveFiles(), ITERATE_RemoveDuplicateFiles(), ITERATE_RemoveExistingProducts(), ITERATE_RemoveIniValuesOnInstall(), ITERATE_RemoveIniValuesOnUninstall(), ITERATE_RemoveShortcuts(), iterate_section_fields(), ITERATE_StartService(), ITERATE_StopService(), K32CreateDBMonMutex(), kernel32_find(), kernel_wctomb(), keyboard_tests(), KillComProcesses(), KmtFltDisconnect(), KmtFltGetMessageResult(), KmtSendBufferToDriver(), KmtSendStringToDriver(), KmtSendToDriver(), KmtSendUlongToDriver(), KmtSendWStringToDriver(), CKsInterfaceHandler::KsCompleteIo(), KsOpenDefaultDevice(), CKsInterfaceHandler::KsProcessMediaSamples(), KsSynchronousDeviceControl(), ShellEntry::launch_entry(), launch_entry(), launch_exe(), launch_file(), LauncherRoutine2(), LdapGetLastError(), Link(), LISTBOX_Directory(), CDeviceView::ListDevicesByType(), CKsProxy::Load(), load_blackbox(), load_driver(), load_encryption_key(), load_persistent_cookie(), load_process_feature(), load_profile(), load_resource(), load_resource_into_memory(), load_v6_module(), load_xul(), LoadAndInitialize(), LoadAndInitializeNtMarta(), LoadBios(), LoadIconWithScaleDown(), COpenWithList::LoadInfo(), LoadModule(), LoadModuleWithSymbolsFullPath(), LoadRom(), LoadScreenSaverParameters(), SEALED_::LoadTypeLibrary(), LoadUserProfileW(), local_server_thread(), LocalEndDocPrinter(), LocalEnumPrintProcessorDatatypes(), LocalmonGetPrinterDataFromPort(), LocalmonOpenPort(), LocalmonReadPort(), LocalmonSetPortTimeOuts(), LocalmonStartDocPort(), LocalmonWritePort(), LocalmonXcvOpenPort(), LocalOpenPrinter(), LocalReadPrinter(), LocalScheduleJob(), LocalStartDocPrinter(), localui_AddPortUI(), LocalWritePrinter(), LockOrUnlockVolume(), LogErrorConsole(), LogoffShutdownThread(), LogToFile(), LogWarningConsole(), LookupPrivilegeDisplayNameA(), LookupPrivilegeNameA(), LS_ThreadProc(), LsapInitLsa(), mailslot_test(), main(), MAIN_LoadSettings(), MainDialogProc(), make_impersonation_token(), MakeFullPath(), MakeService(), MakeSharedPacket(), MakeSureDirectoryPathExists(), map_dacl_2_nfs4acl(), map_file(), map_image_section(), map_name_2_sid(), map_nfs4ace_who(), map_user_to_ids(), map_view_of_file(), MapAndLoad(), MapOnCreate(), MCIAVI_RegisterClass(), MCICDA_GetError(), MCICDA_GetStatus(), MCICDA_playLoop(), MCIWndRegisterClass(), menu_track_again_wnd_proc(), mi_show_error(), midiStreamPause(), midiStreamRestart(), MMDevEnum_RegisterEndpointNotificationCallback(), modify_menu(), MountDisk(), MountFDI(), MountHDD(), mouse_tests(), DriveVolume::MoveFileDumb(), MsgCheckProc(), msi_create_empty_local_file(), msi_create_full_path(), msi_download_file(), msi_get_filehash(), msi_move_file(), MSI_OpenPackageW(), msi_publish_patches(), msi_set_original_database_property(), MsiCreateAndVerifyInstallerDirectory(), MsiEnableLogW(), MSSTYLES_OpenThemeFile(), MSTASK_ITaskScheduler_GetTargetComputer(), msvcrt_get_thread_data(), MultiWndProc(), my_open(), my_test_server(), MySetFilePointerEx(), named_pipe_client_func(), NetApiBufferAllocate(), NetApiBufferReallocate(), NetClassInstaller(), netcon_secure_connect_setup(), netconn_secure_connect(), netconn_verify_cert(), NetIDPage_OnApply(), new_window(), new_windowW(), nfs41_client_create(), nfs41_client_owner(), nfs41_idmap_create(), nfs41_name_cache_create(), nfs41_root_create(), nfs41_rpc_clnt_create(), nfs41_session_set_lease(), NLS_EnumCalendarInfo(), no_stop_main(), notif_thread_proc(), NotificationThread(), NotifyLogon(), NPAddConnection3(), NPCancelConnection(), NtfsInfoMain(), ok_path(), ole_server(), OleRegEnumVerbs(), CSysPagerWnd::OnCreate(), OnCreate(), CTrayWindow::OnNcHitTest(), OnOK(), CDownloadDialog::OnProgress(), OnShutDown(), Telnet::Open(), BtrfsSend::Open(), BtrfsRecv::Open(), Open(), BtrfsPropSheet::open_as_admin(), open_async_request(), open_debugger(), open_desk(), open_file_test(), open_log_files(), open_socket_request(), open_winsta(), OpenColorProfileW(), OpenDevice(), OpenDeviceKey(), OpenDeviceList(), OpenFile(), OpenFilter(), OpenKernelDevice(), OpenKernelSoundDeviceByName(), OpenPrinterW(), OpenSharedMemory(), OpenUserEventLogFile(), OpenUserRegistryPathPerProcessId(), OpenVolume(), output_formatstring(), output_message(), OutputError(), OutputErrorCode(), overlapped_server(), parse_url_from_outside(), PARSER_GetInfClassW(), patch_assembly(), patch_file(), PathCanonicalizeA(), pattern_fork(), CKsClockForwarder::Pause(), BtrfsBalance::PauseBalance(), PauseBalanceW(), BtrfsScrub::PauseScrub(), PdhCollectQueryDataEx(), pendingRename(), PerformIO(), PersistFile_Save(), Ping(), pipe_thread(), pipeClient(), pipeServer(), pipeserver(), PipeThreadProc(), PlayLogonSoundThread(), PlotCharacter(), PNP_ReportLogOn(), BtrfsDeviceAdd::populate_device_tree(), print_condwait_status(), print_err(), PrintAttribute(), PrintDaclsOfFiles(), PrintDirectoryHeader(), PrintDlgA(), PrintDlgW(), PrintFileDacl(), PrintingThreadProc(), PrintLastError(), PrintRawJob(), PrintVolumeHeader(), printWindowsError(), priorityTimeProc(), Privilege(), process_pending_renames(), processFile(), ProcessPlayingNotes(), ProcessRunKeys(), ProcessStartupItems(), ProcessUnattendInf(), PROFILE_FlushFile(), profile_items_callback(), PROFILE_Load(), PROFILE_Open(), prompt_dlgproc(), Protect(), protocol_continue(), protocol_lock_request(), protocol_read(), protocol_syncbinding(), protocol_unlock_request(), ProtocolStream_Seek(), proxy_active(), proxy_manager_construct(), PS2MousePropPageProvider(), pSetSecurityInfoCheck(), pSetupInstallCatalog(), pSetupOpenAndMapFileForRead(), PullPin_InitProcessing(), query_http_info(), query_image_section(), query_service_config(), QueryConfig(), QueryConfig2A(), QueryConfig2W(), CTrayWindowCtxMenu::QueryContextMenu(), QueryDescription(), QueryDeviceName(), QueryDNS(), QueryMain(), QueryService(), QuerySubstedDrive(), QuerySuggestedLinkName(), QueryUniqueId(), queue_async(), rdssl_cert_read(), rdssl_cert_to_rkey(), rdssl_certs_ok(), rdssl_hash_clear(), rdssl_hash_complete(), rdssl_hash_info_create(), rdssl_hash_transform(), rdssl_hmac_md5(), rdssl_rc4_crypt(), rdssl_rc4_info_create(), rdssl_rc4_info_delete(), rdssl_rc4_set_key(), read_entire_dir(), read_expect_async(), read_http_stream(), read_i(), read_pipe(), read_pipe_test(), read_trusted_roots_from_known_locations(), read_utf8(), ReadAndHandleOutput(), ReadJobShadowFile(), readproc(), ReadVolumeSector(), CKsProxy::Reassociate(), recFindSubDirs(), RECORD_StreamFromFile(), RecursiveRemoveDir(), BtrfsRecv::recv_thread(), BtrfsRecv::RecvProgressDlgProc(), RecvSubvolGUIW(), RecycleBin5_Constructor(), RecycleBin5_Create(), RecycleBin5_RecycleBin5_Delete(), RecycleBin5_RecycleBin5_DeleteFile(), RecycleBin5_RecycleBin5_Restore(), RecycleBin5Enum_Constructor(), RecycleBin5Enum_RecycleBinEnumList_Next(), RecycleBin5File_RecycleBinFile_GetAttributes(), RecycleBin5File_RecycleBinFile_GetFileSize(), RecycleBin5File_RecycleBinFile_GetLastModificationTime(), RecycleBinGeneric_RecycleBin_DeleteFile(), RecycleBinGeneric_RecycleBin_EmptyRecycleBin(), BtrfsContextMenu::reflink_copy(), reflink_copy2(), BtrfsBalance::RefreshBalanceDlg(), BtrfsVolPropSheet::RefreshDevList(), BtrfsScrub::RefreshScrubDlg(), RegConnectRegistryW(), RegGetDWORD(), RegGetSZ(), register_service(), register_service_exA(), register_service_exW(), register_testwindow_class(), RegisterDriver(), RegisterForDeviceNotifications(), RegistrationProc(), REGPROC_print_error(), RegQueryStringA(), remove(), remove_dir(), RemoveDeviceW(), RemovePort(), RemoveTempFont(), rename(), ReplaceFileW(), report(), report_service_status(), ReportLastError(), res_sec_url_cmp(), BtrfsVolPropSheet::ResetStats(), ResetStatsW(), ResizeDeviceW(), ResizeTextConsole(), ATL::CRegObject::resource_register(), resource_register(), ResProtocol_Start(), RetreiveFileSecurity(), RetrieveQuote(), RevertToPrinterSelf(), RPC_GetLocalClassObject(), RPC_StartLocalServer(), RpcReadFile(), rpcrt4_conn_create_pipe(), rpcrt4_conn_np_impersonate_client(), rpcrt4_conn_np_revert_to_self(), rpcrt4_conn_open_pipe(), rpcrt4_http_check_response(), rpcrt4_http_internet_connect(), rpcrt4_http_prepare_in_pipe(), RPCRT4_io_thread(), rpcrt4_ncacn_http_open(), rpcrt4_ncacn_np_handoff(), rpcrt4_ncalrpc_handoff(), RPCRT4_new_client(), rpcrt4_protseq_np_wait_for_new_connection(), rpcrt4_protseq_sock_wait_for_new_connection(), rpcrt4_sock_wait_for_recv(), rpcrt4_sock_wait_for_send(), RpcServerInqDefaultPrincNameW(), rpcThreadMain(), Rs232ConfigurePortWin32(), Rs232OpenPortWin32(), Rs232ReadByteWin32(), Rs232SetCommunicationTimeoutsWin32(), Rs232WriteByteWin32(), run_apibuf_tests(), run_child_process(), run_cmd(), run_ex(), run_from_file(), run_reg_exe_(), run_script(), run_script_file(), run_spi_setmouse_test(), run_tests(), run_thread(), runCmd(), RunInstallReactOS(), CWineTest::RunTest(), CMainWindow::s_EnumAvailableAppProc(), SaBlob_CreateFromRecords(), SaBlob_Query(), SaBlob_WriteNameOrAlias(), Save(), save_credentials(), savedc_emf_enum_proc(), SaveEventLog(), sc_cb_lseek(), ScConnectControlPipe(), SchedEventLogoff(), SchedServiceMain(), SchedStartShell(), ScmControlService(), ScmCreateNewControlPipe(), ScmLogAccountHack(), ScmLogEvent(), ScmLogonService(), ScmReadString(), ScmSendStartCommand(), ScmStartUserModeService(), ScmWaitForLsa(), ScmWaitForServiceConnect(), ScreenSaverThreadMain(), ScServiceDispatcher(), SdbpGetLongPathName(), SdSet(), SdShow(), SearchDriver(), send_http_request(), send_msg_thread(), send_msg_thread_2(), send_socket_request(), SendClientShutdown(), SendClipboardOwnerMessage(), CHttpClient::SendFile(), SendRequest(), SendSubvolGUIW(), SendTo_NFS41Driver(), serializeIcon(), SerialPortQuery(), server(), server_create(), server_send_reply(), serverThreadMain1(), serverThreadMain2(), serverThreadMain3(), serverThreadMain4(), serverThreadMain5(), service_main(), service_main_common(), service_process(), ServiceInfo(), ServiceInit(), ServiceMain(), ServiceStart(), session_alloc(), set_auth_cookie(), set_clipboard_data_process(), set_clipboard_data_thread(), BtrfsPropSheet::set_cmdline(), set_installer_properties(), set_menu_item_info(), set_menu_style(), set_privileges(), set_up_attribute_test(), set_up_case_test(), SetConfig(), SetDefaultLanguage(), SetDescription(), SetDeviceDetails(), SetDriverLoadPrivilege(), SetFailure(), SetMain(), SetParallelState(), SetPrivilege(), SetRootPath(), SETUP_CreateDevicesListFromEnumerator(), SETUP_CreateInterfaceList(), SetupCommitFileQueueW(), SetupCopyOEMInfW(), SetupDecompressOrCopyFileW(), SetupDiBuildDriverInfoList(), SetupDiCallClassInstaller(), SetupDiChangeState(), SetupDiGetClassImageListExW(), SetupDiGetDeviceInstanceIdA(), SetupDiGetDeviceRegistryPropertyA(), SetupDiInstallDevice(), SetupDiInstallDeviceInterfaces(), SetupDiRegisterCoDeviceInstallers(), SetupGetFileCompressionInfoA(), SetupGetFileCompressionInfoW(), SetupGetInfFileListW(), SetupGetIntField(), SetupInstallServicesFromInfSectionExW(), CClassNode::SetupNode(), SetupStartService(), SetUserEnvironmentVariable(), SetWindowTheme(), SH_GetTargetTypeByPath(), CShellLink::SH_ShellLinkDlgProc(), SHAddToRecentDocs(), SHCreateSessionKey(), SHCreateStreamOnFileEx(), SheChangeDirA(), SheChangeDirW(), SheGetDirA(), SheGetDirW(), shell_execute_ex_(), SHELL_ExecuteW(), SHEmptyRecycleBinA(), SHEmptyRecycleBinW(), SHNotifyCopyFileW(), SHNotifyCreateDirectoryW(), SHNotifyDeleteFileW(), SHNotifyMoveFileW(), SHNotifyRemoveDirectoryW(), BtrfsBalance::ShowBalance(), ShowLastError(), ShowLastWin32Error(), ShowParallelStatus(), BtrfsRecv::ShowRecvError(), BtrfsVolPropSheet::ShowScrub(), ShowScrubW(), BtrfsSend::ShowSendError(), ShowStringError(), ShowUsage(), ShowX509EncodedCertificate(), SHPathPrepareForWriteW(), SHQueryRecycleBinA(), SHUnicodeToAnsiCP(), ShutDown_Hibernate(), ShutDown_LockComputer(), ShutDown_LogOffUser(), ShutDown_PowerOff(), ShutDown_Reboot(), ShutDown_StandBy(), SIC_Initialize(), SIC_OverlayShortcutImage(), SOFTPUB_CreateStoreFromMessage(), SOFTPUB_DecodeInnerContent(), SOFTPUB_GetFileSubject(), SOFTPUB_GetMessageFromFile(), SOFTPUB_GetSIP(), SOFTPUB_LoadCatalogMessage(), SOFTPUB_LoadCertMessage(), SOFTPUB_OpenFile(), SOFTPUB_VerifyImageHash(), source_matches_volume(), spapi_install(), SplInitializeWinSpoolDrv(), SPY_DumpStructure(), SPY_EnterMessage(), SPY_ExitMessage(), SPY_GetMsgName(), StampFileSecurity(), Start(), start_local_service(), start_rpcss(), start_server(), start_service(), START_TEST(), StartAudioService(), StartAutoApplications(), BtrfsBalance::StartBalance(), StartBalanceW(), StartChild(), StartComponentRegistration(), StartDevice(), StartDocPrinterA(), StartDocPrinterW(), StartDriver(), StartNotificationThread(), StartOneService(), StartScreenSaver(), BtrfsScrub::StartScrub(), BtrfsSend::StartSend(), StartServicesManager(), StartStopEnumEventsThread(), StartSystemAudioServices(), StartSystemShutdown(), startup(), StatisticsMain(), Status(), statusclb_OnDataAvailable(), statusclb_OnStopBinding(), StdMemAllocator_Free(), StgOpenStorage(), stop_service(), stop_service_dependents(), BtrfsBalance::StopBalance(), StopBalanceW(), StopDriver(), BtrfsScrub::StopScrub(), superblock_create(), SvcRegisterStopCallback(), sw_fb_renderbuffer_storage(), SyncOverlappedDeviceIoControl(), system(), system_time_to_minutes(), SystemClockPostMessageToAdviseThread(), SystemSetTime(), TakeOwnershipOfFile(), task_proc(), TCPSendIoctl(), tear_down_attribute_test(), tear_down_case_test(), Test1(), Test2(), Test3(), test_32bit_ddb(), test_32bit_win(), test_3des(), test_3des112(), test__Gettnames(), test__hread(), test__hwrite(), test__lclose(), test__lcreat(), test__llopen(), test__llseek(), test__lread(), test__lwrite(), test_abort_proc(), test_AbortWaitCts(), test_accelerators(), test_accept(), test_AcceptEx(), test_AccessCheck(), test_acls(), test_acquire(), test_acquire_context(), test_actctx(), test_actctx_classes(), test_add_atom(), test_add_certificate(), test_AddAce(), test_AddDefaultForUsage(), test_AddDllDirectory(), test_AddERExcludedApplicationA(), test_AddFontMemResource(), Test_AddFontResourceA(), Test_AddFontResourceExW(), test_AddMandatoryAce(), test_AddMonitor(), test_AddPort(), test_AddPortEx(), test_AddPortUI(), test_AddRem_ActionID(), test_AddRemoveProvider(), test_AddSelfToJob(), test_aes(), test_alertable(), test_alertable_wait(), test_alloc_shared(), test_alloc_shared_remote(), test_allocateLuid(), test_anglearc(), test_apc_deadlock(), test_app_manifest(), Test_ApphelpCheckRunApp(), test_ApphelpCheckShellObject(), test_arcto(), test_AssociateColorProfileWithDeviceA(), test_async(), test_async_HttpSendRequestEx(), test_async_read(), test_attach_input(), test_autoscroll(), test_AVISaveOptions(), test_backup(), test_bad_header(), test_basic_auth_credentials_reuse(), test_basic_authentication(), test_basic_info(), test_basic_request(), Test_BeginPath(), test_bind_image_ex(), test_BindToObject(), Test_Bitmap(), test_bitmap(), test_bitmap_font_metrics(), test_bitmapinfoheadersize(), test_block_cipher_modes(), test_bogus_accept_types_array(), test_BreakawayOk(), test_broadcast(), Test_Brush(), test_brush_pens(), Test_bug3481(), test_BuildCommDCBAndTimeoutsW(), test_BuildCommDCBW(), test_BuildOtherNamesFromMachineName(), test_BuildSecurityDescriptorW(), test_builtinproc(), test_cache_control_verb(), test_cache_read(), test_cache_read_gzipped(), test_calchash(), test_cancelio(), test_CanUserWritePwrScheme(), test_capture_4(), test_catalog_properties(), test_cdf_parsing(), test_cdrom_ioctl(), test_CERT_CHAIN_PARA_cbSize(), test_cert_struct(), test_CertGetNameStringA(), test_CertNameToStrA(), test_CertNameToStrW(), test_CertRDNValueToStrA(), test_CertRDNValueToStrW(), test_CertStrToNameA(), test_CertStrToNameW(), test_ChangeDisplaySettingsEx(), test_CheckTokenMembership(), test_child_token_sd(), test_child_token_sd_medium(), test_child_token_sd_restricted(), test_chunked_read(), test_classesroot(), test_clear(), test_click_make_new_folder_button(), test_ClipboardOwner(), test_clock(), test_close(), test_close_inf_file(), test_CloseHandle(), test_ClosePort(), test_ClosePrinter(), Test_CloseWhileSelectDuplicatedSocket(), Test_CloseWhileSelectSameSocket(), test_cmdline(), test_CoCreateInstance(), test_CodePageToScriptID(), test_CoGetClassObject(), test_CoGetContextToken(), test_CoGetObjectContext(), test_color_contexts(), Test_CombineRgn_AND(), Test_CombineRgn_COPY(), Test_CombineRgn_DIFF(), Test_CombineRgn_Params(), Test_CombineRgn_XOR(), Test_CombineTransform(), test_combobox_messages(), test_comboex_WM_LBUTTONDOWN(), test_comctl32_class(), test_command(), Test_CommandLine(), test_CommandLine(), test_commandline2argv(), test_CompareStringA(), test_CompareStringOrdinal(), test_CompareStringW(), test_compatibility(), test_completion(), test_completion_port(), test_CompletionPort(), test_complicated_cookie(), test_concurrent_header_access(), test_condvars_base(), test_ConfigurePort(), test_ConfigurePortUI(), test_conn_close(), test_connect(), test_ConnectEx(), test_connection_cache(), test_connection_closing(), test_connection_failure(), test_connection_info(), test_Console(), test_container_sd(), test_context(), test_contextmenu(), test_conversions(), test_ConvertFiberToThread(), test_ConvertStringSecurityDescriptor(), test_ConvertThreadToFiber(), test_ConvertThreadToFiberEx(), test_cookie_attrs(), test_cookie_header(), test_cookie_url(), test_cookies(), test_copy(), test_CopyFile2(), test_CopyFileA(), test_CopyFileEx(), test_CopyFileW(), test_CopyMetaFile(), test_CoRegisterPSClsid(), test_count(), test_CoWaitForMultipleHandles(), test_CoWaitForMultipleHandles_thread(), test_cp855(), test_cp932(), test_crack_url(), test_create(), test_create_and_fail(), test_create_catalog_file(), test_create_delete_svc(), test_create_env(), test_create_fail(), test_create_syslink(), test_create_wide_and_fail(), test_create_window(), test_CreateActCtx(), test_CreateBitmap(), Test_CreateCompatibleDC(), Test_CreateDialogW(), Test_CreateDIBitmap1(), Test_CreateDIBitmap_CBM_CREATDIB(), Test_CreateDIBitmap_DIB_PAL_COLORS(), Test_CreateDIBPatternBrushPt(), test_createdir(), test_CreateDirectoryA(), test_CreateDirectoryW(), test_CreateFile(), test_CreateFile2(), test_CreateFileA(), test_CreateFileMapping(), test_CreateFileMapping_protection(), test_CreateFileW(), test_createfolder(), test_CreateFontIndirect(), test_CreateFontIndirectEx(), test_CreateIcon(), test_CreateIconFromResource(), test_CreateMultiProfileTransform(), test_CreateNamedPipe(), test_CreateNamedPipe_instances_must_match(), Test_CreatePen(), test_CreateProcessWithDesktop(), test_CreateRemoteThread(), test_CreateRestrictedToken(), test_CreateScalableFontResource(), Test_CreateService(), test_CreateStub(), test_CreateTextFile(), test_CreateThread_basic(), test_CreateWellKnownSid(), test_CreateWindow(), test_CredDeleteA(), test_credentials(), test_CredIsMarshaledCredentialA(), test_CredMarshalCredentialA(), test_CredReadA(), test_CredReadDomainCredentialsA(), test_CredUnmarshalCredentialA(), test_CredWriteA(), test_crypt_ui_wiz_import(), test_cryptAllocate(), test_CryptCATAdminAddRemoveCatalog(), test_CryptCATCDF_params(), test_CryptCATOpen(), test_cryptprotectdata(), test_cryptTls(), test_cryptunprotectdata(), test_csparentdc(), test_CurrentDirectoryA(), test_Data(), test_data_handles(), test_data_msg_encoding(), test_data_msg_get_param(), test_data_msg_open(), test_data_msg_update(), test_dbcs_to_widechar(), test_dde(), test_dde_default_app(), test_DdeCreateStringHandleW(), test_debug_children(), test_debug_heap(), test_debug_loop(), test_decode_msg_get_param(), test_decode_msg_update(), test_decodeAltName(), test_decodeAuthorityInfoAccess(), test_decodeAuthorityKeyId(), test_decodeAuthorityKeyId2(), test_decodeBasicConstraints(), test_decodeBits(), test_decodeCatMemberInfo(), test_decodeCatNameValue(), test_decodeCert(), test_decodeCertPolicies(), test_decodeCertPolicyConstraints(), test_decodeCertPolicyMappings(), test_decodeCertToBeSigned(), test_decodeCMSSignerInfo(), test_decodeCRLDistPoints(), test_decodeCRLIssuingDistPoint(), test_decodeCRLToBeSigned(), test_decodeCTL(), test_decodeEnhancedKeyUsage(), test_decodeEnumerated(), test_decodeExtensions(), test_decodeFiletime(), test_decodeInt(), test_decodeName(), test_decodeNameConstraints(), test_decodeNameValue(), test_decodeOctets(), test_decodePKCSAttribute(), test_decodePKCSAttributes(), test_decodePKCSContentInfo(), test_decodePKCSSignerInfo(), test_decodePKCSSMimeCapabilities(), test_decodePolicyQualifierUserNotice(), test_decodePublicKeyInfo(), test_decodeRsaPrivateKey(), test_decodeRsaPublicKey(), test_decodeSequenceOfAny(), test_decodeSPCFinancialCriteria(), test_decodeSPCLink(), test_decodeSPCPEImage(), test_decodeSpOpusInfo(), test_decodeUnicodeName(), test_decodeUnicodeNameValue(), test_default_dacl_owner_sid(), test_default_handle_security(), test_default_ime_window_creation(), test_default_service_port(), test_deferwindowpos(), test_DefineDosDeviceA(), test_delete_services(), test_deletecontext(), test_deletefile(), test_DeleteFileA(), test_DeleteFileW(), test_DeleteMonitor(), test_DeletePort(), test_DeletePwrScheme(), test_des(), Test_DesktopAccess(), test_destination_buffer(), test_destroy(), test_destroy_read(), test_DestroyCursor(), test_DestroyWindow(), test_detailed_info(), test_device_caps(), test_device_info(), test_DialogBoxParam(), test_DialogCancel(), test_dialogmode(), test_dib_bits_access(), test_DIB_PAL_COLORS(), Test_Dibsection(), test_dibsections(), test_digit_substitution(), test_Directory(), test_DisconnectNamedPipe(), test_disk_extents(), test_dllredirect_section(), test_DnsFlushResolverCacheEntry_A(), test_DocumentProperties(), test_domain_password(), test_domdoc(), test_dpa(), Test_DPtoLP_Params(), test_DrawState(), test_DrawTextCalcRect(), test_drive_letter_case(), test_driver_install(), test_drvCommConfigDialogA(), test_drvCommConfigDialogW(), test_drvGetDefaultCommConfigA(), test_drvGetDefaultCommConfigW(), test_DuplicateHandle(), test_dvd_read_structure(), Test_DWP_Error(), test_editselection(), test_editselection_focus(), test_EM_GETTEXTLENGTHEX(), test_EM_SCROLLCARET(), test_EM_SETOPTIONS(), test_emf_BitBlt(), test_emf_clipping(), test_emf_DCBrush(), test_emf_ExtTextOut_on_path(), test_emf_GradientFill(), test_emf_paths(), test_emf_polybezier(), test_emf_PolyPolyline(), test_emf_WorldTransform(), test_empty_headers_param(), Test_EmptyFile(), test_emptypopup(), test_encodeAltName(), test_encodeAuthorityInfoAccess(), test_encodeAuthorityKeyId(), test_encodeAuthorityKeyId2(), test_encodeBasicConstraints(), test_encodeBits(), test_encodeCatMemberInfo(), test_encodeCatNameValue(), test_encodeCert(), test_encodeCertPolicies(), test_encodeCertPolicyConstraints(), test_encodeCertPolicyMappings(), test_encodeCertToBeSigned(), test_encodeCMSSignerInfo(), test_encodeCRLDistPoints(), test_encodeCRLIssuingDistPoint(), test_encodeCRLToBeSigned(), test_encodeCTL(), test_encodeEnhancedKeyUsage(), test_encodeEnumerated(), test_encodeExtensions(), test_encodeInt(), test_encodeName(), test_encodeNameConstraints(), test_encodeNameValue(), test_encodeOctets(), test_encodePKCSAttribute(), test_encodePKCSAttributes(), test_encodePKCSContentInfo(), test_encodePKCSSignerInfo(), test_encodePKCSSMimeCapabilities(), test_encodePolicyQualifierUserNotice(), test_encodePublicKeyInfo(), test_encodeRsaPublicKey(), test_encodeSequenceOfAny(), test_encodeSPCFinancialCriteria(), test_encodeSPCLink(), test_encodeSPCPEImage(), test_encodeSpOpusInfo(), test_encodeUnicodeName(), test_encodeUnicodeNameValue(), test_encrypt_message(), test_end_browser_session(), test_enum_container(), test_enum_proc(), test_enum_provider_types(), test_enum_providers(), test_enum_sections(), test_enum_svc(), test_enum_value(), test_enum_vols(), test_EnumColorProfilesA(), test_EnumColorProfilesW(), test_EnumDateFormatsA(), test_enumdesktops(), test_enumdisplaydevices(), test_EnumDisplaySettings(), test_EnumerateProviders(), test_EnumFontFamilies(), test_EnumForms(), test_EnumLanguageGroupLocalesA(), test_EnumMonitors(), test_EnumPorts(), test_EnumPrinterDrivers(), test_EnumPrinters(), test_EnumPrintProcessors(), test_EnumProcesses(), test_EnumProcessModules(), test_EnumPwrSchemes(), test_enumstations(), test_EnumSystemGeoID(), test_EnumSystemLanguageGroupsA(), test_EnumSystemLocalesEx(), test_EnumTimeFormatsA(), test_EnumTimeFormatsW(), test_EnumUILanguageA(), test_enveloped_msg_encoding(), test_enveloped_msg_open(), test_enveloped_msg_update(), test_EqualSid(), test_error_msg(), test_event(), test_event_security(), test_events(), Test_ExcludeClipRect(), test_ExitProcess(), test_ExpandEnvironmentStringsA(), test_ExtCreateRegion(), test_extension(), Test_ExtPen(), test_extra_block(), test_ExtractIcon(), test_ExtTextOut(), test_FakeDLL(), test_FDICopy(), test_FDICreate(), test_FDIIsCabinet(), test_ffcn(), test_ffcn_directory_overlap(), test_ffcnMultipleThreads(), test_FiberHandling(), test_FiberLocalStorage(), test_FiberLocalStorageCallback(), test_FiberLocalStorageWithFibers(), test_file_access(), test_file_completion_information(), test_file_disposition_information(), test_file_info(), test_file_link_information(), test_file_rename_information(), test_file_security(), test_file_sharing(), test_filemap_security(), test_filename(), test_filenames(), test_filepipeinfo(), test_FileSecurity(), test_filesourcefilter(), test_FileTimeToDosDateTime(), test_FileTimeToLocalFileTime(), test_FileTimeToSystemTime(), test_FillConsoleOutputAttribute(), test_FillConsoleOutputCharacterA(), test_FillConsoleOutputCharacterW(), test_find_com_redirection(), test_find_dll_redirection(), test_find_first_file(), test_find_ifaceps_redirection(), test_find_progid_redirection(), test_find_resource(), test_find_string_fail(), test_find_surrogate(), test_find_url_cache_entriesA(), test_find_window_class(), test_findAttribute(), test_FindCloseUrlCache(), test_findExtension(), test_FindFirstChangeNotification(), test_FindFirstFileA(), test_FindFirstFileExA(), test_FindFirstVolume(), test_FindNextFileA(), test_findRDNAttr(), test_findsectionstring(), test_FindWindowEx(), test_firstDay(), test_flags_NtQueryDirectoryFile(), test_FlashWindow(), test_FlashWindowEx(), test_flush_buffers_file(), test_FlushFileBuffers(), test_FolderShortcut(), test_FoldStringA(), test_FoldStringW(), Test_Font(), test_font_caps(), test_foregroundwindow(), test_format_object(), test_format_rect(), test_freed_hglobal(), test_fstype_fixup(), test_fullpath(), test_fullscreen(), test_gdi_objects(), test_GdiAlphaBlend(), test_GdiConvertToDevmodeW(), test_GdiGetCodePage(), test_GdiGradientFill(), test_gen_random(), Test_General(), test_generic(), test_get_atom_name(), test_get_certificate(), test_get_cookie(), test_get_current_dir(), test_get_default_provider(), test_get_digest_stream(), test_get_displayname(), test_get_input_report(), test_get_known_usages(), test_get_profiles_dir(), test_get_security_descriptor(), test_get_servicekeyname(), test_get_user_profile_dir(), test_GetActiveProcessorCount(), test_GetAutoRotationState(), test_GetCalendarInfo(), test_GetClassInfo(), Test_GetClipBox(), Test_GetClipRgn(), test_GetColorDirectoryA(), test_GetColorDirectoryW(), test_GetColorProfileElement(), test_GetColorProfileElementTag(), test_GetColorProfileFromHandle(), test_GetColorProfileHeader(), test_GetComputerName(), test_GetComputerNameExA(), test_GetComputerNameExW(), test_GetConsoleFontInfo(), test_GetConsoleFontSize(), test_GetConsoleProcessList(), test_GetConsoleScreenBufferInfoEx(), test_GetCountColorProfileElements(), test_GetCPInfo(), test_GetCurrencyFormatA(), test_GetCurrentConsoleFont(), Test_GetCurrentObject(), test_GetCurrentPowerPolicies(), test_GetCursorFrameInfo(), test_GetDateFormatA(), test_GetDateFormatEx(), test_GetDateFormatW(), test_getDefaultCryptProv(), test_getDefaultOIDFunctionAddress(), test_GetDefaultPrinter(), Test_GetDIBColorTable(), test_GetDIBits(), test_GetDIBits_BI_BITFIELDS(), test_GetDiskFreeSpaceA(), test_GetDiskFreeSpaceW(), test_GetDiskInfoA(), test_GetDisplayName(), test_GetDriveTypeA(), test_GetDriveTypeW(), test_GetExplicitEntriesFromAclW(), test_getfile(), test_GetFile(), test_getfile_no_open(), test_GetFileAttributesExW(), test_GetFileInformationByHandleEx(), test_GetFileVersionInfoEx(), test_GetFinalPathNameByHandleA(), test_GetFinalPathNameByHandleW(), test_GetFullPathNameA(), test_GetFullPathNameW(), test_GetGeoInfo(), test_GetGlyphOutline(), test_GetGlyphOutline_empty_contour(), test_GetGlyphOutline_metric_clipping(), test_GetICMProfileA(), test_GetICMProfileW(), test_GetKerningPairs(), test_GetKeyState(), test_GetLargestConsoleWindowSize(), test_GetLocaleInfoA(), test_GetLocaleInfoEx(), test_GetLocaleInfoW(), test_GetLogicalDriveStringsW(), test_GetLogicalProcessorInformationEx(), test_GetLongPathNameA(), test_GetLongPathNameW(), test_GetMappedFileName(), test_getmenubarinfo(), Test_GetMessage(), test_GetModuleBaseName(), test_GetModuleFileNameEx(), test_GetModuleInformation(), test_GetMouseMovePointsEx(), test_GetNamedSecurityInfoA(), test_GetNumaProcessorNode(), test_GetNumberFormatA(), test_GetNumberFormatEx(), test_GetNumberOfConsoleInputEvents(), test_getObjectUrl(), test_GetOutlineTextMetrics(), test_GetPerformanceInfo(), test_GetPhysicallyInstalledSystemMemory(), test_GetPrinter(), test_GetPrinterData(), test_GetPrinterDataEx(), test_GetPrinterDriver(), test_GetPrinterDriverDirectory(), test_GetPrintProcessorDirectory(), test_GetPrivateProfileString(), test_getprocaddress(), test_GetProcessImageFileName(), test_GetProcessImageFileNameA(), test_GetProcessMemoryInfo(), test_GetProcessVersion(), test_GetProductInfo(), test_GetPwrCapabilities(), test_GetPwrDiskSpindownRange(), Test_GetRandomRgn_Params(), test_GetRawInputDeviceList(), test_GetScriptFontInfo(), test_GetSecurityInfo(), test_GetSetActivePwrScheme(), test_GetSetConsoleInputExeName(), test_GetSetEnvironmentVariableA(), test_GetSetEnvironmentVariableW(), test_GetSetStdHandle(), test_GetShellSecurityDescriptor(), test_GetShortPathNameW(), test_GetSidIdentifierAuthority(), test_GetSidSubAuthority(), test_getsockname(), test_GetStandardColorSpaceProfileA(), test_GetStandardColorSpaceProfileW(), Test_GetStockObject(), test_GetStringTypeW(), test_GetSysColorBrush(), test_GetSystemDirectory(), test_GetSystemDirectoryW(), Test_GetSystemMetrics(), test_GetSystemPreferredUILanguages(), test_GetTempFileNameA(), test_GetTempPathW(), test_gettext(), Test_GetTextExtentExPoint(), Test_GetTextFace(), test_GetTextFace(), test_GetTextMetrics2(), test_GetThreadExitCode(), test_GetThreadPreferredUILanguages(), test_GetThreadTimes(), test_GetTimeFormatA(), test_GetTimeFormatEx(), test_GetTimeZoneInformation(), test_GetTimeZoneInformationForYear(), test_GetTokenInformation(), test_GetUpdatedClipboardFormats(), test_GetUpdateRect(), test_GetUrlCacheEntryInfoExA(), test_GetUserNameA(), test_GetUserNameW(), test_getuserobjectinformation(), test_GetUserPreferredUILanguages(), test_GetVersionEx(), test_GetVolumeInformationA(), test_GetVolumeNameForVolumeMountPointA(), test_GetVolumeNameForVolumeMountPointW(), test_GetVolumePathNameA(), test_GetVolumePathNamesForVolumeNameA(), test_GetVolumePathNamesForVolumeNameW(), test_GetVolumePathNameW(), test_GetWindowModuleFileName(), test_GetWindowsAccountDomainSid(), test_GetWindowsDirectory(), test_GetWindowsDirectoryW(), test_GetWindowTheme(), test_GLE(), test_GlobalAlloc(), test_group_equal(), test_handles(), test_Handles(), test_handles_process(), test_handles_process_dib(), test_handles_thread2(), test_hash_message(), test_hash_msg_encoding(), test_hash_msg_get_param(), test_hash_msg_open(), test_hash_msg_update(), test_hashes(), test_hatch_brush(), test_head_request(), test_header_handling_order(), test_header_override(), test_heap(), test_HeapQueryInformation(), test_height(), test_height_selection_vdmx(), test_hmac(), test_hotkey(), test_http_cache(), test_http_protocol_url(), test_http_status(), test_HttpQueryInfo(), test_HttpSendRequestW(), test_hv_scroll_1(), test_hv_scroll_2(), test_hwnd_message(), test_I_UpdateStore(), test_Icmp6CreateFile(), test_IcmpCloseHandle(), test_IcmpCreateFile(), test_IcmpSendEcho(), test_icon_info_dbg(), test_IdnToAscii(), test_IdnToNameprepUnicode(), test_IdnToUnicode(), test_image_mapping(), test_IME(), test_ImmDestroyContext(), test_ImmDestroyIMCC(), test_ImmGetContext(), test_ImmGetDescription(), test_ImmGetIMCLockCount(), test_ImmNotifyIME(), test_ImmSetCompositionString(), test_ImpersonateNamedPipeClient(), test_impersonation_level(), test_import_export(), test_import_hmac(), test_import_private(), test_import_resolution(), test_incorrect_api_usage(), test_inffilelist(), test_inffilelistA(), test_info(), test_info_in_assembly(), test_info_size(), test_initial_cursor(), test_InitializePrintMonitor(), test_initonce(), test_InitPathA(), test_Input_blackbox(), test_Input_mouse(), test_inputdesktop(), test_inputdesktop2(), test_InSendMessage(), test_install_svc_from(), test_InstallColorProfileA(), test_InstallColorProfileW(), test_Installer_RegistryValue(), test_installOIDFunctionAddress(), test_instances(), test_internet_features(), test_internet_features_registry(), test_InternetCanonicalizeUrlA(), test_InternetCloseHandle(), test_InternetErrorDlg(), test_InternetQueryOptionA(), test_InternetSetOption(), test_interthread_messages(), test_invalid_callbackA(), test_invalid_callbackW(), test_invalid_files(), test_invalid_parametersA(), test_invalid_parametersW(), test_invalid_response_headers(), test_InvalidIMC(), test_invariant(), test_iocp_callback(), test_ioctlsocket(), test_ip_pktinfo(), test_IsColorProfileTagPresent(), test_IsDomainLegalCookieDomainW(), test_IsProcessInJob(), test_IsThemed(), test_IsUrlCacheEntryExpiredA(), test_ITEMIDLIST_format(), test_items(), test_ITextDocument_Open(), test_jobInheritance(), test_junction_points(), test_kernel_objects_security(), test_key_derivation(), test_key_initialization(), test_key_names(), test_key_permissions(), test_keyboard_layout_name(), test_keyed_events(), test_KillOnJobClose(), test_large_data_authentication(), test_layered_window(), test_lcmapstring_unicode(), test_LCMapStringA(), test_LCMapStringEx(), test_LCMapStringW(), test_LdrRegisterDllNotification(), test_listbox_dlgdir(), test_listbox_LB_DIR(), test_listbox_size(), test_lnks(), test_load_save(), test_Loader(), test_LoadFunctionPointers(), test_LoadIconWithScaleDown(), test_LoadImage(), test_LoadImageFile(), test_LoadLibraryEx_search_flags(), test_LoadRegTypeLib(), test_LoadStringA(), test_LoadStringW(), test_local_add_atom(), test_local_get_atom_name(), test_local_server(), test_LocalAlloc(), test_LocaleNameToLCID(), test_LocalizedNames(), test_LockFile(), Test_LockUnlockServiceDatabase(), Test_LockUnlockServiceDatabaseWithServiceStart(), test_logpen(), test_long_url(), test_LookupAccountName(), test_LookupAccountSid(), test_lookupPrivilegeName(), test_lookupPrivilegeValue(), test_lsa(), test_LZCopy(), test_LZOpenFileA(), test_LZOpenFileA_nonexisting_compressed(), test_LZOpenFileW(), test_LZOpenFileW_nonexisting_compressed(), test_LZRead(), test_mac(), test_machine_guid(), test_makecurrent(), test_map_points(), test_MapFile(), test_mapping(), test_MapViewOfFile(), test_MatchApplications(), test_MatchApplicationsEx(), test_max_conns(), test_maximum_allowed(), test_mbs_help(), test_MDI_create(), test_menu_add_string(), test_menu_bmp_and_string(), test_menu_cancelmode(), test_menu_circref(), test_menu_getmenuinfo(), test_menu_hilitemenuitem(), test_menu_locked_by_window(), test_menu_maxdepth(), test_menu_messages(), test_menu_ownerdraw(), test_menu_resource_layout(), test_menu_setmenuinfo(), test_menu_trackagain(), test_menu_trackpopupmenu(), test_menualign(), test_message_allocate_buffer(), test_message_allocate_buffer_wide(), test_message_conversion(), test_message_from_hmodule(), test_message_from_string(), test_message_from_string_wide(), test_message_ignore_inserts(), test_message_ignore_inserts_wide(), test_message_insufficient_buffer(), test_message_insufficient_buffer_wide(), test_message_invalid_flags(), test_message_invalid_flags_wide(), test_message_null_buffer(), test_message_null_buffer_wide(), test_message_window(), test_messages(), Test_MetaDC(), test_mf_Blank(), test_mf_clipping(), test_mf_DCBrush(), test_mf_ExtTextOut_on_path(), test_mf_GetPath(), test_mf_Graphics(), test_mf_PatternBrush(), test_mf_SaveDC(), test_mhtml_protocol_binding(), test_minimized(), test_mmioSeek(), test_mono_1x1_bmp_dbg(), test_monochrome_icon(), test_MoveFileA(), test_MoveFileW(), test_mru(), test_MRUListA(), test_msg_close(), test_msg_control(), test_msg_get_and_verify_signer(), test_msg_get_param(), test_msg_get_signer_count(), test_msg_open_to_decode(), test_msg_open_to_encode(), test_MsgWaitForMultipleObjects(), test_MsiQueryComponentState(), test_MsiQueryFeatureState(), test_MsiQueryProductState(), test_msirecord(), test_multi_authentication(), test_multiple_reads(), test_multithreaded_clipboard(), test_mutex(), test_mutex_security(), test_name_collisions(), test_named_pipe_security(), test_NamedPipe_2(), test_NamedPipeHandleState(), test_namespace_pipe(), test_negative_dest_length(), test_negative_source_length(), test_negative_width(), test_NhGetInterfaceNameFromDeviceGuid(), test_NhGetInterfaceNameFromGuid(), test_no_cache(), test_no_content(), test_no_headers(), test_no_stop(), Test_NoLoadSection(), test_nonalertable(), test_nonole_clipboard(), test_noprivileges(), test_not_modified(), test_notification_dbg(), test_notify(), test_notify_message(), test_NtAreMappedFilesTheSame(), Test_NtGdiAddFontResourceW(), Test_NtGdiCreateBitmap_Params(), Test_NtGdiDoPalette_GdiPalAnimate(), Test_NtGdiDoPalette_GdiPalSetEntries(), test_NtQueryDirectoryFile_case(), test_NtQuerySection(), test_NtSuspendProcess(), Test_NtUserSystemParametersInfo_Params(), Test_NtUserSystemParametersInfo_Winsta(), test_null(), test_null_auth_data(), test_null_device(), test_null_provider(), test_null_source(), test_obsolete_flags(), test_offset_in_overlapped_structure(), Test_OffsetClipRgn(), test_oidFunctionSet(), test_ok(), test_oldest(), test_open_close(), test_open_scm(), test_open_svc(), test_open_url_async(), test_openbackup(), test_OpenColorProfileA(), test_OpenColorProfileW(), test_OpenComm(), test_OpenCON(), test_OpenConsoleW(), test_openfile(), test_OpenFile(), test_OpenFileById(), test_opengl3(), Test_OpenInputDesktop(), test_OpenPort(), test_OpenPrinter(), test_OpenPrinter_defaults(), test_OpenProcess(), test_OpenRequest(), test_OpenThemeData(), test_OpenThemeDataEx(), test_options(), test_original_file_name(), test_other_invalid_parameters(), test_outline_font(), test_overlapped(), test_overlapped_buffers(), test_overlapped_error(), test_overlapped_transport(), test_overwrite(), test_owner_equal(), test_PageSetupDlgA(), test_paint_messages(), test_paintingloop(), Test_Palette(), test_parameters(), test_parametersEx(), Test_Params(), test_params(), test_parent_owner(), test_ParseDisplayName(), test_ParseDisplayNamePBC(), test_path_state(), test_PathAddBackslash(), test_PathAppendA(), test_PathBuildRootA(), test_PathCanonicalizeA(), test_PathCombineA(), test_PathCommonPrefixA(), test_PathFindExtensionA(), test_PathGetDriveNumber(), test_PathUnExpandEnvStrings(), test_pe_checksum(), Test_PeekMessage(), test_PeekMessage(), Test_Pen(), test_pfd(), test_play(), test_polydraw(), test_PostMessage(), test_Predefined(), test_premature_disconnect(), test_PrintDlgA(), test_PrintDlgExW(), test_PrivateObjectSecurity(), test_process_access(), test_process_security(), test_process_security_child(), test_ProcThreadAttributeList(), test_profile_delete_on_close(), test_profile_directory_readonly(), test_profile_existing(), test_profile_items(), test_profile_refresh(), test_profile_sections(), test_profile_sections_names(), test_prov(), test_proxy_direct(), test_proxy_indirect(), test_ps_alternate(), test_ps_userstyle(), test_pSetupGetField(), test_pseudo_tokens(), test_publish(), test_putfile(), test_query_dos_deviceA(), test_query_handle(), test_query_handle_ex(), test_query_logicalprocex(), test_query_object(), test_query_process_debug_flags(), test_query_process_debug_object_handle(), test_query_process_debug_port(), test_query_process_handlecount(), test_query_process_priority(), test_query_process_times(), test_query_process_vm(), test_query_svc(), test_queryconfig2(), test_QueryDosDeviceA(), test_QueryFullProcessImageNameA(), test_QueryFullProcessImageNameW(), test_QueryInformationJobObject(), Test_QueryLockStatusA(), Test_QueryLockStatusW(), test_QueryOption(), Test_QueryServiceConfig2A(), Test_QueryServiceConfig2W(), test_QueueUserWorkItem(), test_quit_message(), test_rc2(), test_rc2_keylen(), test_rc4(), test_read(), test_Read(), test_read_device(), test_read_write(), test_ReadAll(), test_ReadConsole(), test_ReadConsoleOutputAttribute(), test_ReadConsoleOutputCharacterA(), test_ReadConsoleOutputCharacterW(), test_readdirectorychanges(), test_readdirectorychanges_cr(), test_readdirectorychanges_filedir(), test_readdirectorychanges_null(), test_ReadFile(), test_readfileex_pending(), test_ReadGlobalPwrPolicy(), test_ReadProcessorPwrScheme(), test_ReadPwrScheme(), test_ReadTimeOut(), test_readwrite(), Test_RealGetWindowClass(), test_RealizationInfo(), test_recordWAVE(), test_redirect(), test_redrawnow(), test_refcount(), test_reg_create_key(), test_reg_open_key(), test_reg_query_value(), test_regconnectregistry(), Test_Region(), test_RegisterClipboardFormatA(), test_registerDefaultOIDFunction(), test_registered_object_thread_affinity(), test_registerOIDFunction(), test_RegisterWaitForSingleObject(), test_registry(), test_RegNotifyChangeKeyValue(), test_RegOpenCurrentUser(), test_RegPolicyFlags(), test_relative_path(), test_RemoteDebugger(), test_remove_certificate(), test_remove_dot_segments(), test_remove_ini_values(), test_removedir(), test_RemoveDirectory(), test_RemoveDirectoryA(), test_RemoveDirectoryW(), test_renamefile(), test_render_run(), test_ReplaceFileA(), test_ReplaceFileW(), test_request_content_length(), test_request_parameter_defaults(), test_reserved_tls(), test_resolve_timeout(), test_ResolveDelayLoadedAPI(), test_response_without_headers(), test_retrieveObjectByUrl(), test_RetrieveUrlCacheEntryA(), test_rsa_encrypt(), test_rsa_round_trip(), test_RtlCompressBuffer(), test_RtlIsCriticalSectionLocked(), test_RtlQueryPackageIdentity(), test_RtlQueueWorkItem(), test_RtlRegisterWait(), test_runlevel_info(), test_runner(), test_save(), test_SaveDC(), Test_SaveRestore(), test_saxreader(), test_saxreader_encoding(), test_schannel_provider(), test_scroll_messages(), test_SearchPathA(), test_SearchPathW(), test_section_access(), test_section_names(), test_secure_connection(), test_security_descriptor(), test_security_flags(), test_security_info(), test_select(), test_selection(), test_semaphore(), test_semaphore_security(), test_send(), test_SendMessage_other_thread(), test_SendRequest(), test_sequence(), test_service(), test_Session(), test_session_info(), Test_Set(), test_set_clipboard_DRAWCLIPBOARD(), test_set_coop(), test_set_default_proxy_config(), test_set_getsockopt(), test_set_hook(), test_set_provider_ex(), test_set_value(), test_setborder(), test_SetColorProfileElement(), test_SetColorProfileHeader(), test_SetConsoleFont(), test_SetCurrentDirectoryA(), test_SetCursor(), Test_SetDCPenColor(), test_SetDefaultDllDirectories(), test_SetDefaultPrinter(), test_SetDIBits_RLE8(), test_SetDIBitsToDevice_RLE8(), test_SetEnhMetaFileBits(), test_SetEntriesInAclA(), test_SetEntriesInAclW(), test_SetFileInformationByHandle(), test_SetFileValidData(), test_SetFocus(), test_SetForegroundWindow(), test_SetICMMode(), test_SetICMProfileA(), test_SetICMProfileW(), test_SetLocaleInfoA(), Test_SetMapMode(), test_SetMenu(), test_SetMetaFileBits(), Test_SetPixel_PAL(), test_setpixelformat(), test_SetSearchPathMode(), test_SetSecurityDescriptorControl(), Test_SetSysColors(), test_SetupAddInstallSectionToDiskSpaceListA(), test_SetupAddSectionToDiskSpaceListA(), test_SetupAddToDiskSpaceListA(), test_SetupCopyOEMInf(), test_SetupCreateDiskSpaceListA(), test_SetupCreateDiskSpaceListW(), test_SetupDiBuildClassInfoList(), test_SetupDiClassGuidsFromNameA(), test_SetupDiClassNameFromGuidA(), test_SetupDiCreateDeviceInfoListEx(), test_SetupDiGetClassDescriptionA(), test_SetupDiGetClassDevsA(), test_SetupDiInstallClassExA(), test_SetupDiOpenClassRegKeyExA(), test_SetupDuplicateDiskSpaceListA(), test_SetupDuplicateDiskSpaceListW(), test_SetupGetInfInformation(), test_SetupGetIntField(), test_SetupGetSourceFileLocation(), test_SetupInstallServicesFromInfSectionExA(), test_SetupInstallServicesFromInfSectionExW(), test_SetupLogError(), test_SetupQueryDrivesInDiskSpaceListA(), test_SetupQuerySpaceRequiredOnDriveA(), test_SetupQuerySpaceRequiredOnDriveW(), test_SetupUninstallOEMInf(), test_SetWindowLong(), test_SetWindowPos(), test_SetWindowTheme(), test_sh_new_link_info(), test_sh_path_prepare(), test_sha2(), test_shared_memory(), test_shared_memory_ro(), test_SHChangeNotify(), test_SHCreateShellItem(), test_SHCreateShellItemArray(), test_SHCreateStreamOnFileA(), test_SHCreateStreamOnFileEx(), test_SHCreateStreamOnFileEx_CopyTo(), test_SHCreateStreamOnFileW(), test_shell_window(), test_ShellWindows(), test_SHFormatDateTimeA(), test_SHFormatDateTimeW(), test_SHGetFolderPathAndSubDirA(), test_SHGetIniString(), test_SHGetPathFromIDList(), test_SHGetShellKey(), test_shortcut(), test_ShortPathCase(), test_ShowWindow(), test_SHParseDisplayName(), test_SHSetWindowBits(), test_SHSimpleIDListFromPath(), test_sid(), test_sid_str(), test_Sign_Media(), test_sign_message(), test_signalandwait(), test_signed_msg_encoding(), test_signed_msg_get_param(), test_signed_msg_open(), test_signed_msg_update(), test_simple_enumerationW(), test_simpleroundtrip(), test_sioAddressListChange(), test_sip(), test_sip_create_indirect_data(), test_SIPLoad(), test_SIPRetrieveSubjectGUID(), test_smresult(), test_solidbrush(), test_SPI_ICONHORIZONTALSPACING(), test_SPI_ICONVERTICALSPACING(), test_SPI_SETBEEP(), test_SPI_SETBORDER(), Test_SPI_SETDESKWALLPAPER(), test_SPI_SETDOUBLECLICKTIME(), test_SPI_SETDOUBLECLKHEIGHT(), test_SPI_SETDOUBLECLKWIDTH(), test_SPI_SETDRAGFULLWINDOWS(), test_SPI_SETFONTSMOOTHING(), test_SPI_SETICONMETRICS(), test_SPI_SETICONTITLEWRAP(), test_SPI_SETKEYBOARDDELAY(), test_SPI_SETKEYBOARDPREF(), test_SPI_SETKEYBOARDSPEED(), test_SPI_SETLOWPOWERACTIVE(), test_SPI_SETMENUDROPALIGNMENT(), test_SPI_SETMENUSHOWDELAY(), test_SPI_SETMINIMIZEDMETRICS(), test_SPI_SETMOUSE(), test_SPI_SETMOUSEBUTTONSWAP(), test_SPI_SETMOUSEHOVERHEIGHT(), test_SPI_SETMOUSEHOVERTIME(), test_SPI_SETMOUSEHOVERWIDTH(), test_SPI_SETNONCLIENTMETRICS(), test_SPI_SETPOWEROFFACTIVE(), test_SPI_SETSCREENREADER(), test_SPI_SETSCREENSAVEACTIVE(), test_SPI_SETSCREENSAVETIMEOUT(), test_SPI_SETSHOWSOUNDS(), test_SPI_SETSNAPTODEFBUTTON(), test_SPI_SETWALLPAPER(), test_SPI_SETWHEELSCROLLCHARS(), test_SPI_SETWHEELSCROLLLINES(), test_SPI_SETWORKAREA(), test_SplInitializeWinSpoolDrv(), test_start_stop(), test_start_stop_services(), test_startA(), test_startW(), test_status_callbacks(), test_stdio(), test_stop_wait_for_call(), test_storage_stream(), test_strength(), test_string_conversion(), test_string_data(), test_string_data_process(), test_StringFromGUID2(), test_subpopup_locked_by_menu(), test_successive_HttpSendRequest(), test_SuspendThread(), test_swap_control(), test_SymEnumSymbols(), test_SymFromAddr(), test_SymFromName(), test_synchronous_WSAIoctl(), test_synthesized(), test_sys_menu(), test_system_menu(), test_system_security_access(), test_SystemFunction036(), test_TabbedText(), test_TagRef(), test_TerminateJobObject(), test_TerminateProcess(), test_text_extents(), test_text_metrics(), test_texture_qi(), test_thick_child_size(), test_thread_actctx(), test_thread_objects(), test_thread_priority(), test_thread_processor(), test_thread_security(), test_thread_start_address(), test_threadcp(), test_ThreadErrorMode(), test_threadpool(), test_Timeouts(), test_timer_queue(), test_timers_no_wnd(), test_token_attr(), test_token_label(), test_token_security_descriptor(), test_TokenIntegrityLevel(), test_Toolhelp(), test_ToUnicode(), test_tp_group_cancel(), test_tp_group_wait(), test_tp_simple(), test_tp_timer(), test_tp_window_length(), test_TrackMouseEvent(), test_TrackPopupMenu(), test_TrackPopupMenuEmpty(), test_trailing_slash(), test_TransformWithLoadingLocalFile(), test_TransmitFile(), Test_Truncate(), test_TxGetNaturalSize(), test_typelib_section(), test_undefined_byte_char(), test_undo_coalescing(), test_unicode(), test_unicode_conversions(), test_UninstallColorProfileA(), test_UninstallColorProfileW(), test_urlcacheA(), test_urlcacheW(), test_UrlCanonicalizeA(), test_UrlCanonicalizeW(), test_URLDownloadToFile(), test_user_agent_header(), test_utf7_decoding(), test_utf7_encoding(), test_utils(), test_ValidatePowerPolicies(), test_ValidatePowerPolicies_Next(), test_ValidatePowerPolicies_Old(), test_ValidPathA(), test_VarWeekdayName(), test_verify_detached_message_hash(), test_verify_detached_message_signature(), test_verify_message_hash(), test_verify_message_signature(), test_verify_sig(), test_verify_signature(), test_VerifyConsoleIoHandle(), test_verifyRevocation(), test_VerifyVersionInfo(), test_VerQueryValue_InvalidLength(), test_VerQueryValueA(), test_version(), test_vertical_font(), test_VirtualAlloc(), test_VirtualAlloc_protection(), test_VirtualAllocEx(), test_VirtualProtect(), test_waitable_timer(), test_WaitBreak(), test_WaitCommEvent(), test_WaitCts(), test_WaitDcd(), test_WaitDsr(), test_WaitForInputIdle(), test_WaitForJobObject(), test_WaitForMultipleObjects(), test_WaitForSingleObject(), test_WaitRing(), test_WaitRx(), test_waittxempty(), test_widenpath(), test_window_classes(), test_window_dc(), test_winevents(), test_WinHttpAddHeaders(), test_WinHttpDetectAutoProxyConfigUrl(), test_WinHttpGetIEProxyConfigForCurrentUser(), test_WinHttpGetProxyForUrl(), test_WinHttpTimeFromSystemTime(), test_WinHttpTimeToSystemTime(), test_winproc_handles(), test_winproc_limit(), test_winregion(), test_winstation(), test_wintrust_digest(), test_WM_CHAR(), test_WM_CREATE(), test_WM_DEVICECHANGE(), test_WM_GETDLGCODE(), test_WM_LBUTTONDOWN(), test_wm_set_get_text(), test_WM_SETTEXT(), test_wndclass_section(), test_wndproc(), test_word_wrap(), test_work_area(), test_world_transform(), test_write_watch(), test_WriteConsoleInputA(), test_WriteConsoleInputW(), test_WriteConsoleOutputAttribute(), test_WriteConsoleOutputCharacterA(), test_WriteConsoleOutputCharacterW(), test_WriteFileGather(), test_WriteLine(), test_WritePrivateProfileString(), test_ws_functions(), test_WS_VSCROLL(), test_WSAPoll(), test_WSARecv(), test_WSASendMsg(), test_WTSEnumerateProcessesW(), test_XcvClosePort(), test_XcvDataPort_AddPort(), test_XcvDataPort_ConfigureLPTPortCommandOK(), test_XcvDataPort_DeletePort(), test_XcvDataPort_GetTransmissionRetryTimeout(), test_XcvDataPort_MonitorUI(), test_XcvDataPort_PortIsValid(), test_XcvDataW_MonitorUI(), test_XcvDataW_PortIsValid(), test_XcvOpenPort(), test_ZombifyActCtx(), testAcquireCertPrivateKey(), testAcquireSecurityContext(), testAddCert(), testAddCertificateLink(), testAddCRL(), testAddCTLToStore(), testAddSerialized(), testAlgIDToOID(), testBinaryToStringA(), testCertEnumSystemStore(), testCertOpenSystemStore(), testCertProperties(), testCertRegisterSystemStore(), testCertSigs(), TestClassRedirection(), testCloseStore(), testCollectionStore(), testCompareCertName(), testComparePublicKeyInfo(), testCreateCert(), testCreateCertChainEngine(), testCreateCRL(), testCreateCTL(), testCreateDeviceInfo(), testCreateDeviceInterface(), testCreateSelfSignCert(), testCRLProperties(), testCryptHashCert(), testCTLProperties(), testCtrlHandler(), testCursor(), testCursorInfo(), testDeviceRegistryPropertyA(), testDeviceRegistryPropertyW(), testDevRegKey(), testDupCert(), testECDSACert(), testEmptyStore(), TestEnumFontFamilies(), testExportPublicKey(), TestFileFsDeviceInformation(), testFileNameStore(), testFileStore(), testFindCert(), testFindCertInCRL(), testFindCRL(), testGetCertChain(), TestGetComputerNameEx(), testGetComputerObjectNameA(), testGetComputerObjectNameW(), testGetCRLFromStore(), TestGetCurrentDirectoryA(), TestGetCurrentDirectoryW(), testGetDeviceInstanceId(), testGetDeviceInterfaceDetail(), testGetIssuerCert(), testGetModuleFileName(), testGetModuleHandleEx(), testGetProcAddress_Wrong(), testGetPublicKeyLength(), testGetSubjectCert(), testGetUserNameExA(), testGetUserNameExW(), TestGetUserObjectInfoW(), testGetValidUsages(), TestGetVolumeInformationA(), TestGetVolumeInformationW(), TestGlobalLockNUnlock(), testHashPublicKeyInfo(), testHashToBeSigned(), testIcmpSendEcho(), testImportPublicKey(), testInit(), testInstallClass(), testIntendedKeyUsage(), testIsRDNAttrsInCertificateName(), testIsValidCRLForCert(), testKeyUsage(), TestKM(), TestKs(), TestLibDependency(), testLinkCert(), testLoadLibraryA(), testLoadLibraryA_Wrong(), testLoadLibraryEx(), TestManualInstantiation(), testMemStore(), testMessageStore(), TestMyEventProvider(), testNotifyAddrChange(), TestPrivMoveFileIdentityW(), TestRead(), TestRecursiveInterThreadMessages(), testRegisterAndGetDetail(), testRegisterDeviceInfo(), testRegStore(), testRegStoreSavedCerts(), TestReturnValues(), testScreenBuffer(), testScroll(), testSerializedStore(), testSetupDiGetClassDevsA(), testSetupDiGetINFClassA(), TestShellExecuteEx(), testSignAndEncodeCert(), testSignCert(), testStoreProperty(), testStoresInCollection(), testStringToBinaryA(), testSystemRegStore(), testSystemStore(), testTimeDecoding(), testTimeEncoding(), testVerifyCertChainPolicy(), testVerifyCertSig(), testVerifyCertSigEx(), testVerifyCRLRevocation(), testVerifyRevocation(), testVerifySubjectCert(), testWaitForConsoleInput(), TestWrite(), textstream_read(), textstream_writecrlf(), textstream_writestr(), ThemeServiceMain(), THEMING_Initialize(), ThirdPartyVDDBop(), BtrfsSend::Thread(), thread(), thread_actctx_func(), thread_main(), thread_proc(), ThreadShutdownNotify(), TIME_MMSysTimeThread(), timer_queue_cb2(), timer_queue_cb6(), TimerCallback1(), tirpc_report(), TLB_ReadTypeLib(), tmpnam(), toggle_ctlLine(), trace_extended_error(), CTrayWindow::TrackCtxMenu(), transfer_file_local(), TranslateStatus(), TRASH_CanTrashFile(), try_start_stop(), TryToLockOrUnlockDrive(), TryToStartShell(), TV1_GetDependants(), TV2_GetDependants(), TV2_HasDependantServices(), UDFPhReadSynchronous(), UDFPhSendIOCTL(), UDFPhWriteSynchronous(), UndocumentedMethod(), Uninitialize(), uninstall_assembly(), Unlink(), UnloadUserProfile(), UnlockFile(), update_empty_exe(), update_missing_exe(), update_resources_bigdata(), update_resources_version(), CAvailableApps::UpdateAppsDB(), UpdateDevicesListViewControl(), UpdateDevInfo(), UpdateDriverForPlugAndPlayDevicesW(), UpdateImageInfo(), UpdateStatus(), UpdateSystemTime(), BtrfsScrub::UpdateTextBox(), urlcache_delete_file(), User32CreateWindowEx(), UsermodeMethod(), UserpShowInformationBalloon(), Utf8Convert_(), UXTHEME_DrawBackgroundFill(), UXTHEME_DrawBorderRectangle(), UXTHEME_DrawImageBackground(), UXTHEME_DrawImageGlyph(), UXTHEME_LoadImage(), UXTHEME_LoadTheme(), UXTHEME_SetWindowProperty(), validate_default_security_descriptor(), validate_impersonation_token(), variant_from_registry_value(), VarMonthName(), VarWeekdayName(), verify_cert_revocation_from_aia_ext(), verify_cert_revocation_from_dist_points_ext(), verifySig(), VerInstallFileA(), VersionRegisterClass(), VfdBroadcastLink(), VfdCheckDriverFile(), VfdCheckImageFile(), VfdCloseImage(), VfdConfigDriver(), VfdCreateImageFile(), VfdDismountVolume(), VfdFormatMedia(), VfdGetDeviceName(), VfdGetDeviceNumber(), VfdGetDriverConfig(), VfdGetDriverState(), VfdGetDriverVersion(), VfdGetGlobalLink(), VfdGetImageInfo(), VfdGetLocalLink(), VfdGetMediaState(), VfdGuiClose(), VfdGuiFormat(), VfdGuiOpen(), VfdGuiSave(), VfdImageTip(), VfdInstallDriver(), VfdOpenDevice(), VfdOpenImage(), VfdRemoveDriver(), VfdSaveImage(), VfdSetGlobalLink(), VfdSetLocalLink(), VfdStartDriver(), VfdStopDriver(), VfdWriteProtect(), VgaEnterNewMode(), VirtualTest(), VolumeInfoMain(), WahCloseThread(), WahCreateSocketHandle(), WahDisableNonIFSHandleSupport(), WahOpenCurrentThread(), WahOpenHandleHelper(), WahQueueUserApc(), wait_async_request(), wait_for_completion(), WaitForLsass(), WaitForSCManager(), WaitForService(), WatchDirectory(), CIconWatcher::WatcherThread(), WAVE_mciSave(), WDML_ClientHandle(), well_known_sid(), wgl_thread(), WhoamiGetTokenInfo(), WICCreateBitmapFromSectionEx(), win32_read_file_func(), win32_seek64_file_func(), win32_seek_file_func(), win32_tell64_file_func(), win32_tell_file_func(), Win32_Tests(), win32_write_file_func(), WindowThreadProc(), wined3d_adapter_init(), wined3d_caps_gl_ctx_create_attribs(), wined3d_caps_gl_ctx_destroy(), wined3d_dll_destroy(), wined3d_dll_init(), wined3d_get_adapter_identifier(), wined3d_release_dc(), wined3d_swapchain_resize_buffers(), wined3d_swapchain_update_swap_interval_cs(), WinExec(), WinHttpCrackUrl_test(), WinHttpCreateUrl_test(), WinMain(), WINTRUST_CertVerify(), WINTRUST_CertVerifyObjTrust(), WINTRUST_CopyChain(), WINTRUST_CreateChainForSigner(), WINTRUST_DefaultVerify(), WINTRUST_GetSignedMsgFromPEFile(), WINTRUST_SaveSigner(), WINTRUST_VerifySigner(), WlanOpenHandle_test(), WlanScan(), WlxScreenSaverNotify(), WlxStartApplication(), wmain(), WndProc(), WNetGetNetworkInformationA(), WNetGetUserA(), WNetGetUserW(), write_bitmap(), write_buffer_to_file(), write_file(), write_manifest(), write_post_stream(), write_raw_file(), write_to_file(), write_watch_thread(), WriteFileEx_Remixer(), WriteJobShadowFile(), WriteMinidump(), WritePrinter(), WriteVolumeSector(), wsa_recv_thread(), WSAGetLastError(), WSALookupServiceNextA(), WsAsyncGetHost(), WsAsyncGetProto(), WsAsyncGetServ(), WshExec_create(), WshExec_get_Status(), WSHIoctl_GetInterfaceList(), WshShell3_ExpandEnvironmentStrings(), WshShell3_get_CurrentDirectory(), WshShell3_put_CurrentDirectory(), WshShell3_Run(), WsNqLookupServiceBegin(), WsNqLookupServiceNext(), WSPIoctl(), wsprintfATest(), wsprintfWTest(), wWinMain(), XCOPY_CreateDirectory(), XCOPY_DoCopy(), XCOPY_FailMessage(), XCOPY_LoadMessage(), XCOPY_ProcessDestParm(), XCOPY_ProcessSourceParm(), and XCOPY_wprintf().

1057 {
1058  /* Return the current value */
1059  return NtCurrentTeb()->LastErrorValue;
1060 }
FORCEINLINE struct _TEB * NtCurrentTeb(VOID)
Definition: psfuncs.h:420
BOOL NTAPI IsBadCodePtr ( FARPROC  lpfn)

Definition at line 871 of file except.c.

Referenced by DirectDrawEnumerateA(), DirectDrawEnumerateExA(), DPA_Merge(), IsValidInterface(), Main_DirectDraw_EnumDisplayModes(), Main_DirectDraw_EnumDisplayModes4(), test_IsBadCodePtr(), and WSASetBlockingHook().

872 {
873  /* Executing has the same privileges as reading */
874  return IsBadReadPtr((LPVOID)lpfn, 1);
875 }
BOOL WINAPI IsBadReadPtr(IN LPCVOID lp, IN UINT_PTR ucb)
Definition: except.c:804
BOOL NTAPI IsBadHugeReadPtr ( LPCVOID  lp,
UINT_PTR  ucb 
)

Definition at line 859 of file except.c.

861 {
862  /* Implementation is the same on 32-bit */
863  return IsBadReadPtr(lp, ucb);
864 }
BOOL WINAPI IsBadReadPtr(IN LPCVOID lp, IN UINT_PTR ucb)
Definition: except.c:804
BOOL NTAPI IsBadHugeWritePtr ( IN LPVOID  lp,
IN UINT_PTR  ucb 
)

Definition at line 937 of file except.c.

939 {
940  /* Implementation is the same on 32-bit */
941  return IsBadWritePtr(lp, ucb);
942 }
BOOL NTAPI IsBadWritePtr(IN LPVOID lp, IN UINT_PTR ucb)
Definition: except.c:882
BOOL WINAPI IsBadReadPtr ( IN LPCVOID  lp,
IN UINT_PTR  ucb 
)

Definition at line 804 of file except.c.

Referenced by connect(), DrawThemeParentBackground(), FBadColumnSet(), FBadEntryList(), FBadProp(), FBadRglpszA(), FBadRglpszW(), FBadRow(), FBadRowSet(), get_imc_data(), GlobalLock(), IsBadCodePtr(), IsBadHugeReadPtr(), IsValidInterface(), mem2hex(), MIDIMAP_IsBadData(), MSACM_GetObj(), NetworkDomainPageDlgProc(), PrintStackTrace(), PROP_BadArray(), ReadUrlCacheEntryStream(), ScCountProps(), StartDirectDraw(), test_IsBadReadPtr(), test_MapViewOfFile(), TEST_MemoryRead(), test_parse_filter_data(), UnlockUrlCacheEntryStream(), WAVEMAP_IsData(), WSALookupServiceBeginA(), WSALookupServiceBeginW(), WSALookupServiceEnd(), WSALookupServiceNextA(), and WSALookupServiceNextW().

806 {
807  ULONG PageSize;
808  BOOLEAN Result = FALSE;
809  volatile CHAR *Current;
810  PCHAR Last;
811 
812  /* Quick cases */
813  if (!ucb) return FALSE;
814  if (!lp) return TRUE;
815 
816  /* Get the page size */
818 
819  /* Calculate start and end */
820  Current = (volatile CHAR*)lp;
821  Last = (PCHAR)((ULONG_PTR)lp + ucb - 1);
822 
823  /* Another quick failure case */
824  if (Last < Current) return TRUE;
825 
826  /* Enter SEH */
827  _SEH2_TRY
828  {
829  /* Do an initial probe */
830  *Current;
831 
832  /* Align the addresses */
833  Current = (volatile CHAR *)ROUND_DOWN(Current, PageSize);
834  Last = (PCHAR)ROUND_DOWN(Last, PageSize);
835 
836  /* Probe the entire range */
837  while (Current != Last)
838  {
839  Current += PageSize;
840  *Current;
841  }
842  }
844  {
845  /* We hit an exception, so return true */
846  Result = TRUE;
847  }
848  _SEH2_END
849 
850  /* Return exception status */
851  return Result;
852 }
signed char * PCHAR
Definition: retypes.h:7
#define TRUE
Definition: types.h:120
PBASE_STATIC_SERVER_DATA BaseStaticServerData
Definition: dllmain.c:19
char CHAR
Definition: xmlstorage.h:175
_At_(*)(_In_ PWSK_CLIENT Client, _In_opt_ PUNICODE_STRING NodeName, _In_opt_ PUNICODE_STRING ServiceName, _In_opt_ ULONG NameSpace, _In_opt_ GUID *Provider, _In_opt_ PADDRINFOEXW Hints, _Outptr_ PADDRINFOEXW *Result, _In_opt_ PEPROCESS OwningProcess, _In_opt_ PETHREAD OwningThread, _Inout_ PIRP Irp Result)(Mem)) NTSTATUS(WSKAPI *PFN_WSK_GET_ADDRESS_INFO
Definition: wsk.h:426
_SEH2_TRY
Definition: create.c:4250
uint32_t ULONG_PTR
Definition: typedefs.h:63
#define FALSE
Definition: types.h:117
#define EXCEPTION_EXECUTE_HANDLER
Definition: excpt.h:85
SYSTEM_BASIC_INFORMATION SysInfo
Definition: base.h:122
#define PCHAR
Definition: match.c:90
unsigned char BOOLEAN
#define ROUND_DOWN(n, align)
Definition: eventvwr.h:30
_SEH2_END
Definition: create.c:4424
unsigned int ULONG
Definition: retypes.h:1
#define _SEH2_EXCEPT(...)
Definition: pseh2_64.h:6
BOOL NTAPI IsBadStringPtrA ( IN LPCSTR  lpsz,
IN UINT_PTR  ucchMax 
)

Definition at line 988 of file except.c.

Referenced by AddMRUStringA(), CreateMRUListLazyA(), FBadProp(), FBadRglpszA(), IsBadBoundedStringPtr(), ReadUrlCacheEntryStream(), UnlockUrlCacheEntryStream(), and UrlHashA().

990 {
991  BOOLEAN Result = FALSE;
992  volatile CHAR *Current;
993  PCHAR Last;
994  CHAR Char;
995 
996  /* Quick cases */
997  if (!ucchMax) return FALSE;
998  if (!lpsz) return TRUE;
999 
1000  /* Calculate start and end */
1001  Current = (volatile CHAR*)lpsz;
1002  Last = (PCHAR)((ULONG_PTR)lpsz + ucchMax - 1);
1003 
1004  /* Enter SEH */
1005  _SEH2_TRY
1006  {
1007  /* Probe the entire range */
1008  Char = *Current++;
1009  while ((Char) && (Current != Last)) Char = *Current++;
1010  }
1012  {
1013  /* We hit an exception, so return true */
1014  Result = TRUE;
1015  }
1016  _SEH2_END
1017 
1018  /* Return exception status */
1019  return Result;
1020 }
signed char * PCHAR
Definition: retypes.h:7
#define TRUE
Definition: types.h:120
char CHAR
Definition: xmlstorage.h:175
_At_(*)(_In_ PWSK_CLIENT Client, _In_opt_ PUNICODE_STRING NodeName, _In_opt_ PUNICODE_STRING ServiceName, _In_opt_ ULONG NameSpace, _In_opt_ GUID *Provider, _In_opt_ PADDRINFOEXW Hints, _Outptr_ PADDRINFOEXW *Result, _In_opt_ PEPROCESS OwningProcess, _In_opt_ PETHREAD OwningThread, _Inout_ PIRP Irp Result)(Mem)) NTSTATUS(WSKAPI *PFN_WSK_GET_ADDRESS_INFO
Definition: wsk.h:426
_SEH2_TRY
Definition: create.c:4250
uint32_t ULONG_PTR
Definition: typedefs.h:63
#define FALSE
Definition: types.h:117
char Char
Definition: bzip2.c:161
#define EXCEPTION_EXECUTE_HANDLER
Definition: excpt.h:85
#define PCHAR
Definition: match.c:90
unsigned char BOOLEAN
_SEH2_END
Definition: create.c:4424
#define _SEH2_EXCEPT(...)
Definition: pseh2_64.h:6
BOOL NTAPI IsBadStringPtrW ( IN LPCWSTR  lpsz,
IN UINT_PTR  ucchMax 
)

Definition at line 949 of file except.c.

Referenced by AddMRUStringW(), CreateMRUListLazyW(), FBadProp(), FBadRglpszW(), and UrlHashW().

951 {
952  BOOLEAN Result = FALSE;
953  volatile WCHAR *Current;
954  PWCHAR Last;
955  WCHAR Char;
956 
957  /* Quick cases */
958  if (!ucchMax) return FALSE;
959  if (!lpsz) return TRUE;
960 
961  /* Calculate start and end */
962  Current = (volatile WCHAR*)lpsz;
963  Last = (PWCHAR)((ULONG_PTR)lpsz + (ucchMax * 2) - 2);
964 
965  /* Enter SEH */
966  _SEH2_TRY
967  {
968  /* Probe the entire range */
969  Char = *Current++;
970  while ((Char) && (Current != Last)) Char = *Current++;
971  }
973  {
974  /* We hit an exception, so return true */
975  Result = TRUE;
976  }
977  _SEH2_END
978 
979  /* Return exception status */
980  return Result;
981 }
#define TRUE
Definition: types.h:120
__wchar_t WCHAR
Definition: xmlstorage.h:180
_At_(*)(_In_ PWSK_CLIENT Client, _In_opt_ PUNICODE_STRING NodeName, _In_opt_ PUNICODE_STRING ServiceName, _In_opt_ ULONG NameSpace, _In_opt_ GUID *Provider, _In_opt_ PADDRINFOEXW Hints, _Outptr_ PADDRINFOEXW *Result, _In_opt_ PEPROCESS OwningProcess, _In_opt_ PETHREAD OwningThread, _Inout_ PIRP Irp Result)(Mem)) NTSTATUS(WSKAPI *PFN_WSK_GET_ADDRESS_INFO
Definition: wsk.h:426
uint16_t * PWCHAR
Definition: typedefs.h:54
_SEH2_TRY
Definition: create.c:4250
uint32_t ULONG_PTR
Definition: typedefs.h:63
#define FALSE
Definition: types.h:117
char Char
Definition: bzip2.c:161
#define EXCEPTION_EXECUTE_HANDLER
Definition: excpt.h:85
unsigned char BOOLEAN
_SEH2_END
Definition: create.c:4424
#define _SEH2_EXCEPT(...)
Definition: pseh2_64.h:6
BOOL NTAPI IsBadWritePtr ( IN LPVOID  lp,
IN UINT_PTR  ucb 
)

Definition at line 882 of file except.c.

Referenced by DPA_Merge(), IsBadHugeWritePtr(), Main_DirectDraw_GetDeviceIdentifier(), Main_DirectDraw_GetDeviceIdentifier7(), Main_DirectDraw_GetDisplayMode(), Main_DirectDraw_GetDisplayMode4(), Main_DirectDraw_GetFourCCCodes(), Main_DirectDraw_GetMonitorFrequency(), ProcessIdToSessionId(), PropCopyMore(), SendARP(), SHRegWriteUSValueW(), SystemFunction036(), test_IsBadWritePtr(), TEST_MemoryWrite(), UnProtect::UnProtect(), UrlHashA(), UrlHashW(), WSALookupServiceBeginW(), WSALookupServiceNextA(), and WSALookupServiceNextW().

884 {
885  ULONG PageSize;
886  BOOLEAN Result = FALSE;
887  volatile CHAR *Current;
888  PCHAR Last;
889 
890  /* Quick cases */
891  if (!ucb) return FALSE;
892  if (!lp) return TRUE;
893 
894  /* Get the page size */
896 
897  /* Calculate start and end */
898  Current = (volatile CHAR*)lp;
899  Last = (PCHAR)((ULONG_PTR)lp + ucb - 1);
900 
901  /* Another quick failure case */
902  if (Last < Current) return TRUE;
903 
904  /* Enter SEH */
905  _SEH2_TRY
906  {
907  /* Do an initial probe */
908  *Current = *Current;
909 
910  /* Align the addresses */
911  Current = (volatile CHAR *)ROUND_DOWN(Current, PageSize);
912  Last = (PCHAR)ROUND_DOWN(Last, PageSize);
913 
914  /* Probe the entire range */
915  while (Current != Last)
916  {
917  Current += PageSize;
918  *Current = *Current;
919  }
920  }
922  {
923  /* We hit an exception, so return true */
924  Result = TRUE;
925  }
926  _SEH2_END
927 
928  /* Return exception status */
929  return Result;
930 }
signed char * PCHAR
Definition: retypes.h:7
#define TRUE
Definition: types.h:120
PBASE_STATIC_SERVER_DATA BaseStaticServerData
Definition: dllmain.c:19
char CHAR
Definition: xmlstorage.h:175
_At_(*)(_In_ PWSK_CLIENT Client, _In_opt_ PUNICODE_STRING NodeName, _In_opt_ PUNICODE_STRING ServiceName, _In_opt_ ULONG NameSpace, _In_opt_ GUID *Provider, _In_opt_ PADDRINFOEXW Hints, _Outptr_ PADDRINFOEXW *Result, _In_opt_ PEPROCESS OwningProcess, _In_opt_ PETHREAD OwningThread, _Inout_ PIRP Irp Result)(Mem)) NTSTATUS(WSKAPI *PFN_WSK_GET_ADDRESS_INFO
Definition: wsk.h:426
_SEH2_TRY
Definition: create.c:4250
uint32_t ULONG_PTR
Definition: typedefs.h:63
#define FALSE
Definition: types.h:117
#define EXCEPTION_EXECUTE_HANDLER
Definition: excpt.h:85
SYSTEM_BASIC_INFORMATION SysInfo
Definition: base.h:122
#define PCHAR
Definition: match.c:90
unsigned char BOOLEAN
#define ROUND_DOWN(n, align)
Definition: eventvwr.h:30
_SEH2_END
Definition: create.c:4424
unsigned int ULONG
Definition: retypes.h:1
#define _SEH2_EXCEPT(...)
Definition: pseh2_64.h:6
static VOID PrintStackTrace ( IN PEXCEPTION_POINTERS  ExceptionInfo)
static

Definition at line 91 of file except.c.

Referenced by UnhandledExceptionFilter().

92 {
93  PVOID StartAddr;
94  CHAR szMod[128] = "", *szModFile;
95  PEXCEPTION_RECORD ExceptionRecord = ExceptionInfo->ExceptionRecord;
96  PCONTEXT ContextRecord = ExceptionInfo->ContextRecord;
97 
98  /* Print a stack trace */
99  DbgPrint("Unhandled exception\n");
100  DbgPrint("ExceptionCode: %8x\n", ExceptionRecord->ExceptionCode);
101 
102  if (ExceptionRecord->ExceptionCode == STATUS_ACCESS_VIOLATION &&
103  ExceptionRecord->NumberParameters == 2)
104  {
105  DbgPrint("Faulting Address: %8x\n", ExceptionRecord->ExceptionInformation[1]);
106  }
107 
108  _dump_context(ContextRecord);
109  _module_name_from_addr(ExceptionRecord->ExceptionAddress, &StartAddr, szMod, sizeof(szMod), &szModFile);
110  DbgPrint("Address:\n<%s:%x> (%s@%x)\n",
111  szModFile,
112  (ULONG_PTR)ExceptionRecord->ExceptionAddress - (ULONG_PTR)StartAddr,
113  szMod,
114  StartAddr);
115 #ifdef _M_IX86
116  DbgPrint("Frames:\n");
117 
118  _SEH2_TRY
119  {
120  UINT i;
121  PULONG Frame = (PULONG)ContextRecord->Ebp;
122 
123  for (i = 0; Frame[1] != 0 && Frame[1] != 0xdeadbeef && i < 128; i++)
124  {
125  if (IsBadReadPtr((PVOID)Frame[1], 4))
126  {
127  DbgPrint("<%s:%x>\n", "[invalid address]", Frame[1]);
128  }
129  else
130  {
131  _module_name_from_addr((const void*)Frame[1], &StartAddr,
132  szMod, sizeof(szMod), &szModFile);
133  DbgPrint("<%s:%x> (%s@%x)\n",
134  szModFile,
135  (ULONG_PTR)Frame[1] - (ULONG_PTR)StartAddr,
136  szMod,
137  StartAddr);
138  }
139 
140  if (IsBadReadPtr((PVOID)Frame[0], sizeof(*Frame) * 2))
141  break;
142 
143  Frame = (PULONG)Frame[0];
144  }
145  }
147  {
148  DbgPrint("<error dumping stack trace: 0x%x>\n", _SEH2_GetExceptionCode());
149  }
150  _SEH2_END;
151 #endif
152 }
DWORD *typedef PVOID
Definition: winlogon.h:52
#define DbgPrint
Definition: loader.c:25
char CHAR
Definition: xmlstorage.h:175
static VOID _dump_context(PCONTEXT pc)
Definition: except.c:57
PVOID ExceptionAddress
Definition: compat.h:199
_SEH2_TRY
Definition: create.c:4250
uint32_t ULONG_PTR
Definition: typedefs.h:63
DWORD ExceptionCode
Definition: compat.h:196
GLenum GLclampf GLint i
Definition: glfuncs.h:14
#define EXCEPTION_EXECUTE_HANDLER
Definition: excpt.h:85
ULONG_PTR ExceptionInformation[EXCEPTION_MAXIMUM_PARAMETERS]
Definition: compat.h:201
#define for
Definition: utility.h:88
_IRQL_requires_same_ _In_ PVOID _Inout_ struct _CONTEXT * ContextRecord
Definition: ntbasedef.h:661
static const char * _module_name_from_addr(const void *addr, void **module_start_addr, char *psz, size_t nChars, char **module_name)
Definition: except.c:25
struct _EXCEPTION_RECORD * ExceptionRecord
Definition: compat.h:198
_SEH2_END
Definition: create.c:4424
#define STATUS_ACCESS_VIOLATION
Definition: ntstatus.h:228
BOOL WINAPI IsBadReadPtr(IN LPCVOID lp, IN UINT_PTR ucb)
Definition: except.c:804
unsigned int * PULONG
Definition: retypes.h:1
unsigned int UINT
Definition: ndis.h:50
#define _SEH2_EXCEPT(...)
Definition: pseh2_64.h:6
#define _SEH2_GetExceptionCode()
Definition: pseh2_64.h:12
DWORD NumberParameters
Definition: compat.h:200
ULONG Ebp
Definition: nt_native.h:1475
VOID WINAPI RaiseException ( IN DWORD  dwExceptionCode,
IN DWORD  dwExceptionFlags,
IN DWORD  nNumberOfArguments,
IN CONST ULONG_PTR *lpArguments  OPTIONAL 
)

Definition at line 690 of file except.c.

Referenced by __delayLoadHelper2(), _CxxThrowException(), _invalid_parameter(), CHString::AllocBuffer(), CHString::AllocCopy(), CHString::AssignCopy(), AtlThrowImp(), callback_exception(), CLIPFORMAT_UserMarshal(), CLIPFORMAT_UserSize(), CLIPFORMAT_UserUnmarshal(), CHString::ConcatCopy(), CHString::ConcatInPlace(), DEFINE_TEST(), handle_UserMarshal(), handle_UserSize(), handle_UserUnmarshal(), HBITMAP_UserUnmarshal(), HENHMETAFILE_UserUnmarshal(), HGLOBAL_UserUnmarshal(), HMETAFILE_UserUnmarshal(), OutputDebugStringA(), RpcRaiseException(), STGMEDIUM_UserMarshal(), STGMEDIUM_UserSize(), STGMEDIUM_UserUnmarshal(), test_bug_4004_helper_1(), test_finally_13_helper(), test_finally_14_helper(), test_yield_2_helper(), test_yield_4_helper(), and WdtpInterfacePointer_UserUnmarshal().

694 {
695  EXCEPTION_RECORD ExceptionRecord;
696 
697  /* Setup the exception record */
698  ExceptionRecord.ExceptionCode = dwExceptionCode;
699  ExceptionRecord.ExceptionRecord = NULL;
700  ExceptionRecord.ExceptionAddress = (PVOID)RaiseException;
701  ExceptionRecord.ExceptionFlags = dwExceptionFlags & EXCEPTION_NONCONTINUABLE;
702 
703  /* Check if we have arguments */
704  if (!lpArguments)
705  {
706  /* We don't */
707  ExceptionRecord.NumberParameters = 0;
708  }
709  else
710  {
711  /* We do, normalize the count */
712  if (nNumberOfArguments > EXCEPTION_MAXIMUM_PARAMETERS)
713  nNumberOfArguments = EXCEPTION_MAXIMUM_PARAMETERS;
714 
715  /* Set the count of parameters and copy them */
716  ExceptionRecord.NumberParameters = nNumberOfArguments;
717  RtlCopyMemory(ExceptionRecord.ExceptionInformation,
718  lpArguments,
719  nNumberOfArguments * sizeof(ULONG));
720  }
721 
722  /* Better handling of Delphi Exceptions... a ReactOS Hack */
723  if (dwExceptionCode == 0xeedface || dwExceptionCode == 0xeedfade)
724  {
725  DPRINT1("Delphi Exception at address: %p\n", ExceptionRecord.ExceptionInformation[0]);
726  DPRINT1("Exception-Object: %p\n", ExceptionRecord.ExceptionInformation[1]);
727  DPRINT1("Exception text: %lx\n", ExceptionRecord.ExceptionInformation[2]);
728  }
729 
730  /* Trace the wine special error and show the modulename and functionname */
731  if (dwExceptionCode == 0x80000100 /* EXCEPTION_WINE_STUB */)
732  {
733  /* Numbers of parameter must be equal to two */
734  if (ExceptionRecord.NumberParameters == 2)
735  {
736  DPRINT1("Missing function in : %s\n", ExceptionRecord.ExceptionInformation[0]);
737  DPRINT1("with the functionname : %s\n", ExceptionRecord.ExceptionInformation[1]);
738  }
739  }
740 
741  /* Raise the exception */
742  RtlRaiseException(&ExceptionRecord);
743 }
DWORD *typedef PVOID
Definition: winlogon.h:52
NTSYSAPI VOID NTAPI RtlCopyMemory(VOID UNALIGNED *Destination, CONST VOID UNALIGNED *Source, ULONG Length)
#define EXCEPTION_NONCONTINUABLE
Definition: rtltypes.h:150
#define EXCEPTION_MAXIMUM_PARAMETERS
Definition: compat.h:194
NTSYSAPI VOID NTAPI RtlRaiseException(_In_ PEXCEPTION_RECORD ExceptionRecord)
PVOID ExceptionAddress
Definition: compat.h:199
DWORD ExceptionCode
Definition: compat.h:196
smooth NULL
Definition: ftsmooth.c:416
ULONG_PTR ExceptionInformation[EXCEPTION_MAXIMUM_PARAMETERS]
Definition: compat.h:201
struct _EXCEPTION_RECORD * ExceptionRecord
Definition: compat.h:198
VOID WINAPI RaiseException(IN DWORD dwExceptionCode, IN DWORD dwExceptionFlags, IN DWORD nNumberOfArguments, IN CONST ULONG_PTR *lpArguments OPTIONAL)
Definition: except.c:690
#define DPRINT1
Definition: precomp.h:8
unsigned int ULONG
Definition: retypes.h:1
DWORD ExceptionFlags
Definition: compat.h:197
DWORD NumberParameters
Definition: compat.h:200
UINT WINAPI SetErrorMode ( IN UINT  uMode)

Definition at line 750 of file except.c.

Referenced by _seterrormode(), _tWinMain(), doCrash(), FileExists(), ShellDirectory::fill_w32fdata_shell(), fill_w32fdata_shell(), GetLongPathNameW(), GetShortPathNameW(), PathFileExistsA(), PathFileExistsAndAttributesA(), PathFileExistsAndAttributesW(), PathFileExistsW(), CWineTest::Run(), run_tests(), SHAddToRecentDocs(), test_ExitProcess(), test_Loader(), test_section_access(), VfdOpenDevice(), and wmainCRTStartup().

751 {
752  UINT PrevErrMode, NewMode;
753 
754  /* Get the previous mode */
755  PrevErrMode = GetErrorMode();
756  NewMode = uMode;
757 
758  /* Check if failing critical errors was requested */
759  if (NewMode & SEM_FAILCRITICALERRORS)
760  {
761  /* Mask it out, since the native API works differently */
762  NewMode &= ~SEM_FAILCRITICALERRORS;
763  }
764  else
765  {
766  /* OR it if the caller didn't, due to different native semantics */
767  NewMode |= SEM_FAILCRITICALERRORS;
768  }
769 
770  /* Always keep no alignment faults if they were set */
771  NewMode |= (PrevErrMode & SEM_NOALIGNMENTFAULTEXCEPT);
772 
773  /* Set the new mode */
776  (PVOID)&NewMode,
777  sizeof(NewMode));
778 
779  /* Return the previous mode */
780  return PrevErrMode;
781 }
DWORD *typedef PVOID
Definition: winlogon.h:52
#define SEM_FAILCRITICALERRORS
Definition: rtltypes.h:69
#define SEM_NOALIGNMENTFAULTEXCEPT
Definition: rtltypes.h:71
UINT WINAPI GetErrorMode(VOID)
Definition: except.c:220
#define NtCurrentProcess()
Definition: nt_native.h:1657
NTSTATUS NTAPI NtSetInformationProcess(IN HANDLE ProcessHandle, IN PROCESSINFOCLASS ProcessInformationClass, IN PVOID ProcessInformation, IN ULONG ProcessInformationLength)
Definition: query.c:1091
unsigned int UINT
Definition: ndis.h:50
VOID WINAPI SetLastError ( IN DWORD  dwErrCode)

Definition at line 1027 of file except.c.

Referenced by BaseSetLastNTError().

1028 {
1029  /* Break if a debugger requested checking for this error code */
1030  if ((g_dwLastErrorToBreakOn) && (g_dwLastErrorToBreakOn == dwErrCode)) DbgBreakPoint();
1031 
1032  /* Set last error if it's a new error */
1033  if (NtCurrentTeb()->LastErrorValue != dwErrCode) NtCurrentTeb()->LastErrorValue = dwErrCode;
1034 }
void DbgBreakPoint()
Definition: mach.c:558
DWORD g_dwLastErrorToBreakOn
Definition: except.c:157
FORCEINLINE struct _TEB * NtCurrentTeb(VOID)
Definition: psfuncs.h:420
LPTOP_LEVEL_EXCEPTION_FILTER WINAPI DECLSPEC_HOTPATCH SetUnhandledExceptionFilter ( IN LPTOP_LEVEL_EXCEPTION_FILTER  lpTopLevelExceptionFilter)

Definition at line 789 of file except.c.

Referenced by __declspec(), call_test(), doCrash(), TestSetUnhandledExceptionFilter(), TestSSEExceptions(), and wmainCRTStartup().

790 {
791  PVOID EncodedPointer, EncodedOldPointer;
792 
793  EncodedPointer = RtlEncodePointer(lpTopLevelExceptionFilter);
795  EncodedPointer);
796  return RtlDecodePointer(EncodedOldPointer);
797 }
DWORD *typedef PVOID
Definition: winlogon.h:52
NTSYSAPI PVOID WINAPI RtlDecodePointer(PVOID)
NTSYSAPI PVOID WINAPI RtlEncodePointer(PVOID)
#define InterlockedExchangePointer(Target, Value)
Definition: dshow.h:45
LPTOP_LEVEL_EXCEPTION_FILTER GlobalTopLevelExceptionFilter
Definition: except.c:156
LONG WINAPI UnhandledExceptionFilter ( IN PEXCEPTION_POINTERS  ExceptionInfo)

Definition at line 259 of file except.c.

Referenced by __declspec(), BaseExceptionFilter(), and BaseThreadExceptionFilter().

260 {
261  static UNICODE_STRING AeDebugKey =
262  RTL_CONSTANT_STRING(L"\\Registry\\Machine\\" REGSTR_PATH_AEDEBUG);
263 
264  static BOOLEAN IsSecondChance = FALSE;
265 
266  /* Exception data */
268  PEXCEPTION_RECORD ExceptionRecord = ExceptionInfo->ExceptionRecord;
269  LPTOP_LEVEL_EXCEPTION_FILTER RealFilter;
270  LONG RetValue;
271 
272  /* Debugger and hard error parameters */
273  HANDLE DebugPort = NULL;
274  ULONG_PTR ErrorParameters[4];
275  ULONG DebugResponse, ErrorResponse;
276 
277  /* Post-Mortem "Auto-Execute" (AE) Debugger registry data */
280  UNICODE_STRING ValueString;
281  ULONG Length;
283  PKEY_VALUE_PARTIAL_INFORMATION PartialInfo = (PVOID)Buffer;
284  BOOLEAN AeDebugAuto = FALSE;
285  PWCHAR AeDebugPath = NULL;
286  WCHAR AeDebugCmdLine[MAX_PATH];
287 
288  /* Debugger process data */
289  BOOL Success;
290  HRESULT hr;
291  ULONG PrependLength;
292  HANDLE hDebugEvent;
293  HANDLE WaitHandles[2];
294  STARTUPINFOW StartupInfo;
295  PROCESS_INFORMATION ProcessInfo;
296 
297  /* In case this is a nested exception, just kill the process */
298  if (ExceptionRecord->ExceptionFlags & EXCEPTION_NESTED_CALL)
299  {
302  }
303 
304  if ((ExceptionRecord->ExceptionCode == STATUS_ACCESS_VIOLATION) &&
305  (ExceptionRecord->NumberParameters >= 2))
306  {
307  switch (ExceptionRecord->ExceptionInformation[0])
308  {
310  {
311  /*
312  * Change the protection on some write attempts,
313  * some InstallShield setups have this bug.
314  */
316  (PVOID)ExceptionRecord->ExceptionInformation[1]);
317  if (RetValue == EXCEPTION_CONTINUE_EXECUTION)
319  break;
320  }
321 
323  /* FIXME */
324  break;
325  }
326  }
327 
328  /* If the process is being debugged, pass the exception to the debugger */
331  &DebugPort,
332  sizeof(DebugPort),
333  NULL);
334  if (NT_SUCCESS(Status) && DebugPort)
335  {
336  DPRINT("Passing exception to debugger\n");
338  }
339 
340  /* No debugger present, let's continue... */
341 
343  if (RealFilter)
344  {
345  RetValue = RealFilter(ExceptionInfo);
346  if (RetValue != EXCEPTION_CONTINUE_SEARCH)
347  return RetValue;
348  }
349 
350  /* ReactOS-specific: DPRINT a stack trace */
351  PrintStackTrace(ExceptionInfo);
352 
353  /*
354  * Now pop up an error if needed. Check both the process-wide (Win32)
355  * and per-thread error-mode flags (NT).
356  */
359  {
360  /* Do not display the pop-up error box, just transfer control to the exception handler */
362  }
363 
364  /* Save exception code and address */
365  ErrorParameters[0] = (ULONG_PTR)ExceptionRecord->ExceptionCode;
366  ErrorParameters[1] = (ULONG_PTR)ExceptionRecord->ExceptionAddress;
367 
368  if (ExceptionRecord->ExceptionCode == STATUS_IN_PAGE_ERROR)
369  {
370  /*
371  * Get the underlying status code that resulted in the exception,
372  * and just forget about the type of operation (read/write).
373  */
374  ErrorParameters[2] = ExceptionRecord->ExceptionInformation[2];
375  }
376  else // if (ExceptionRecord->ExceptionCode == STATUS_ACCESS_VIOLATION) or others...
377  {
378  /* Get the type of operation that caused the access violation */
379  ErrorParameters[2] = ExceptionRecord->ExceptionInformation[0];
380  }
381 
382  /* Save faulting address */
383  ErrorParameters[3] = ExceptionRecord->ExceptionInformation[1];
384 
385  /*
386  * Prepare the hard error dialog: default to only OK
387  * in case we do not have any debugger at our disposal.
388  */
389  DebugResponse = OptionOk;
390  AeDebugAuto = FALSE;
391 
392  /*
393  * Retrieve Post-Mortem Debugger settings from the registry, under:
394  * HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\AeDebug
395  * (REGSTR_PATH_AEDEBUG).
396  */
397 
398  InitializeObjectAttributes(&ObjectAttributes,
399  &AeDebugKey,
401  NULL,
402  NULL);
403  Status = NtOpenKey(&KeyHandle, KEY_QUERY_VALUE, &ObjectAttributes);
404  if (NT_SUCCESS(Status))
405  {
406  /*
407  * Read the 'Auto' REG_SZ value:
408  * "0" (or any other value): Prompt the user for starting the debugger.
409  * "1": Start the debugger without prompting.
410  */
412  Status = NtQueryValueKey(KeyHandle,
413  &ValueString,
415  PartialInfo,
416  sizeof(Buffer),
417  &Length);
418  if (NT_SUCCESS(Status) && (PartialInfo->Type == REG_SZ))
419  {
420  AeDebugAuto = (*(PWCHAR)PartialInfo->Data == L'1');
421  }
422  else
423  {
424  AeDebugAuto = FALSE;
425  }
426 
427  /*
428  * Read and store the 'Debugger' REG_SZ value. Its usual format is:
429  * C:\dbgtools\ntsd.exe -p %ld -e %ld -g
430  * with the first and second parameters being respectively
431  * the process ID and a notification event handle.
432  */
434  Status = NtQueryValueKey(KeyHandle,
435  &ValueString,
437  PartialInfo,
438  sizeof(Buffer),
439  &Length);
440  if (NT_SUCCESS(Status) && (PartialInfo->Type == REG_SZ))
441  {
442  /* We hope the string is NULL-terminated */
443  AeDebugPath = (PWCHAR)PartialInfo->Data;
444 
445  /* Skip any prepended whitespace */
446  while ( *AeDebugPath &&
447  ((*AeDebugPath == L' ') ||
448  (*AeDebugPath == L'\t')) ) // iswspace(*AeDebugPath)
449  {
450  ++AeDebugPath;
451  }
452 
453  if (*AeDebugPath)
454  {
455  /* We have a debugger path, we can prompt the user to debug the program */
456  DebugResponse = OptionOkCancel;
457  }
458  else
459  {
460  /* We actually do not have anything, reset the pointer */
461  AeDebugPath = NULL;
462  }
463  }
464  else
465  {
466  AeDebugPath = NULL;
467  }
468 
469  NtClose(KeyHandle);
470  }
471 
472  // TODO: Start a ReactOS Fault Reporter (unimplemented!)
473  //
474  // For now we are doing the "old way" (aka Win2k), that is also the fallback
475  // case for Windows XP/2003 in case it does not find faultrep.dll to display
476  // the nice "Application Error" dialog box: We use a hard error to communicate
477  // the problem and prompt the user to continue debugging the application or
478  // to terminate it.
479  //
480  // Since Windows XP/2003, we have the ReportFault API available.
481  // See http://www.clausbrod.de/twiki/pub/Blog/DefinePrivatePublic20070616/reportfault.cpp
482  // and https://msdn.microsoft.com/en-us/library/windows/desktop/bb513616(v=vs.85).aspx
483  // and the legacy ReportFault API: https://msdn.microsoft.com/en-us/library/windows/desktop/bb513615(v=vs.85).aspx
484  //
485  // NOTE: Starting Vista+, the fault API is constituted of the WerXXX functions.
486  //
487  // Also see Vostokov's book "Memory Dump Analysis Anthology Collector's Edition, Volume 1"
488  // at: https://books.google.fr/books?id=9w2x6NHljg4C&pg=PA115&lpg=PA115
489 
490  if (!(AeDebugPath && AeDebugAuto))
491  {
492  /*
493  * Either there is no debugger specified, or the debugger should
494  * not start automatically: display the hard error no matter what.
495  * For a first chance exception, allow continuing or debugging;
496  * for a second chance exception, just debug or kill the process.
497  */
499  4,
500  0,
501  ErrorParameters,
502  (!IsSecondChance ? DebugResponse : OptionOk),
503  &ErrorResponse);
504  }
505  else
506  {
507  Status = STATUS_SUCCESS;
508  ErrorResponse = (AeDebugPath ? ResponseCancel : ResponseOk);
509  }
510 
511  /*
512  * If the user has chosen not to debug the process, or
513  * if this is a second chance exception, kill the process.
514  */
515  if (!NT_SUCCESS(Status) || (ErrorResponse != ResponseCancel) || IsSecondChance)
516  goto Quit;
517 
518  /* If the exception comes from a CSR Server, kill it (this will lead to ReactOS shutdown) */
520  {
521  IsSecondChance = TRUE;
522  goto Quit;
523  }
524 
525  /*
526  * Attach a debugger to this process. The debugger process is given
527  * the process ID of the current process to be debugged, as well as
528  * a notification event handle. After being spawned, the debugger
529  * initializes and attaches to the process by calling DebugActiveProcess.
530  * When the debugger is ready, it signals the notification event,
531  * so that we can give it control over the process being debugged,
532  * by passing it the exception.
533  *
534  * See https://msdn.microsoft.com/en-us/library/ms809754.aspx
535  * and http://www.debuginfo.com/articles/ntsdwatson.html
536  * and https://sourceware.org/ml/gdb-patches/2012-08/msg00893.html
537  * for more details.
538  */
539 
540  /* Create an inheritable notification debug event for the debugger */
541  InitializeObjectAttributes(&ObjectAttributes,
542  NULL,
543  OBJ_INHERIT,
544  NULL,
545  NULL);
546  Status = NtCreateEvent(&hDebugEvent,
548  &ObjectAttributes,
550  FALSE);
551  if (!NT_SUCCESS(Status))
552  hDebugEvent = NULL;
553 
554  /* Build the debugger command line */
555 
556  Success = FALSE;
557 
558  /*
559  * We will add two longs (process ID and event handle) to the command
560  * line. The biggest 32-bit unsigned int (0xFFFFFFFF == 4.294.967.295)
561  * takes 10 decimal digits. We then count the terminating NULL.
562  */
563  Length = wcslen(AeDebugPath) + 2*10 + 1;
564 
565  /* Check whether the debugger path may be a relative path */
566  if ((*AeDebugPath != L'"') &&
568  {
569  /* Relative path, prepend SystemRoot\System32 */
570  PrependLength = wcslen(SharedUserData->NtSystemRoot) + 10 /* == wcslen(L"\\System32\\") */;
571  if (PrependLength + Length <= ARRAYSIZE(AeDebugCmdLine))
572  {
573  hr = StringCchPrintfW(AeDebugCmdLine,
574  PrependLength + 1,
575  L"%s\\System32\\",
576  SharedUserData->NtSystemRoot);
577  Success = SUCCEEDED(hr);
578  }
579  }
580  else
581  {
582  /* Full path */
583  PrependLength = 0;
584  if (Length <= ARRAYSIZE(AeDebugCmdLine))
585  Success = TRUE;
586  }
587 
588  /* Format the command line */
589  if (Success)
590  {
591  hr = StringCchPrintfW(&AeDebugCmdLine[PrependLength],
592  Length,
593  AeDebugPath,
594  HandleToUlong(NtCurrentTeb()->ClientId.UniqueProcess), // GetCurrentProcessId()
595  hDebugEvent);
596  Success = SUCCEEDED(hr);
597  }
598 
599  /* Start the debugger */
600  if (Success)
601  {
602  DPRINT1("\nStarting debugger: '%S'\n", AeDebugCmdLine);
603 
604  RtlZeroMemory(&StartupInfo, sizeof(StartupInfo));
605  RtlZeroMemory(&ProcessInfo, sizeof(ProcessInfo));
606 
607  StartupInfo.cb = sizeof(StartupInfo);
608  StartupInfo.lpDesktop = L"WinSta0\\Default";
609 
610  Success = CreateProcessW(NULL,
611  AeDebugCmdLine,
612  NULL, NULL,
613  TRUE, 0,
614  NULL, NULL,
615  &StartupInfo, &ProcessInfo);
616  }
617 
618  if (Success)
619  {
620  WaitHandles[0] = hDebugEvent;
621  WaitHandles[1] = ProcessInfo.hProcess;
622 
623  /* Loop until the debugger gets ready or terminates unexpectedly */
624  do
625  {
626  /* Alertable wait */
627  Status = NtWaitForMultipleObjects(ARRAYSIZE(WaitHandles),
628  WaitHandles,
629  WaitAny,
630  TRUE, NULL);
631  } while ((Status == STATUS_ALERTED) || (Status == STATUS_USER_APC));
632 
633  /*
634  * The debugger terminated unexpectedly and we cannot attach to it.
635  * Kill the process being debugged.
636  */
637  if (Status == STATUS_WAIT_1)
638  {
639  /* Be sure there is no other debugger attached */
642  &DebugPort,
643  sizeof(DebugPort),
644  NULL);
645  if (!NT_SUCCESS(Status) || !DebugPort)
646  {
647  /* No debugger is attached, kill the process at next round */
648  IsSecondChance = TRUE;
649  }
650  }
651 
652  CloseHandle(ProcessInfo.hThread);
653  CloseHandle(ProcessInfo.hProcess);
654 
655  if (hDebugEvent)
656  NtClose(hDebugEvent);
657 
659  }
660 
661  /* We failed starting the debugger, close the event handle and kill the process */
662 
663  if (hDebugEvent)
664  NtClose(hDebugEvent);
665 
666  IsSecondChance = TRUE;
667 
668 
669 Quit:
670  /* If this is a second chance exception, kill the process */
671  if (IsSecondChance)
673 
674  /* Otherwise allow handling exceptions in first chance */
675 
676  /*
677  * Returning EXCEPTION_EXECUTE_HANDLER means that the code in
678  * the __except block will be executed. Normally this will end up in a
679  * Terminate process.
680  */
681 
683 }
DWORD *typedef PVOID
Definition: winlogon.h:52
IN PUNICODE_STRING IN POBJECT_ATTRIBUTES ObjectAttributes
Definition: conport.c:35
#define TRUE
Definition: types.h:120
#define CloseHandle
Definition: compat.h:398
NTSTATUS NTAPI NtRaiseHardError(IN NTSTATUS ErrorStatus, IN ULONG NumberOfParameters, IN ULONG UnicodeStringParameterMask, IN PULONG_PTR Parameters, IN ULONG ValidResponseOptions, OUT PULONG Response)
Definition: harderr.c:553
_Must_inspect_result_ _Out_ PNDIS_STATUS _In_ NDIS_HANDLE _In_ ULONG _Out_ PNDIS_STRING _Out_ PNDIS_HANDLE KeyHandle
Definition: ndis.h:4693
Definition: bidi.c:85
__wchar_t WCHAR
Definition: xmlstorage.h:180
return STATUS_SUCCESS
Definition: btrfs.c:2690
LONG WINAPI BasepCheckForReadOnlyResource(IN PVOID Ptr)
Definition: except.c:163
#define HandleToUlong(h)
Definition: basetsd.h:79
NTSTATUS NTAPI NtQueryInformationProcess(IN HANDLE ProcessHandle, IN PROCESSINFOCLASS ProcessInformationClass, OUT PVOID ProcessInformation, IN ULONG ProcessInformationLength, OUT PULONG ReturnLength OPTIONAL)
Definition: query.c:59
NTSTATUS NTAPI NtCreateEvent(OUT PHANDLE EventHandle, IN ACCESS_MASK DesiredAccess, IN POBJECT_ATTRIBUTES ObjectAttributes OPTIONAL, IN EVENT_TYPE EventType, IN BOOLEAN InitialState)
Definition: event.c:100
#define ARRAYSIZE(array)
Definition: filtermapper.c:47
#define EXCEPTION_EXECUTE_FAULT
Definition: compat.h:274
NTSYSAPI PVOID WINAPI RtlDecodePointer(PVOID)
NTSTATUS NTAPI NtWaitForMultipleObjects(IN ULONG ObjectCount, IN PHANDLE HandleArray, IN WAIT_TYPE WaitType, IN BOOLEAN Alertable, IN PLARGE_INTEGER TimeOut OPTIONAL)
Definition: obwait.c:46
uint16_t * PWCHAR
Definition: typedefs.h:54
HANDLE UniqueProcess
Definition: compat.h:474
#define STATUS_ALERTED
Definition: ntstatus.h:80
PVOID ExceptionAddress
Definition: compat.h:199
uint32_t ULONG_PTR
Definition: typedefs.h:63
DWORD ExceptionCode
Definition: compat.h:196
#define STATUS_WAIT_1
Definition: ntstatus.h:71
#define HARDERROR_OVERRIDE_ERRORMODE
Definition: extypes.h:146
while(1)
Definition: macro.lex.yy.c:743
#define EXCEPTION_CONTINUE_SEARCH
Definition: excpt.h:86
#define REGSTR_PATH_AEDEBUG
Definition: regstr.h:672
NTSYSAPI DWORD WINAPI RtlGetThreadErrorMode(void)
Definition: error.c:217
#define FALSE
Definition: types.h:117
long LONG
Definition: pedump.c:60
#define EVENT_ALL_ACCESS
Definition: isotest.c:82
UINT WINAPI GetErrorMode(VOID)
Definition: except.c:220
LPWSTR lpDesktop
Definition: winbase.h:819
#define RTL_SEM_NOGPFAULTERRORBOX
Definition: rtltypes.h:75
#define EXCEPTION_EXECUTE_HANDLER
Definition: excpt.h:85
smooth NULL
Definition: ftsmooth.c:416
void DPRINT(...)
Definition: polytest.cpp:61
Definition: bufpool.h:45
BOOL WINAPI DECLSPEC_HOTPATCH CreateProcessW(LPCWSTR lpApplicationName, LPWSTR lpCommandLine, LPSECURITY_ATTRIBUTES lpProcessAttributes, LPSECURITY_ATTRIBUTES lpThreadAttributes, BOOL bInheritHandles, DWORD dwCreationFlags, LPVOID lpEnvironment, LPCWSTR lpCurrentDirectory, LPSTARTUPINFOW lpStartupInfo, LPPROCESS_INFORMATION lpProcessInformation)
Definition: proc.c:4631
#define NtCurrentProcess()
Definition: nt_native.h:1657
unsigned char BOOLEAN
NTSYSAPI NTSTATUS NTAPI NtQueryValueKey(IN HANDLE KeyHandle, IN PUNICODE_STRING ValueName, IN KEY_VALUE_INFORMATION_CLASS KeyValueInformationClass, IN PVOID KeyValueInformation, IN ULONG Length, IN PULONG ResultLength)
ULONG_PTR ExceptionInformation[EXCEPTION_MAXIMUM_PARAMETERS]
Definition: compat.h:201
unsigned int BOOL
Definition: ntddk_ex.h:94
_Out_ PCLIENT_ID ClientId
Definition: kefuncs.h:1176
LONG NTSTATUS
Definition: precomp.h:26
BOOLEAN BaseRunningInServerProcess
Definition: dllmain.c:20
DWORD cb
Definition: winbase.h:817
#define NT_SUCCESS(StatCode)
Definition: apphelp.c:24
LONG HRESULT
Definition: typedefs.h:77
#define OBJ_INHERIT
Definition: winternl.h:225
#define MAX_PATH
Definition: compat.h:26
NTSTATUS NTAPI NtClose(IN HANDLE Handle)
Definition: obhandle.c:3392
#define OBJ_CASE_INSENSITIVE
Definition: winternl.h:228
#define SharedUserData
#define REGSTR_VAL_AEDEBUG_AUTO
Definition: regstr.h:674
unsigned char UCHAR
Definition: xmlstorage.h:181
VOID UINTN Length
Definition: acefiex.h:744
PTOP_LEVEL_EXCEPTION_FILTER LPTOP_LEVEL_EXCEPTION_FILTER
Definition: winbase.h:1406
#define SEM_NOGPFAULTERRORBOX
Definition: rtltypes.h:70
#define REGSTR_VAL_AEDEBUG_DEBUGGER
Definition: regstr.h:673
Status
Definition: gdiplustypes.h:24
struct _EXCEPTION_RECORD * ExceptionRecord
Definition: compat.h:198
#define STATUS_USER_APC
Definition: ntstatus.h:78
#define EXCEPTION_NESTED_CALL
Definition: rtltypes.h:154
#define EXCEPTION_WRITE_FAULT
Definition: compat.h:273
static VOID PrintStackTrace(IN PEXCEPTION_POINTERS ExceptionInfo)
Definition: except.c:91
DWORD *typedef HANDLE
Definition: winlogon.h:52
FORCEINLINE struct _TEB * NtCurrentTeb(VOID)
Definition: psfuncs.h:420
#define STATUS_ACCESS_VIOLATION
Definition: ntstatus.h:228
#define KEY_QUERY_VALUE
Definition: nt_native.h:1016
struct _KEY_VALUE_PARTIAL_INFORMATION KEY_VALUE_PARTIAL_INFORMATION
STRSAFEAPI StringCchPrintfW(STRSAFE_LPWSTR pszDest, size_t cchDest, STRSAFE_LPCWSTR pszFormat,...)
Definition: strsafe.h:530
#define DPRINT1
Definition: precomp.h:8
NTSYSAPI NTSTATUS NTAPI NtOpenKey(OUT PHANDLE KeyHandle, IN ACCESS_MASK DesiredAccess, IN POBJECT_ATTRIBUTES ObjectAttributes)
Definition: ntapi.c:120
unsigned int ULONG
Definition: retypes.h:1
LPTOP_LEVEL_EXCEPTION_FILTER GlobalTopLevelExceptionFilter
Definition: except.c:156
NTSYSAPI VOID NTAPI RtlInitUnicodeString(PUNICODE_STRING DestinationString, PCWSTR SourceString)
#define RtlZeroMemory(Destination, Length)
Definition: typedefs.h:261
NTSTATUS NTAPI NtTerminateProcess(HANDLE ProcessHandle, LONG ExitStatus)
#define ULONG_PTR
Definition: config.h:101
DWORD ExceptionFlags
Definition: compat.h:197
#define InitializeObjectAttributes(p, n, a, r, s)
Definition: reg.c:106
#define STATUS_IN_PAGE_ERROR
Definition: ntstatus.h:229
DWORD NumberParameters
Definition: compat.h:200
#define STATUS_UNHANDLED_EXCEPTION
Definition: ntstatus.h:546
size_t __cdecl wcslen(_In_z_ const wchar_t *_Str)
#define SUCCEEDED(hr)
Definition: intsafe.h:57
NTSYSAPI RTL_PATH_TYPE NTAPI RtlDetermineDosPathNameType_U(_In_ PCWSTR Path)
#define EXCEPTION_CONTINUE_EXECUTION
Definition: excpt.h:87
#define RTL_CONSTANT_STRING(s)
Definition: tunneltest.c:14
#define REG_SZ
Definition: layer.c:22

Variable Documentation

DWORD g_dwLastErrorToBreakOn

Definition at line 157 of file except.c.

Referenced by SetLastError().