Source code of Windows XP (NT5)
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

95 lines
3.3 KiB

  1. #ifndef _EXCLUDES_H_
  2. #define _EXCLUDES_H_
  3. /*++
  4. This file lists some of the APIs we need to exclude from the stack swapping
  5. system. It can be modified to include any API that uses no stack, or a that
  6. otherwise crashes.
  7. Note that since the wildcards catch all exports, not just APIs, variable
  8. names need to be included in this list.
  9. --*/
  10. struct FNEXCLUDE
  11. {
  12. char *pszModule; // Module name
  13. char *pszFnName; // Function name
  14. };
  15. FNEXCLUDE Excludes[] =
  16. {
  17. {"KERNEL32.DLL", "EnterCriticalSection"},
  18. {"KERNEL32.DLL", "LeaveCriticalSection"},
  19. {"KERNEL32.DLL", "InitializeCriticalSection"},
  20. {"KERNEL32.DLL", "DeleteCriticalSection"},
  21. {"KERNEL32.DLL", "HeapAlloc"},
  22. {"KERNEL32.DLL", "HeapFree"},
  23. {"KERNEL32.DLL", "HeapReAlloc"},
  24. {"KERNEL32.DLL", "HeapSize"},
  25. {"KERNEL32.DLL", "VirtualAlloc"},
  26. {"KERNEL32.DLL", "VirtualAllocEx"},
  27. {"KERNEL32.DLL", "VirtualBufferExceptionHandler"},
  28. {"KERNEL32.DLL", "VirtualFree"},
  29. {"KERNEL32.DLL", "VirtualFreeEx"},
  30. {"KERNEL32.DLL", "VirtualLock"},
  31. {"KERNEL32.DLL", "VirtualProtect"},
  32. {"KERNEL32.DLL", "VirtualProtectEx"},
  33. {"KERNEL32.DLL", "VirtualQuery"},
  34. {"KERNEL32.DLL", "VirtualQueryEx"},
  35. {"KERNEL32.DLL", "VirtualUnlock"},
  36. {"KERNEL32.DLL", "WaitForSingleObject"},
  37. {"KERNEL32.DLL", "WaitForSingleObjectEx"},
  38. {"KERNEL32.DLL", "WaitForMultipleObjects"},
  39. {"KERNEL32.DLL", "WaitForMultipleObjectsEx"},
  40. {"KERNEL32.DLL", "LoadLibraryA"},
  41. {"KERNEL32.DLL", "LoadLibraryExA"},
  42. {"KERNEL32.DLL", "LoadLibraryExW"},
  43. {"KERNEL32.DLL", "LoadLibraryW"},
  44. {"KERNEL32.DLL", "GetProcessHeap"},
  45. {"KERNEL32.DLL", "GetProcAddress"},
  46. {"KERNEL32.DLL", "CreateThread"},
  47. {"KERNEL32.DLL", "ExitThread"},
  48. {"KERNEL32.DLL", "TerminateThread"},
  49. {"USER32.DLL", "PostThreadMessageA"},
  50. {"USER32.DLL", "PostThreadMessageW"},
  51. {"GDI32.DLL", "XFORMOBJ_bApplyXform"},
  52. {"GDI32.DLL", "XFORMOBJ_iGetXform"},
  53. {"GDI32.DLL", "XLATEOBJ_cGetPalette"},
  54. {"GDI32.DLL", "XLATEOBJ_hGetColorTransform"},
  55. {"GDI32.DLL", "XLATEOBJ_iXlate"},
  56. {"GDI32.DLL", "XLATEOBJ_piVector"},
  57. {"GDI32.DLL", "STROBJ_bEnum"},
  58. {"GDI32.DLL", "STROBJ_bEnumPositionsOnly"},
  59. {"GDI32.DLL", "STROBJ_bGetAdvanceWidths"},
  60. {"GDI32.DLL", "STROBJ_dwGetCodePage"},
  61. {"GDI32.DLL", "STROBJ_vEnumStart"},
  62. {"GDI32.DLL", "PATHOBJ_bEnum"},
  63. {"GDI32.DLL", "PATHOBJ_bEnumClipLines"},
  64. {"GDI32.DLL", "PATHOBJ_vEnumStart"},
  65. {"GDI32.DLL", "PATHOBJ_vEnumStartClipLines"},
  66. {"GDI32.DLL", "PATHOBJ_vGetBounds"},
  67. {"GDI32.DLL", "BRUSHOBJ_hGetColorTransform"},
  68. {"GDI32.DLL", "BRUSHOBJ_pvAllocRbrush"},
  69. {"GDI32.DLL", "BRUSHOBJ_pvGetRbrush"},
  70. {"GDI32.DLL", "BRUSHOBJ_ulGetBrushColor"},
  71. {"GDI32.DLL", "HT_Get8BPPMaskPalette"},
  72. {"GDI32.DLL", "HT_Get8BPPFormatPalette"},
  73. {"GDI32.DLL", "cGetTTFFromFOT"},
  74. {"GDI32.DLL", "bMakePathNameW"},
  75. {"GDI32.DLL", "bInitSystemAndFontsDirectoriesW"},
  76. {"GDI32.DLL", "FONTOBJ_vGetInfo"},
  77. {"GDI32.DLL", "FONTOBJ_pxoGetXform"},
  78. {"GDI32.DLL", "FONTOBJ_pvTrueTypeFontFile"},
  79. {"GDI32.DLL", "FONTOBJ_pifi"},
  80. {"GDI32.DLL", "FONTOBJ_pfdg"},
  81. {"GDI32.DLL", "FONTOBJ_pQueryGlyphAttrs"},
  82. {"GDI32.DLL", "FONTOBJ_cGetGlyphs"},
  83. {"GDI32.DLL", "FONTOBJ_cGetAllGlyphHandles"},
  84. {"GDI32.DLL", "SetSystemPaletteUse"}
  85. };
  86. #endif //_EXCLUDES_H_/*++