ReactOS  0.4.15-dev-3297-g037c744
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 GetLastError (VOID)
 

Variables

LPTOP_LEVEL_EXCEPTION_FILTER GlobalTopLevelExceptionFilter
 
DWORD g_dwLastErrorToBreakOn
 

Macro Definition Documentation

◆ NDEBUG

#define NDEBUG

Definition at line 17 of file except.c.

Function Documentation

◆ _dump_context()

static VOID _dump_context ( PCONTEXT  pc)
static

Definition at line 59 of file except.c.

60 {
61 #ifdef _M_IX86
62  /*
63  * Print out the CPU registers
64  */
65  DbgPrint("CS:EIP %x:%x\n", pc->SegCs&0xffff, pc->Eip );
66  DbgPrint("DS %x ES %x FS %x GS %x\n", pc->SegDs&0xffff, pc->SegEs&0xffff,
67  pc->SegFs&0xffff, pc->SegGs&0xfff);
68  DbgPrint("EAX: %.8x EBX: %.8x ECX: %.8x\n", pc->Eax, pc->Ebx, pc->Ecx);
69  DbgPrint("EDX: %.8x EBP: %.8x ESI: %.8x ESP: %.8x\n", pc->Edx,
70  pc->Ebp, pc->Esi, pc->Esp);
71  DbgPrint("EDI: %.8x EFLAGS: %.8x\n", pc->Edi, pc->EFlags);
72 #elif defined(_M_AMD64)
73  DbgPrint("CS:RIP %x:%I64x\n", pc->SegCs&0xffff, pc->Rip );
74  DbgPrint("DS %x ES %x FS %x GS %x\n", pc->SegDs&0xffff, pc->SegEs&0xffff,
75  pc->SegFs&0xffff, pc->SegGs&0xfff);
76  DbgPrint("RAX: %I64x RBX: %I64x RCX: %I64x RDI: %I64x\n", pc->Rax, pc->Rbx, pc->Rcx, pc->Rdi);
77  DbgPrint("RDX: %I64x RBP: %I64x RSI: %I64x RSP: %I64x\n", pc->Rdx, pc->Rbp, pc->Rsi, pc->Rsp);
78  DbgPrint("R8: %I64x R9: %I64x R10: %I64x R11: %I64x\n", pc->R8, pc->R9, pc->R10, pc->R11);
79  DbgPrint("R12: %I64x R13: %I64x R14: %I64x R15: %I64x\n", pc->R12, pc->R13, pc->R14, pc->R15);
80  DbgPrint("EFLAGS: %.8x\n", pc->EFlags);
81 #elif defined(_M_ARM)
82  DbgPrint("PC: %08lx LR: %08lx SP: %08lx\n", pc->Pc);
83  DbgPrint("R0: %08lx R1: %08lx R2: %08lx R3: %08lx\n", pc->R0, pc->R1, pc->R2, pc->R3);
84  DbgPrint("R4: %08lx R5: %08lx R6: %08lx R7: %08lx\n", pc->R4, pc->R5, pc->R6, pc->R7);
85  DbgPrint("R8: %08lx R9: %08lx R10: %08lx R11: %08lx\n", pc->R8, pc->R9, pc->R10, pc->R11);
86  DbgPrint("R12: %08lx CPSR: %08lx FPSCR: %08lx\n", pc->R12, pc->Cpsr, pc->R1, pc->Fpscr, pc->R3);
87 #else
88  #error "Unknown architecture"
89 #endif
90 }
ULONG Esp
Definition: nt_native.h:1479
#define DbgPrint
Definition: hal.h:12
ULONG Eip
Definition: nt_native.h:1476
ULONG Ecx
Definition: nt_native.h:1467
ULONG R6
Definition: ke.h:261
ULONG R0
Definition: ke.h:255
ULONG SegGs
Definition: nt_native.h:1453
ULONG SegFs
Definition: nt_native.h:1454
ULONG SegDs
Definition: nt_native.h:1456
ULONG R8
Definition: ke.h:263
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: ke.h:264
ULONG R1
Definition: ke.h:256
ULONG EFlags
Definition: nt_native.h:1478
ULONG Ebx
Definition: nt_native.h:1465
ULONG R4
Definition: ke.h:259
ULONG Fpscr
Definition: ke.h:275
ULONG R11
Definition: ke.h:266
ULONG Eax
Definition: nt_native.h:1468
ULONG Cpsr
Definition: ke.h:272
ULONG R5
Definition: ke.h:260
ULONG R7
Definition: ke.h:262
ULONG R12
Definition: ke.h:267
ULONG R10
Definition: ke.h:265
ULONG R2
Definition: ke.h:257
ULONG Pc
Definition: ke.h:271
ULONG R3
Definition: ke.h:258
ULONG Ebp
Definition: nt_native.h:1475
ULONG Edi
Definition: nt_native.h:1463

Referenced by PrintStackTrace().

◆ _module_name_from_addr()

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.

27 {
29 
30  if ((nChars > MAXDWORD) ||
31  (VirtualQuery(addr, &mbi, sizeof(mbi)) != sizeof(mbi)) ||
32  !GetModuleFileNameA((HMODULE)mbi.AllocationBase, psz, (DWORD)nChars))
33  {
34  psz[0] = '\0';
35  *module_name = psz;
36  *module_start_addr = 0;
37  }
38  else
39  {
40  char* s1 = strrchr(psz, '\\'), *s2 = strrchr(psz, '/');
41  if (s2 && !s1)
42  s1 = s2;
43  else if (s1 && s2 && s1 < s2)
44  s1 = s2;
45 
46  if (!s1)
47  s1 = psz;
48  else
49  s1++;
50 
51  *module_name = s1;
52  *module_start_addr = (void *)mbi.AllocationBase;
53  }
54  return psz;
55 }
struct S2 s2
static LPCWSTR LPCWSTR module_name
Definition: db.cpp:170
_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:539
#define MAXDWORD
struct S1 s1
unsigned long DWORD
Definition: ntddk_ex.h:95
SIZE_T NTAPI VirtualQuery(IN LPCVOID lpAddress, OUT PMEMORY_BASIC_INFORMATION lpBuffer, IN SIZE_T dwLength)
Definition: virtmem.c:220
GLenum const GLvoid * addr
Definition: glext.h:9621

Referenced by PrintStackTrace().

◆ BasepCheckForReadOnlyResource()

LONG WINAPI BasepCheckForReadOnlyResource ( IN PVOID  Ptr)

Definition at line 172 of file except.c.

173 {
174  PVOID Data;
175  ULONG Size, OldProtect;
176  SIZE_T Size2;
180 
181  /* Check if it was an attempt to write to a read-only image section! */
183  Ptr,
185  &mbi,
186  sizeof(mbi),
187  NULL);
188  if (NT_SUCCESS(Status) &&
189  mbi.Protect == PAGE_READONLY && mbi.Type == MEM_IMAGE)
190  {
191  /* Attempt to treat it as a resource section. We need to
192  use SEH here because we don't know if it's actually a
193  resource mapping */
194  _SEH2_TRY
195  {
197  TRUE,
199  &Size);
200 
201  if (Data != NULL &&
202  (ULONG_PTR)Ptr >= (ULONG_PTR)Data &&
204  {
205  /* The user tried to write into the resources. Make the page
206  writable... */
207  Size2 = 1;
209  &Ptr,
210  &Size2,
212  &OldProtect);
213  if (NT_SUCCESS(Status))
214  {
216  }
217  }
218  }
220  {
221  }
222  _SEH2_END;
223  }
224 
225  return Ret;
226 }
#define MEM_IMAGE
Definition: mmtypes.h:88
#define TRUE
Definition: types.h:120
_Must_inspect_result_ _In_ WDFDEVICE _In_ PWDF_DEVICE_PROPERTY_DATA _In_ DEVPROPTYPE _In_ ULONG _In_opt_ PVOID Data
Definition: wdfdevice.h:4527
_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:3100
LONG NTSTATUS
Definition: precomp.h:26
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:4398
IN PVOID IN PVOID IN USHORT IN USHORT Size
Definition: pci.h:361
_SEH2_TRY
Definition: create.c:4226
uint32_t ULONG_PTR
Definition: typedefs.h:65
#define EXCEPTION_CONTINUE_EXECUTION
Definition: excpt.h:87
long LONG
Definition: pedump.c:60
#define NtCurrentProcess()
Definition: nt_native.h:1657
Status
Definition: gdiplustypes.h:24
#define NT_SUCCESS(StatCode)
Definition: apphelp.c:32
#define EXCEPTION_EXECUTE_HANDLER
Definition: excpt.h:85
#define RtlImageDirectoryEntryToData
Definition: compat.h:668
ULONG_PTR SIZE_T
Definition: typedefs.h:80
_SEH2_END
Definition: create.c:4400
#define EXCEPTION_CONTINUE_SEARCH
Definition: excpt.h:86
#define NULL
Definition: types.h:112
#define PAGE_READONLY
Definition: compat.h:138
unsigned int ULONG
Definition: retypes.h:1
#define _SEH2_EXCEPT(...)
Definition: pseh2_64.h:40
#define IMAGE_DIRECTORY_ENTRY_RESOURCE
Definition: pedump.c:261
#define PAGE_READWRITE
Definition: nt_native.h:1304

Referenced by UnhandledExceptionFilter().

◆ GetErrorMode()

UINT WINAPI GetErrorMode ( VOID  )

Definition at line 230 of file except.c.

231 {
233  UINT ErrMode;
234 
235  /* Query the current setting */
238  &ErrMode,
239  sizeof(ErrMode),
240  NULL);
241  if (!NT_SUCCESS(Status))
242  {
243  /* Fail if we couldn't query */
245  return 0;
246  }
247 
248  /* Check if NOT failing critical errors was requested */
249  if (ErrMode & SEM_FAILCRITICALERRORS)
250  {
251  /* Mask it out, since the native API works differently */
252  ErrMode &= ~SEM_FAILCRITICALERRORS;
253  }
254  else
255  {
256  /* OR it if the caller didn't, due to different native semantics */
257  ErrMode |= SEM_FAILCRITICALERRORS;
258  }
259 
260  /* Return the mode */
261  return ErrMode;
262 }
#define SEM_FAILCRITICALERRORS
Definition: rtltypes.h:69
LONG NTSTATUS
Definition: precomp.h:26
DWORD BaseSetLastNTError(IN NTSTATUS Status)
Definition: reactos.cpp:166
#define NtCurrentProcess()
Definition: nt_native.h:1657
Status
Definition: gdiplustypes.h:24
#define NT_SUCCESS(StatCode)
Definition: apphelp.c:32
unsigned int UINT
Definition: ndis.h:50
#define NULL
Definition: types.h:112
NTSTATUS NTAPI NtQueryInformationProcess(_In_ HANDLE ProcessHandle, _In_ PROCESSINFOCLASS ProcessInformationClass, _Out_ PVOID ProcessInformation, _In_ ULONG ProcessInformationLength, _Out_opt_ PULONG ReturnLength)
Definition: query.c:59

Referenced by SetErrorMode(), and UnhandledExceptionFilter().

◆ GetLastError()

DWORD WINAPI GetLastError ( VOID  )

Definition at line 1040 of file except.c.

1041 {
1042  /* Return the current value */
1043  return NtCurrentTeb()->LastErrorValue;
1044 }
FORCEINLINE struct _TEB * NtCurrentTeb(VOID)
Definition: psfuncs.h:420

Referenced by __delayLoadHelper2(), __drv_when(), __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(), _DoDLLInjection(), _dup2(), _expect_data_available(), _findclose(), _fstat64(), _futime(), _GetNonspooledPortName(), _GetUserSidStringFromToken(), _HandleAddPort(), _HandleConfigureLPTPortCommandOK(), _HandleDeletePort(), _HandleGetDefaultCommConfig(), _HandlePortExists(), _HandlePortIsValid(), _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(), _RpcAbortPrinter(), _RpcAddForm(), _RpcAddJob(), _RpcAddMonitor(), _RpcAddPort(), _RpcAddPortEx(), _RpcAddPrinterDriver(), _RpcAddPrinterDriverEx(), _RpcAddPrintProcessor(), _RpcAddPrintProvidor(), _RpcClosePrinter(), _RpcCloseSpoolFileHandle(), _RpcCommitSpoolData(), _RpcCommitSpoolData2(), _RpcConfigurePort(), _RpcDeleteForm(), _RpcDeleteMonitor(), _RpcDeletePort(), _RpcDeletePrinter(), _RpcDeletePrinterDriver(), _RpcDeletePrinterDriverEx(), _RpcDeletePrintProcessor(), _RpcDeletePrintProvidor(), _RpcEndDocPrinter(), _RpcEndPagePrinter(), _RpcEnumForms(), _RpcEnumJobs(), _RpcEnumMonitors(), _RpcEnumPorts(), _RpcEnumPrinterDrivers(), _RpcEnumPrinters(), _RpcEnumPrintProcessorDatatypes(), _RpcEnumPrintProcessors(), _RpcGetForm(), _RpcGetJob(), _RpcGetPrinter(), _RpcGetPrinterDriver(), _RpcGetPrinterDriver2(), _RpcGetPrinterDriverDirectory(), _RpcGetPrintProcessorDirectory(), _RpcGetSpoolFileInfo(), _RpcGetSpoolFileInfo2(), _RpcOpenPrinter(), _RpcPrinterMessageBox(), _RpcReadPrinter(), _RpcResetPrinterEx(), _RpcScheduleJob(), _RpcSeekPrinter(), _RpcSetForm(), _RpcSetJob(), _RpcSetPort(), _RpcSpoolerInit(), _RpcStartDocPrinter(), _RpcStartPagePrinter(), _RpcWritePrinter(), _RpcXcvData(), _RunRemoteTest(), _ServiceMain(), _set_secflags(), _setmbcp_l(), _SHExpandEnvironmentStrings(), _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(), CAppsListView::AddAvailableApplication(), CMenuToolbarBase::AddButton(), BtrfsSend::AddClone(), BtrfsDeviceAdd::AddDevice(), AddDeviceW(), AddMonitorW(), CMenuToolbarBase::AddPlaceholder(), AddPortExW(), AddPortW(), AddPrinterDriverExA(), AddPrinterDriverExW(), AddPrinterExW(), AddPrinterW(), AddPrintMonitorList(), CMenuToolbarBase::AddSeparator(), AddSubst(), AddToMessageLog(), AddUserProfiles(), AdjustEnableDefaultPriv(), AdvInstallFileW(), CTrayWindow::AlignControls(), AllocAndGetEntityArray(), AllowWinstaAccess(), alpha_blend_image(), AlphaBlendProc(), apartment_createwindowifneeded(), apd_copyfile(), append_file(), append_file_test(), AppendFullPathURL(), AppendSystemPostfix(), Applet1(), BtrfsPropSheet::apply_changes_file(), apply_patch(), ApplyGeneralSettings(), ApplyPatchToFileByHandles(), ApplyRegistryValues(), are_all_privileges_disabled(), assembly_create(), AsyncInetDownload(), AsyncInetReadFileLoop(), ata_send_ioctl(), ata_send_scsi(), ATL::AtlHresultFromLastError(), AtlLoadTypeLib(), ATL::AtlLoadTypeLib(), AttachToConsoleInternal(), attr_cache_init(), AutoStartupApplications(), 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(), CRecycleBinEnum::CBEnumRecycleBin(), CBSearchRecycleBin(), CertCreateSelfSignCertificate(), CertGetValidUsages(), CertRemoveEnhancedKeyUsageIdentifier(), CertUnregisterSystemStore(), ChangeACLsOfFiles(), ChangeACLsOfFilesInCurDir(), ChangePortNumber(), check_dc_state(), check_device_iface_(), check_device_info_(), check_dirid(), check_exe(), check_for_files(), check_instance_(), check_menu_item_info(), check_param(), check_result(), check_thread_instance(), check_wellknown_name(), checkChainPolicyStatus(), checkCRLHash(), CheckForGuestsAndAdmins(), checkHash(), CheckTestFile(), child_process(), ClassTest(), clean_up_aes_environment(), clean_up_base_environment(), cleanup_eventlog(), cleanup_gcc_dll(), cleanup_msvc_dll(), cleanup_tests(), clear_clipboard_(), clear_frontbuffer(), 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(), CloseProcess(), CloseProcessAndVerify_(), CloseSharedMemory(), closetest_callback(), BtrfsRecv::cmd_chmod(), BtrfsRecv::cmd_chown(), BtrfsRecv::cmd_clone(), cmd_copy(), 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_bitmap_bits_(), compare_emf_bits(), compare_export_(), compare_file_(), compare_mf_disk_bits(), compareStore(), CompleteFilename(), condvar_base_consumer(), condvar_consumer(), condvar_producer(), config_init(), ConfigurePortW(), 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(), CopySdbToAppPatch(), CopySystemProfile(), count_blocks(), CoWaitForMultipleHandles(), crash_and_debug(), crash_and_winedbg(), Create(), create_actctx(), create_and_write_file(), create_async_message_window(), create_avi_file(), create_backup(), create_bitmap_file(), create_cache_entry(), create_cdf_file(), create_converted_emf(), create_cookie_url(), 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_process(), create_req_file(), create_server(), create_server_process(), 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(), CreateInheritableDesktop(), CreateInheritableWinsta(), CreateJob(), CreateLogoffSecurityAttributes(), CreateMain(), CreateMemoryDialog(), CreatePerfWindows(), CreatePrinterFriendlyName(), CreateProcessAsUserA(), CreateProcessAsUserW(), CreateProcessInternalW(), CreateProfile(), CreateProfileMutex(), CreateServers(), CreateServiceThread(), CCabinet::CreateSimpleCabinet(), CreateSoundThread(), CreateStandardProfile(), CreateSymbolicLinkW(), CreateTempDir(), CreateTestDir(), CreateTestFile(), CreateUserEnvironment(), CreateUserProfileExW(), CreateWindowStationAndDesktops(), CredUIPromptForCredentialsW(), CriticalDeviceCoInstaller(), 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(), D3DReadFileToBlob(), d3dx_include_from_file_open(), ddraw_attach_d3d_device(), ddraw_set_cooperative_level(), debug_init(), debug_target_init_modules_info(), debugdataspaces_ReadVirtual(), 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(), DeleteFolder(), DeleteMonitorW(), DeletePortW(), DeletePrinterDriverExA(), DeletePrinterDriverExW(), DeleteProfileW(), DeleteSubst(), CChangeNotifyServer::DeliverNotification(), demClientErrorEx(), demFileDelete(), demFileFindFirst(), demFileFindNext(), DemLoadNTDOSKernel(), derive_key(), DestroyService(), detect_nt(), device_tests(), BtrfsVolPropSheet::DeviceDlgProc(), DeviceIdMatch(), DevInstallW(), DhcpCApiInitialize(), DisablePrivilege(), DisableTokenPrivileges(), DiskFreeMain(), DismountMain(), dispatch_rpc(), DispatcherThread(), display_error(), DisplayClassInstaller(), DisplayDeviceAdvancedProperties(), DisplayDevicePropertyText(), DisplayDns(), DisplayEntryPoint(), DisplayError(), DisplayPageSetDeviceDetails(), DisplayPendingOps(), DisplayStuffUsingWin32Setup(), 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(), do_request(), BtrfsDeviceResize::do_resize(), do_spawnT(), do_typelib_reg_key(), do_wait_idle_child(), DoAction8(), doChild(), doChildren(), DoControlService(), 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(), DoStartStartupItems(), DoStopService(), DosUnlockFile(), DosWriteFile(), DoTest(), dotest_spi_iconhorizontalspacing(), dotest_spi_iconverticalspacing(), DoTestComputerName(), DoTestEntry(), DoTypeFile(), DoUnregServer(), CVfdShExt::DoVfdDrop(), CVfdShExt::DoVfdProtect(), DownloadBSC_OnStopBinding(), downloadcb_OnStopBinding(), DPLAYX_ConstructData(), DrawDibBegin(), driver_load(), DrivesContextMenuCallback(), DrivesMain(), drop_window_therad(), dsm_RegisterWindowClasses(), DSoundRender_create(), dump_emf_records(), DumpFont(), DumpMemory(), DumpParams(), DwInitializeSdFromThreadToken(), elf_map_section(), empty_clipboard_thread(), CDeviceNode::EnableDevice(), EnableDevice(), EnablePrivilege(), EnablePrivilegeInCurrentProcess(), EnableThemeDialogTexture(), EnableUserModePnpManager(), encode_compare_base64_W(), encodeAndCompareBase64_A(), end_host_object(), Enum(), enum_thread(), EnumDepend(), EnumerateDevices(), EnumerateRecycleBinW(), EnumerateRunningServices(), EnumEventsThread(), EnumHotpluggedDevices(), EnumMonitorsA(), EnumMonitorsW(), EnumOLEVERB_Clone(), EnumPortsA(), EnumPortsW(), EnumPrinterDataExA(), EnumPrinterDriversA(), EnumPrinterDriversW(), EnumPrintersA(), EnumPrintersW(), EnumPrintProcessorsA(), EnumServices(), error(), Escape(), eto_emf_enum_proc(), CShellCommandDACL::Execute(), CShellCommandOwner::Execute(), CShellCommandSACL::Execute(), execute_command(), execute_test(), ExecuteAsync(), exercizeServer(), ExitWindowsThread(), ExitWindowsWorker(), export_validate_filename(), Extract(), extract2(), extract_gcc_dll(), extract_msvc_dll(), extract_one(), extract_resource(), extract_test(), CCabinet::ExtractFile(), ExtractFilesFromCab(), CZipExtract::ExtractSingle(), 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_service(), FillList(), FilterLoadUnload(), find_devices(), find_installed_ports(), find_local_server(), find_portinfo2(), find_tempfile(), FindCurrentDriver(), FindDfltProvRegVals(), FindFirstVolumeW(), CSendToMenu::FindItemFromIdOffset(), FinishNotificationThread(), SEALED_::FireEventOutsideApartmentAsync(), flush_proc(), FlushDns(), FmtAcquireDrive_(), FNFDINOTIFY(), 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_cache_path(), get_clipboard_data_process(), get_combobox_info(), get_computer_name(), get_connected_filter_name(), get_current_group(), get_current_owner(), get_device(), get_devmodeW(), 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_lock_error(), get_menu_style(), get_module_version(), 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(), CSearchBar::GetBandInfo(), CExplorerBand::GetBandInfo(), DriveVolume::GetBitmap(), GetBitmapPixelBuffer(), getChain(), GetClassInfoExA(), GetClassInfoExW(), DriveVolume::GetClusterInfo(), GetComputerNameA(), GetComputerNameExW(), GetComputerNameW(), GetComputerObjectNameW(), CSecurityDescriptor::GetDACLEntriesCount(), CSecurityDescriptor::GetDACLEntry(), GetDefaultPrinterA(), GetDefaultUserProfileDirectoryW(), GetDeviceCapabilities(), GetDeviceData(), getDeviceInterfaceDetail(), GetDeviceListInterfaces(), GetDiskFreeSpaceExW(), GetDiskGeometry(), GetDisplayName(), getdomainname(), GetDuplicateToken(), GetError(), GetFinalPathNameByHandleA(), GetFromToken(), GetFunctionPointer(), GetHardwareAndCompatibleIDsLists(), gethostbyaddr(), gethostbyname(), GetIFEntry(), GetIPSNMPInfo(), GetKeyName(), GetLastErrorText(), GetLineText(), GetListOfTestExes(), GetLocaleName(), GetLocalsplFuncs(), GetMonitorUI(), GetNameInfoW(), GetNumberOfExesInFolder(), BtrfsIconOverlay::GetOverlayInfo(), GetOwnerModuleFromPidEntry(), GetOwnerModuleFromTagEntry(), GetPathOfFile(), GetPortNameWithoutColon(), GetPrinterA(), GetPrinterDriverA(), GetPrinterDriverDirectoryW(), GetProcessToken(), GetProfilesDirectoryW(), GetProfileSize(), GetProfileType(), CSecurityDescriptor::GetSACLEntriesCount(), CSecurityDescriptor::GetSACLEntry(), GetServiceConfig(), GetServiceDescription(), GetServiceDllFunction(), GetServiceList(), GetServiceMainFunctions(), GetServices(), GetSetFileTimestamp(), GetSpoolssFunc(), GetStorageDirectory(), GetTdiEntityType(), GetTempFileNameW(), GetThemeBackgroundRegion(), GetThemeSysFont(), GetThemeTextMetrics(), GetThreadFromCurrentProcess(), GetTokenFromCurrentProcess(), 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_file(), 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(), I_ScQueryServiceTagInfo(), ICO_ExtractIconExW(), COpenWithMenu::IconToBitmap(), IDirectInputAImpl_RunControlPanel(), IDirectSoundCaptureBufferImpl_Start(), IdnToNameprepUnicode(), IEffectivePermission_fnGetEffectivePermission(), ImageSymToVa(), ImageView_Modify(), ImagingFactory_CreateBitmapFromHICON(), 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(), FxInterruptThreadpool::Initialize(), FxInterruptWaitblock::Initialize(), _MdTimer::Initialize(), BtrfsPropSheet::Initialize(), CFileSysEnum::Initialize(), CExplorerBand::InitializeExplorerBand(), InitializePnPManager(), InitializePortList(), InitializePrintMonitor2(), InitializePrintMonitorList(), InitializePrintProcessorList(), InitializeProfiles(), InitializeProgramFilesDir(), InitializeScreenSaver(), InitiateShutdownA(), InitiateSystemShutdownThread(), InitLogging(), InitPropertyBag_IPropertyBag_Read(), InitRappsConsole(), InitShellServices(), InputWait(), insendmessage_wnd_proc(), insert_menu_item(), install_assembly(), install_init(), install_policy(), InstallBuiltinAccounts(), InstallCurrentDriver(), InstallDevice(), InstallDeviceData(), InstallDevInstEx(), InstallEventSource(), InstallHinfSectionW(), InstallInfSections(), InstallLiveCD(), InstallNetDevice(), InstallNetworkComponent(), 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(), IntFixUpDevModeNames(), 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(), IsPrivilegeEnabled(), IsProcessRunning(), CShellDispatch::IsServiceRunning(), IStream_fnRead(), IStream_fnSeek(), IStream_fnWrite(), IsUserAdmin(), 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(), LaunchProcess(), 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(), LoadCodePageData(), LoadIconWithScaleDown(), COpenWithList::LoadInfo(), LoadModule(), LoadModuleWithSymbolsFullPath(), LoadPrinterDriver(), LoadRom(), LoadScreenSaverParameters(), SEALED_::LoadTypeLibrary(), LoadUserProfileW(), local_server_thread(), LocalEndDocPrinter(), LocalEnumPrintProcessorDatatypes(), LocalmonAddPortEx(), LocalmonDeletePort(), LocalmonGetPrinterDataFromPort(), LocalmonOpenPort(), LocalmonReadPort(), LocalmonSetPortTimeOuts(), LocalmonStartDocPort(), LocalmonWritePort(), LocalmonXcvOpenPort(), LocalOpenPrinter(), LocalReadPrinter(), LocalScheduleJob(), LocalStartDocPrinter(), localui_AddPortUI(), LocalWritePrinter(), LockOrUnlockVolume(), LogErrorConsole(), LogoffShutdownThread(), LogToFile(), LogWarningConsole(), LookupPrivilegeDisplayNameA(), LookupPrivilegeNameA(), LS_ThreadProc(), LsarStartRpcServer(), macho_map_file(), macho_map_range(), 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(), ATL::CAtlFileMappingBase::MapSharedMem(), MCIAVI_RegisterClass(), MCICDA_GetError(), MCICDA_GetStatus(), MCICDA_playLoop(), MCIWndRegisterClass(), menu_track_again_wnd_proc(), mi_show_error(), midiStreamPause(), midiStreamRestart(), MMDevEnum_RegisterEndpointNotificationCallback(), modify_menu(), monitor_enum_proc(), 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(), myAddPrinterDriverEx(), MySetFilePointerEx(), named_pipe_client_func(), NetApiBufferAllocate(), NetApiBufferReallocate(), NetClassInstaller(), netcon_secure_connect_setup(), netconn_create(), netconn_secure_connect(), netconn_verify_cert(), NetIDPage_OnApply(), NetRegisterDomainNameChangeNotification(), 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(), NlNetlogonMain(), NLS_EnumCalendarInfo(), no_stop_main(), notif_thread_proc(), NotificationThread(), NotifyLogon(), NPAddConnection3(), NPCancelConnection(), NtfsInfoMain(), ok_path(), ole_server(), OleRegEnumVerbs(), CSysPagerWnd::OnCreate(), OnCreate(), CShellLink::OnInitDialog(), CTrayWindow::OnNcHitTest(), OnOK(), OnSelChange(), OnShutDown(), OnTimer(), OnUpdate(), CZipExtract::CExtractSettingsPage::OnWizardNext(), 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(), OpenTokenFromProcess(), OpenUserEventLogFile(), OpenVolume(), output_formatstring(), output_message(), OutputError(), OutputErrorCode(), overlapped_server(), parse_url_from_outside(), ParseCmdAndExecute(), 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(), prepare_and_run_test(), print_condwait_status(), print_err(), PrintAttribute(), PrintDaclsOfFiles(), PrintDlgA(), PrintDlgW(), PrinterProperties(), PrintFileDacl(), PrintingThreadProc(), PrintLastError(), PrintRawJob(), PrintVolumeHeader(), printWindowsError(), priorityTimeProc(), Privilege(), process_pending_renames(), processFile(), ProcessPlayingNotes(), ProcessRunKeys(), ProcessRunOnceEx(), ProcessSetupInf(), ProcessStartupItems(), ProcessUnattendSection(), 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(), PSetupCreateMonitorInfo(), pSetupInstallCatalog(), pSetupOpenAndMapFileForRead(), PullPin_InitProcessing(), query_auth_schemes(), query_data_available(), query_dsym(), query_http_info(), query_image_section(), query_service_config(), QueryConfig(), QueryConfig2A(), QueryConfig2W(), CSendToMenu::QueryContextMenu(), CTrayWindowCtxMenu::QueryContextMenu(), QueryDescription(), QueryDeviceName(), QueryDNS(), QueryDriverInfo(), QueryMain(), QueryService(), QuerySpoolMode(), 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(), CPipe::Read(), read_data(), 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(), receive_response(), 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(), request_get_codepage(), request_receive(), request_send(), request_set_parameters(), request_wait(), res_sec_url_cmp(), BtrfsVolPropSheet::ResetStats(), ResetStatsW(), CAppInfoDisplay::ResizeChildren(), ResizeDeviceW(), ResizeTextConsole(), ATL::CRegObject::resource_register(), resource_register(), ResProtocol_Start(), CDirectoryWatcher::RestartWatching(), RestoreAllConnections(), 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(), RpcSsConfigureAsNetworkService(), rpcThreadMain(), Rs232ConfigurePortWin32(), Rs232OpenPortWin32(), Rs232ReadByteWin32(), Rs232SetCommunicationTimeoutsWin32(), Rs232WriteByteWin32(), run_apibuf_tests(), run_child_process(), run_cmd(), run_ex(), run_for_each_device(), run_from_file(), run_reg_exe_(), run_script(), run_script_file(), run_server(), run_spi_setmouse_test(), run_test(), run_tests(), run_thread(), runCmd(), RunInstallReactOS(), RunNextJob(), RunningAsSYSTEM(), SaBlob_CreateFromRecords(), SaBlob_Query(), SaBlob_WriteNameOrAlias(), Save(), save_credentials(), savedc_emf_enum_proc(), SaveDefaultUserHive(), SaveEventLog(), sc_cb_lseek(), ScConnectControlPipe(), SchedEventLogoff(), SchedServiceMain(), SchedStartShell(), ScmControlService(), ScmCreateNewControlPipe(), ScmEnableBackupRestorePrivileges(), ScmLogEvent(), ScmLogonService(), ScmReadString(), ScmSendStartCommand(), ScmStartUserModeService(), ScmWaitForLsa(), ScmWaitForServiceConnect(), ScreenSaverThreadMain(), ScServiceDispatcher(), SdbpGetLongPathName(), SdbUninstall(), SdSet(), SdShow(), SearchDriver(), send_http_request(), send_msg_thread(), send_msg_thread_2(), send_request(), send_socket_request(), send_subvol(), SendClientShutdown(), SendClipboardOwnerMessage(), CHttpClient::SendFile(), FxIrp::SendIrpSynchronously(), 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(), SetPortW(), SetPrivilege(), SetRootPath(), SetSecurityServicesEvent(), SETUP_CallInstaller(), SETUP_CreateDevicesList(), 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(), SHAddToRecentDocs(), SHCreateSessionKey(), SHCreateStreamOnFileEx(), SheChangeDirA(), SheChangeDirW(), SheGetDirA(), SheGetDirW(), shell_execute_ex_(), SHELL_ExecuteW(), ShellExecCmdLine(), SHEmptyRecycleBinA(), SHEmptyRecycleBinW(), SHNotifyCopyFileW(), SHNotifyCreateDirectoryW(), SHNotifyDeleteFileW(), SHNotifyMoveFileW(), SHNotifyRemoveDirectoryW(), SHOpenWithDialog(), BtrfsBalance::ShowBalance(), BtrfsVolPropSheet::ShowChangeDriveLetter(), ShowLastError(), ShowLastWin32Error(), ShowParallelStatus(), BtrfsVolPropSheet::ShowScrub(), ShowScrubW(), ShowUsage(), ShowX509EncodedCertificate(), SHPathPrepareForWriteW(), SHQueryRecycleBinA(), SHUnicodeToAnsiCP(), ShutDown_Hibernate(), ShutDown_LockComputer(), ShutDown_LogOffUser(), ShutDown_PowerOff(), ShutDown_Reboot(), ShutDown_StandBy(), SIC_Initialize(), SIC_OverlayShortcutImage(), SizeOfSector(), SoftModalMessageBox(), 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(), BtrfsBalance::StartBalance(), StartBalanceW(), StartChild(), StartComponentRegistration(), StartDevice(), StartDocDlgW(), StartDocPrinterA(), StartDocPrinterW(), StartDriver(), StartNotificationThread(), StartOneService(), StartProcess(), StartScreenSaver(), BtrfsScrub::StartScrub(), BtrfsSend::StartSend(), StartServicesManager(), StartStopEnumEventsThread(), StartSystemAudioServices(), StartSystemShutdown(), startup(), StatisticsMain(), Status(), statusclb_OnDataAvailable(), statusclb_OnStopBinding(), StatusDialogProc(), StatusMessageWindowProc(), StdMemAllocator_Free(), StgOpenStorage(), stop_service(), stop_service_dependents(), BtrfsBalance::StopBalance(), StopBalanceW(), StopDriver(), BtrfsScrub::StopScrub(), superblock_create(), SvcRegisterStopCallback(), SxsLookupClrGuid(), SyncOverlappedDeviceIoControl(), system(), system_time_to_minutes(), SystemClockPostMessageToAdviseThread(), SystemSetLocalTime(), 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_cached_manual(), test_basic_auth_credentials_different(), test_basic_auth_credentials_end_session(), test_basic_auth_credentials_manual(), 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_string(), test_cert_struct(), test_cert_struct_string(), 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_close(), test_CloseHandle(), test_ClosePort(), test_ClosePrinter(), Test_CloseWhileSelectDuplicatedSocket(), Test_CloseWhileSelectSameSocket(), test_cmdline(), test_CodePageToScriptID(), 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_device_list_ex(), 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_CryptBinaryToString(), 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_iface(), test_device_iface_detail(), test_device_info(), test_device_interface_key(), test_device_key(), test_devnode(), 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_dpi_context(), test_dpi_mapping(), test_dpi_window(), 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_EnableScrollBar(), 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_svc(), test_enum_value(), test_enum_vols(), test_EnumBuffer(), test_EnumColorProfilesA(), test_EnumColorProfilesW(), test_EnumDateFormatsA(), test_enumdesktops(), test_enumdisplaydevices_adapter(), 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_device_instance_id(), test_get_digest_stream(), test_get_displayname(), test_get_inf_class(), 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_GetBuffer(), 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_GetMenuItemRect(), 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_GetPointerType(), 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_GetTextFace(), test_GetTextMetrics2(), test_GetThreadExitCode(), test_GetThreadPreferredUILanguages(), test_GetThreadTimes(), test_GetTimeFormatA(), test_GetTimeFormatEx(), test_GetTimeZoneInformation(), test_GetTimeZoneInformationForYear(), test_GetTokenInformation(), test_GetUpdatedClipboardFormats(), test_GetUpdateRect(), test_GetUrlCacheConfigInfo(), 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_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_IInitializeSpy(), test_image_mapping(), test_Image_StretchMode(), 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_InitializePrintMonitor2(), test_initonce(), test_InitPathA(), test_Input_blackbox(), test_Input_mouse(), test_inputdesktop(), test_inputdesktop2(), test_InSendMessage(), test_install_class(), test_install_from(), 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_invalid_window(), 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_permissions(), test_keyboard_layout_name(), test_keyed_events(), test_KillOnJobClose(), test_large_content(), test_large_data_authentication(), test_layered_window(), test_LBS_NODATA(), 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_LoadImage_working_directory(), test_LoadImage_working_directory_run(), 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_metrics_for_dpi(), 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_NetFwAuthorizedApplication(), test_NhGetInterfaceNameFromDeviceGuid(), test_NhGetInterfaceNameFromGuid(), test_no_cache(), test_no_content(), test_no_headers(), test_no_stop(), test_nonalertable(), test_nonole_clipboard(), test_normal_imports(), test_not_modified(), test_note(), 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_class_key(), 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_OpenThemeData(), test_OpenThemeDataEx(), test_options(), test_ordinal_imports(), 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_ownerdraw(), 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_passport_auth(), 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_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_QueryServiceConfig2A(), Test_QueryServiceConfig2W(), test_QueueUserWorkItem(), test_quit_message(), Test_RawSize(), 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_reconnect(), 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_register_device_iface(), test_register_device_info(), test_RegisterClipboardFormatA(), test_registerDefaultOIDFunction(), test_registered_object_thread_affinity(), test_registerOIDFunction(), test_registerOIDInfo(), test_RegisterRawInputDevices(), test_RegisterWaitForSingleObject(), test_registry(), test_registry_property_a(), test_registry_property_w(), 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_request_path_escapes(), 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_RtlQueryTimeZoneInformation(), 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_SectionContents(), 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_sequence(), test_service(), test_servicenotify(), test_Session(), test_session_info(), Test_Set(), test_set_clipboard_DRAWCLIPBOARD(), test_set_coop(), test_set_count(), 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_SetMenu(), test_SetMetaFileBits(), Test_SetPixel_PAL(), test_setpixelformat(), test_SetScrollPos(), 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_SetupDiGetClassDescriptionA(), test_SetupDiGetClassDevsA(), test_SetupDiInstallClassExA(), test_SetupDiOpenClassRegKeyExA(), test_SetupDuplicateDiskSpaceListA(), test_SetupDuplicateDiskSpaceListW(), test_SetupGetInfInformation(), test_SetupGetSourceFileLocation(), test_SetupInstallServicesFromInfSectionExA(), test_SetupInstallServicesFromInfSectionExW(), test_SetupLogError(), test_SetupQueryDrivesInDiskSpaceListA(), test_SetupQuerySpaceRequiredOnDriveA(), test_SetupQuerySpaceRequiredOnDriveW(), test_SetupUninstallOEMInf(), test_SetWindowLong(), test_SetWindowPos(), 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_subclass(), test_subpopup_locked_by_menu(), test_successive_HttpSendRequest(), test_SuspendThread(), test_swap_control(), test_SxsLookupClrGuid(), test_SymFromAddr(), test_SymRegCallback(), 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_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_WICCreateBitmapFromSectionEx(), test_widenpath(), test_window_classes(), test_window_dc(), test_winevents(), test_WinHttpAddHeaders(), test_WinHttpDetectAutoProxyConfigUrl(), test_WinHttpGetIEProxyConfigForCurrentUser(), test_WinHttpGetProxyForUrl(), test_WinHttpOpenRequest(), test_WinHttpQueryOption(), test_WinHttpSendRequest(), 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_notify(), test_wm_notifyformat(), 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_WTSQuerySessionInformationW(), test_WTSQueryUserToken(), 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(), testCertEnumSystemStore(), testCertOpenSystemStore(), testCertProperties(), testCertRegisterSystemStore(), testCertSigs(), TestClassRedirection(), testCloseStore(), testCollectionStore(), testCompareCertName(), testComparePublicKeyInfo(), testCreateCert(), testCreateCertChainEngine(), testCreateCRL(), testCreateCTL(), testCreateSelfSignCert(), testCRLProperties(), testCryptHashCert(), testCTLProperties(), testCtrlHandler(), testCursor(), testCursorInfo(), testDupCert(), testEmptyStore(), TestEntry(), TestEnumFontFamilies(), testExportPublicKey(), TestFileFsDeviceInformation(), testFileNameStore(), testFileStore(), testFindCert(), testFindCertInCRL(), testFindCRL(), testGetCertChain(), TestGetComputerNameEx(), testGetComputerObjectNameA(), testGetComputerObjectNameW(), testGetCRLFromStore(), TestGetCurrentDirectoryA(), TestGetCurrentDirectoryW(), testGetIssuerCert(), testGetModuleFileName(), testGetModuleHandleEx(), testGetProcAddress_Wrong(), testGetPublicKeyLength(), testGetSubjectCert(), testGetUserNameExA(), testGetUserNameExW(), TestGetUserObjectInfoW(), testGetValidUsages(), TestGetVolumeInformationA(), TestGetVolumeInformationW(), TestGlobalLockNUnlock(), testHashPublicKeyInfo(), testHashToBeSigned(), testIcmpSendEcho(), testImportPublicKey(), testInit(), testIntendedKeyUsage(), testIsRDNAttrsInCertificateName(), testIsValidCRLForCert(), testKeyUsage(), TestKM(), TestKs(), TestLibDependency(), testLinkCert(), testLoadLibraryA(), testLoadLibraryA_Wrong(), testLoadLibraryEx(), TestManualInstantiation(), testMemStore(), testMessageStore(), TestMyEventProvider(), testNotifyAddrChange(), TestPrivMoveFileIdentityW(), TestRead(), TestRecursiveInterThreadMessages(), testRegStore(), testRegStoreSavedCerts(), TestReturnValues(), testScreenBuffer(), testScroll(), testSerializedStore(), TestSetAndGetExtraFormat(), testSetupDiGetClassDevsA(), 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(), CDownloadManager::ThreadFunc(), 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(), TV1_GetDependants(), TV2_GetDependants(), TV2_HasDependantServices(), UDFPhReadSynchronous(), UDFPhSendIOCTL(), UDFPhWriteSynchronous(), UManStartDlg(), 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(), FxInterruptThreadpool::UpdateThreadPoolThreadLimits(), urlcache_delete_file(), User32CreateWindowEx(), UsermodeMethod(), UserpShowInformationBalloon(), utf16_to_utf8(), utf8_to_utf16(), Utf8Convert_(), UXTHEME_DrawBackgroundFill(), UXTHEME_DrawBorderRectangle(), UXTHEME_DrawImageBackground(), UXTHEME_DrawImageGlyph(), UXTHEME_LoadImage(), UXTHEME_LoadTheme(), UXTHEME_SetWindowProperty(), validate_default_security_descriptor(), validate_impersonation_token(), validate_signature(), 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(), W32TmServiceMain(), 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(), winhttp_request_get_Status(), winhttp_request_get_StatusText(), winhttp_request_GetAllResponseHeaders(), winhttp_request_GetResponseHeader(), winhttp_request_Open(), winhttp_request_Send(), winhttp_request_SetCredentials(), winhttp_request_SetRequestHeader(), 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_data(), write_file(), write_manifest(), write_post_stream(), write_raw_file(), write_to_file(), write_watch_thread(), WriteFileEx_Remixer(), WriteJobShadowFile(), WriteMinidump(), WritePrinter(), WriteSdbFile(), 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(), WTSQuerySessionInformationW(), wWinMain(), XCOPY_CreateDirectory(), XCOPY_DoCopy(), XCOPY_FailMessage(), XCOPY_LoadMessage(), XCOPY_ProcessDestParm(), XCOPY_ProcessSourceParm(), XCOPY_wprintf(), and YGetPrinterDriver2().

◆ IsBadCodePtr()

BOOL NTAPI IsBadCodePtr ( FARPROC  lpfn)

Definition at line 870 of file except.c.

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

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

◆ IsBadHugeReadPtr()

BOOL NTAPI IsBadHugeReadPtr ( LPCVOID  lp,
UINT_PTR  ucb 
)

Definition at line 858 of file except.c.

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

◆ IsBadHugeWritePtr()

BOOL NTAPI IsBadHugeWritePtr ( IN LPVOID  lp,
IN UINT_PTR  ucb 
)

Definition at line 936 of file except.c.

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

◆ IsBadReadPtr()

BOOL WINAPI IsBadReadPtr ( IN LPCVOID  lp,
IN UINT_PTR  ucb 
)

Definition at line 803 of file except.c.

805 {
806  ULONG PageSize;
807  BOOLEAN Result = FALSE;
808  volatile CHAR *Current;
809  PCHAR Last;
810 
811  /* Quick cases */
812  if (!ucb) return FALSE;
813  if (!lp) return TRUE;
814 
815  /* Get the page size */
817 
818  /* Calculate start and end */
819  Current = (volatile CHAR*)lp;
820  Last = (PCHAR)((ULONG_PTR)lp + ucb - 1);
821 
822  /* Another quick failure case */
823  if (Last < Current) return TRUE;
824 
825  /* Enter SEH */
826  _SEH2_TRY
827  {
828  /* Do an initial probe */
829  *Current;
830 
831  /* Align the addresses */
832  Current = (volatile CHAR *)ALIGN_DOWN_POINTER_BY(Current, PageSize);
833  Last = (PCHAR)ALIGN_DOWN_POINTER_BY(Last, PageSize);
834 
835  /* Probe the entire range */
836  while (Current != Last)
837  {
838  Current += PageSize;
839  *Current;
840  }
841  }
843  {
844  /* We hit an exception, so return true */
845  Result = TRUE;
846  }
847  _SEH2_END
848 
849  /* Return exception status */
850  return Result;
851 }
signed char * PCHAR
Definition: retypes.h:7
PBASE_STATIC_SERVER_DATA BaseStaticServerData
Definition: dllmain.c:19
#define TRUE
Definition: types.h:120
char CHAR
Definition: xmlstorage.h:175
_SEH2_TRY
Definition: create.c:4226
uint32_t ULONG_PTR
Definition: typedefs.h:65
#define FALSE
Definition: types.h:117
unsigned char BOOLEAN
_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
SYSTEM_BASIC_INFORMATION SysInfo
Definition: base.h:122
#define PCHAR
Definition: match.c:90
#define EXCEPTION_EXECUTE_HANDLER
Definition: excpt.h:85
_SEH2_END
Definition: create.c:4400
unsigned int ULONG
Definition: retypes.h:1
#define _SEH2_EXCEPT(...)
Definition: pseh2_64.h:40
#define ALIGN_DOWN_POINTER_BY(ptr, align)
Definition: umtypes.h:82

Referenced by connect(), DrawThemeParentBackground(), FBadColumnSet(), FBadEntryList(), FBadProp(), FBadRglpszA(), FBadRglpszW(), FBadRow(), FBadRowSet(), 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().

◆ IsBadStringPtrA()

BOOL NTAPI IsBadStringPtrA ( IN LPCSTR  lpsz,
IN UINT_PTR  ucchMax 
)

Definition at line 987 of file except.c.

989 {
990  BOOLEAN Result = FALSE;
991  volatile CHAR *Current;
992  PCHAR Last;
993  CHAR Char;
994 
995  /* Quick cases */
996  if (!ucchMax) return FALSE;
997  if (!lpsz) return TRUE;
998 
999  /* Calculate start and end */
1000  Current = (volatile CHAR*)lpsz;
1001  Last = (PCHAR)((ULONG_PTR)lpsz + ucchMax - 1);
1002 
1003  /* Enter SEH */
1004  _SEH2_TRY
1005  {
1006  /* Probe the entire range */
1007  Char = *Current++;
1008  while ((Char) && (Current != Last)) Char = *Current++;
1009  }
1011  {
1012  /* We hit an exception, so return true */
1013  Result = TRUE;
1014  }
1015  _SEH2_END
1016 
1017  /* Return exception status */
1018  return Result;
1019 }
signed char * PCHAR
Definition: retypes.h:7
#define TRUE
Definition: types.h:120
char CHAR
Definition: xmlstorage.h:175
_SEH2_TRY
Definition: create.c:4226
uint32_t ULONG_PTR
Definition: typedefs.h:65
#define FALSE
Definition: types.h:117
unsigned char BOOLEAN
_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
#define PCHAR
Definition: match.c:90
#define EXCEPTION_EXECUTE_HANDLER
Definition: excpt.h:85
_SEH2_END
Definition: create.c:4400
#define _SEH2_EXCEPT(...)
Definition: pseh2_64.h:40

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

◆ IsBadStringPtrW()

BOOL NTAPI IsBadStringPtrW ( IN LPCWSTR  lpsz,
IN UINT_PTR  ucchMax 
)

Definition at line 948 of file except.c.

950 {
951  BOOLEAN Result = FALSE;
952  volatile WCHAR *Current;
953  PWCHAR Last;
954  WCHAR Char;
955 
956  /* Quick cases */
957  if (!ucchMax) return FALSE;
958  if (!lpsz) return TRUE;
959 
960  /* Calculate start and end */
961  Current = (volatile WCHAR*)lpsz;
962  Last = (PWCHAR)((ULONG_PTR)lpsz + (ucchMax * 2) - 2);
963 
964  /* Enter SEH */
965  _SEH2_TRY
966  {
967  /* Probe the entire range */
968  Char = *Current++;
969  while ((Char) && (Current != Last)) Char = *Current++;
970  }
972  {
973  /* We hit an exception, so return true */
974  Result = TRUE;
975  }
976  _SEH2_END
977 
978  /* Return exception status */
979  return Result;
980 }
#define TRUE
Definition: types.h:120
uint16_t * PWCHAR
Definition: typedefs.h:56
_SEH2_TRY
Definition: create.c:4226
uint32_t ULONG_PTR
Definition: typedefs.h:65
#define FALSE
Definition: types.h:117
unsigned char BOOLEAN
_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
__wchar_t WCHAR
Definition: xmlstorage.h:180
#define EXCEPTION_EXECUTE_HANDLER
Definition: excpt.h:85
_SEH2_END
Definition: create.c:4400
#define _SEH2_EXCEPT(...)
Definition: pseh2_64.h:40

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

◆ IsBadWritePtr()

BOOL NTAPI IsBadWritePtr ( IN LPVOID  lp,
IN UINT_PTR  ucb 
)

Definition at line 881 of file except.c.

883 {
884  ULONG PageSize;
885  BOOLEAN Result = FALSE;
886  volatile CHAR *Current;
887  PCHAR Last;
888 
889  /* Quick cases */
890  if (!ucb) return FALSE;
891  if (!lp) return TRUE;
892 
893  /* Get the page size */
895 
896  /* Calculate start and end */
897  Current = (volatile CHAR*)lp;
898  Last = (PCHAR)((ULONG_PTR)lp + ucb - 1);
899 
900  /* Another quick failure case */
901  if (Last < Current) return TRUE;
902 
903  /* Enter SEH */
904  _SEH2_TRY
905  {
906  /* Do an initial probe */
907  *Current = *Current;
908 
909  /* Align the addresses */
910  Current = (volatile CHAR *)ALIGN_DOWN_POINTER_BY(Current, PageSize);
911  Last = (PCHAR)ALIGN_DOWN_POINTER_BY(Last, PageSize);
912 
913  /* Probe the entire range */
914  while (Current != Last)
915  {
916  Current += PageSize;
917  *Current = *Current;
918  }
919  }
921  {
922  /* We hit an exception, so return true */
923  Result = TRUE;
924  }
925  _SEH2_END
926 
927  /* Return exception status */
928  return Result;
929 }
signed char * PCHAR
Definition: retypes.h:7
PBASE_STATIC_SERVER_DATA BaseStaticServerData
Definition: dllmain.c:19
#define TRUE
Definition: types.h:120
char CHAR
Definition: xmlstorage.h:175
_SEH2_TRY
Definition: create.c:4226
uint32_t ULONG_PTR
Definition: typedefs.h:65
#define FALSE
Definition: types.h:117
unsigned char BOOLEAN
_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
SYSTEM_BASIC_INFORMATION SysInfo
Definition: base.h:122
#define PCHAR
Definition: match.c:90
#define EXCEPTION_EXECUTE_HANDLER
Definition: excpt.h:85
_SEH2_END
Definition: create.c:4400
unsigned int ULONG
Definition: retypes.h:1
#define _SEH2_EXCEPT(...)
Definition: pseh2_64.h:40
#define ALIGN_DOWN_POINTER_BY(ptr, align)
Definition: umtypes.h:82

Referenced by DPA_Merge(), GetOwnerModuleFromPidEntry(), GetOwnerModuleFromTagEntry(), Imm32ProcessRequest(), 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_EnumBuffer(), test_GetBuffer(), test_IsBadWritePtr(), TEST_MemoryWrite(), UnProtect::UnProtect(), UrlHashA(), UrlHashW(), WSALookupServiceBeginW(), WSALookupServiceNextA(), and WSALookupServiceNextW().

◆ PrintStackTrace()

static VOID PrintStackTrace ( IN PEXCEPTION_POINTERS  ExceptionInfo)
static

Definition at line 93 of file except.c.

94 {
95  PVOID StartAddr;
96  CHAR szMod[128] = "", *szModFile;
97  PEXCEPTION_RECORD ExceptionRecord = ExceptionInfo->ExceptionRecord;
98  PCONTEXT ContextRecord = ExceptionInfo->ContextRecord;
99 
100  /* Print a stack trace */
101  DbgPrint("Unhandled exception\n");
102  DbgPrint("ExceptionCode: %8x\n", ExceptionRecord->ExceptionCode);
103 
104  if (ExceptionRecord->ExceptionCode == STATUS_ACCESS_VIOLATION &&
105  ExceptionRecord->NumberParameters == 2)
106  {
107  DbgPrint("Faulting Address: %8x\n", ExceptionRecord->ExceptionInformation[1]);
108  }
109 
110  /* Trace the wine special error and show the modulename and functionname */
111  if (ExceptionRecord->ExceptionCode == 0x80000100 /* EXCEPTION_WINE_STUB */ &&
112  ExceptionRecord->NumberParameters == 2)
113  {
114  DbgPrint("Missing function: %s!%s\n", (PSZ)ExceptionRecord->ExceptionInformation[0], (PSZ)ExceptionRecord->ExceptionInformation[1]);
115  }
116 
118  _module_name_from_addr(ExceptionRecord->ExceptionAddress, &StartAddr, szMod, sizeof(szMod), &szModFile);
119  DbgPrint("Address:\n<%s:%x> (%s@%x)\n",
120  szModFile,
121  (ULONG_PTR)ExceptionRecord->ExceptionAddress - (ULONG_PTR)StartAddr,
122  szMod,
123  StartAddr);
124 #ifdef _M_IX86
125  DbgPrint("Frames:\n");
126 
127  _SEH2_TRY
128  {
129  UINT i;
130  PULONG Frame = (PULONG)ContextRecord->Ebp;
131 
132  for (i = 0; Frame[1] != 0 && Frame[1] != 0xdeadbeef && i < 128; i++)
133  {
134  if (IsBadReadPtr((PVOID)Frame[1], 4))
135  {
136  DbgPrint("<%s:%x>\n", "[invalid address]", Frame[1]);
137  }
138  else
139  {
140  _module_name_from_addr((const void*)Frame[1], &StartAddr,
141  szMod, sizeof(szMod), &szModFile);
142  DbgPrint("<%s:%x> (%s@%x)\n",
143  szModFile,
144  (ULONG_PTR)Frame[1] - (ULONG_PTR)StartAddr,
145  szMod,
146  StartAddr);
147  }
148 
149  if (IsBadReadPtr((PVOID)Frame[0], sizeof(*Frame) * 2))
150  break;
151 
152  Frame = (PULONG)Frame[0];
153  }
154  }
156  {
157  DbgPrint("<error dumping stack trace: 0x%x>\n", _SEH2_GetExceptionCode());
158  }
159  _SEH2_END;
160 #endif
161 }
#define DbgPrint
Definition: hal.h:12
char CHAR
Definition: xmlstorage.h:175
static VOID _dump_context(PCONTEXT pc)
Definition: except.c:59
PVOID ExceptionAddress
Definition: compat.h:211
_SEH2_TRY
Definition: create.c:4226
uint32_t ULONG_PTR
Definition: typedefs.h:65
DWORD ExceptionCode
Definition: compat.h:208
ULONG_PTR ExceptionInformation[EXCEPTION_MAXIMUM_PARAMETERS]
Definition: compat.h:213
#define EXCEPTION_EXECUTE_HANDLER
Definition: excpt.h:85
#define for
Definition: utility.h:88
char * PSZ
Definition: windef.h:57
_IRQL_requires_same_ _In_ PVOID _Inout_ struct _CONTEXT * ContextRecord
Definition: ntbasedef.h:654
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:210
_SEH2_END
Definition: create.c:4400
GLsizei GLenum const GLvoid GLsizei GLenum GLbyte GLbyte GLbyte GLdouble GLdouble GLdouble GLfloat GLfloat GLfloat GLint GLint GLint GLshort GLshort GLshort GLubyte GLubyte GLubyte GLuint GLuint GLuint GLushort GLushort GLushort GLbyte GLbyte GLbyte GLbyte GLdouble GLdouble GLdouble GLdouble GLfloat GLfloat GLfloat GLfloat GLint GLint GLint GLint GLshort GLshort GLshort GLshort GLubyte GLubyte GLubyte GLubyte GLuint GLuint GLuint GLuint GLushort GLushort GLushort GLushort GLboolean const GLdouble const GLfloat const GLint const GLshort const GLbyte const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLdouble const GLfloat const GLfloat const GLint const GLint const GLshort const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort GLenum GLenum GLenum GLfloat GLenum GLint GLenum GLenum GLenum GLfloat GLenum GLenum GLint GLenum GLfloat GLenum GLint GLint GLushort GLenum GLenum GLfloat GLenum GLenum GLint GLfloat const GLubyte GLenum GLenum GLenum const GLfloat GLenum GLenum const GLint GLenum GLint GLint GLsizei GLsizei GLint GLenum GLenum const GLvoid GLenum GLenum const GLfloat GLenum GLenum const GLint GLenum GLenum const GLdouble GLenum GLenum const GLfloat GLenum GLenum const GLint GLsizei GLuint GLfloat GLuint GLbitfield GLfloat GLint GLuint GLboolean GLenum GLfloat GLenum GLbitfield GLenum GLfloat GLfloat GLint GLint const GLfloat GLenum GLfloat GLfloat GLint GLint GLfloat GLfloat GLint GLint const GLfloat GLint GLfloat GLfloat GLint GLfloat GLfloat GLint GLfloat GLfloat const GLdouble const GLfloat const GLdouble const GLfloat GLint i
Definition: glfuncs.h:248
#define STATUS_ACCESS_VIOLATION
Definition: ntstatus.h:242
BOOL WINAPI IsBadReadPtr(IN LPCVOID lp, IN UINT_PTR ucb)
Definition: except.c:803
unsigned int * PULONG
Definition: retypes.h:1
unsigned int UINT
Definition: ndis.h:50
#define _SEH2_EXCEPT(...)
Definition: pseh2_64.h:40
#define _SEH2_GetExceptionCode()
Definition: pseh2_64.h:165
DWORD NumberParameters
Definition: compat.h:212

Referenced by UnhandledExceptionFilter().

◆ RaiseException()

VOID WINAPI RaiseException ( IN DWORD  dwExceptionCode,
IN DWORD  dwExceptionFlags,
IN DWORD  nNumberOfArguments,
IN CONST ULONG_PTR *lpArguments  OPTIONAL 
)

Definition at line 700 of file except.c.

704 {
705  EXCEPTION_RECORD ExceptionRecord;
706 
707  /* Setup the exception record */
708  ExceptionRecord.ExceptionCode = dwExceptionCode;
709  ExceptionRecord.ExceptionRecord = NULL;
710  ExceptionRecord.ExceptionAddress = (PVOID)RaiseException;
711  ExceptionRecord.ExceptionFlags = dwExceptionFlags & EXCEPTION_NONCONTINUABLE;
712 
713  /* Check if we have arguments */
714  if (!lpArguments)
715  {
716  /* We don't */
717  ExceptionRecord.NumberParameters = 0;
718  }
719  else
720  {
721  /* We do, normalize the count */
722  if (nNumberOfArguments > EXCEPTION_MAXIMUM_PARAMETERS)
723  nNumberOfArguments = EXCEPTION_MAXIMUM_PARAMETERS;
724 
725  /* Set the count of parameters and copy them */
726  ExceptionRecord.NumberParameters = nNumberOfArguments;
727  RtlCopyMemory(ExceptionRecord.ExceptionInformation,
728  lpArguments,
729  nNumberOfArguments * sizeof(ULONG));
730  }
731 
732  /* Better handling of Delphi Exceptions... a ReactOS Hack */
733  if (dwExceptionCode == 0xeedface || dwExceptionCode == 0xeedfade)
734  {
735  DPRINT1("Delphi Exception at address: %p\n", ExceptionRecord.ExceptionInformation[0]);
736  DPRINT1("Exception-Object: %p\n", ExceptionRecord.ExceptionInformation[1]);
737  DPRINT1("Exception text: %lx\n", ExceptionRecord.ExceptionInformation[2]);
738  }
739 
740  /* Raise the exception */
741  RtlRaiseException(&ExceptionRecord);
742 }
VOID NTAPI RtlRaiseException(IN PEXCEPTION_RECORD ExceptionRecord)
Definition: except.c:18
#define EXCEPTION_NONCONTINUABLE
Definition: rtltypes.h:154
#define EXCEPTION_MAXIMUM_PARAMETERS
Definition: compat.h:206
PVOID ExceptionAddress
Definition: compat.h:211
DWORD ExceptionCode
Definition: compat.h:208
void * PVOID
Definition: retypes.h:9
ULONG_PTR ExceptionInformation[EXCEPTION_MAXIMUM_PARAMETERS]
Definition: compat.h:213
struct _EXCEPTION_RECORD * ExceptionRecord
Definition: compat.h:210
VOID WINAPI RaiseException(IN DWORD dwExceptionCode, IN DWORD dwExceptionFlags, IN DWORD nNumberOfArguments, IN CONST ULONG_PTR *lpArguments OPTIONAL)
Definition: except.c:700
#define NULL
Definition: types.h:112
#define DPRINT1
Definition: precomp.h:8
unsigned int ULONG
Definition: retypes.h:1
DWORD ExceptionFlags
Definition: compat.h:209
#define RtlCopyMemory(Destination, Source, Length)
Definition: typedefs.h:263
DWORD NumberParameters
Definition: compat.h:212

Referenced by __delayLoadHelper2(), __ExceptionPtrRethrow(), _CxxThrowException(), _invalid_parameter(), addtwo(), CHString::AllocBuffer(), CHString::AllocCopy(), CHString::AssignCopy(), ATL::AtlThrowImp(), callback_exception(), CLIPFORMAT_UserMarshal(), CLIPFORMAT_UserSize(), CLIPFORMAT_UserUnmarshal(), CHString::ConcatCopy(), CHString::ConcatInPlace(), DEFINE_TEST(), dojump(), except1(), FlsCallback3(), handle_UserMarshal(), handle_UserSize(), handle_UserUnmarshal(), HBITMAP_UserUnmarshal(), HENHMETAFILE_UserUnmarshal(), HGLOBAL_UserUnmarshal(), HMETAFILE_UserUnmarshal(), LogToFile(), main(), notify_DllMain(), notify_TlsCallback(), OutputDebugStringA(), RpcRaiseException(), rtlRaiseExceptin(), rtlRaiseException(), rtlRaiseExcpt(), rtlRaiseStatus(), ShellExecCmdLine(), STGMEDIUM_UserFree(), 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().

◆ SetErrorMode()

UINT WINAPI SetErrorMode ( IN UINT  uMode)

Definition at line 749 of file except.c.

750 {
751  UINT PrevErrMode, NewMode;
752 
753  /* Get the previous mode */
754  PrevErrMode = GetErrorMode();
755  NewMode = uMode;
756 
757  /* Check if failing critical errors was requested */
758  if (NewMode & SEM_FAILCRITICALERRORS)
759  {
760  /* Mask it out, since the native API works differently */
761  NewMode &= ~SEM_FAILCRITICALERRORS;
762  }
763  else
764  {
765  /* OR it if the caller didn't, due to different native semantics */
766  NewMode |= SEM_FAILCRITICALERRORS;
767  }
768 
769  /* Always keep no alignment faults if they were set */
770  NewMode |= (PrevErrMode & SEM_NOALIGNMENTFAULTEXCEPT);
771 
772  /* Set the new mode */
775  (PVOID)&NewMode,
776  sizeof(NewMode));
777 
778  /* Return the previous mode */
779  return PrevErrMode;
780 }
#define SEM_FAILCRITICALERRORS
Definition: rtltypes.h:69
#define SEM_NOALIGNMENTFAULTEXCEPT
Definition: rtltypes.h:71
UINT WINAPI GetErrorMode(VOID)
Definition: except.c:230
#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:1105
unsigned int UINT
Definition: ndis.h:50

Referenced by _seterrormode(), _tWinMain(), APIHook_LoadLibraryA(), APIHook_LoadLibraryExA(), APIHook_LoadLibraryExW(), APIHook_LoadLibraryW(), 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().

◆ SetLastError()

VOID WINAPI SetLastError ( IN DWORD  dwErrCode)

Definition at line 1026 of file except.c.

1027 {
1028  /* Break if a debugger requested checking for this error code */
1029  if ((g_dwLastErrorToBreakOn) && (g_dwLastErrorToBreakOn == dwErrCode)) DbgBreakPoint();
1030 
1031  /* Set last error if it's a new error */
1032  if (NtCurrentTeb()->LastErrorValue != dwErrCode) NtCurrentTeb()->LastErrorValue = dwErrCode;
1033 }
DWORD g_dwLastErrorToBreakOn
Definition: except.c:166
VOID NTAPI DbgBreakPoint(VOID)
FORCEINLINE struct _TEB * NtCurrentTeb(VOID)
Definition: psfuncs.h:420

◆ SetUnhandledExceptionFilter()

LPTOP_LEVEL_EXCEPTION_FILTER WINAPI DECLSPEC_HOTPATCH SetUnhandledExceptionFilter ( IN LPTOP_LEVEL_EXCEPTION_FILTER  lpTopLevelExceptionFilter)

Definition at line 788 of file except.c.

789 {
790  PVOID EncodedPointer, EncodedOldPointer;
791 
792  EncodedPointer = RtlEncodePointer(lpTopLevelExceptionFilter);
794  EncodedPointer);
795  return RtlDecodePointer(EncodedOldPointer);
796 }
NTSYSAPI PVOID WINAPI RtlEncodePointer(PVOID)
#define InterlockedExchangePointer(Target, Value)
Definition: dshow.h:45
LPTOP_LEVEL_EXCEPTION_FILTER GlobalTopLevelExceptionFilter
Definition: except.c:165
NTSYSAPI PVOID WINAPI RtlDecodePointer(PVOID)

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

◆ UnhandledExceptionFilter()

LONG WINAPI UnhandledExceptionFilter ( IN PEXCEPTION_POINTERS  ExceptionInfo)

Definition at line 269 of file except.c.

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

Referenced by __declspec(), and BaseProcessStartup().

Variable Documentation

◆ g_dwLastErrorToBreakOn

DWORD g_dwLastErrorToBreakOn

Definition at line 166 of file except.c.

Referenced by SetLastError().

◆ GlobalTopLevelExceptionFilter

LPTOP_LEVEL_EXCEPTION_FILTER GlobalTopLevelExceptionFilter

Definition at line 165 of file except.c.

Referenced by DllMain(), SetUnhandledExceptionFilter(), and UnhandledExceptionFilter().