Leaked source code of windows server 2003
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.

243 lines
4.5 KiB

  1. /*#include "acpitabl.h"
  2. #include "amli.h"*/
  3. #define ACPIVER_DATA_TYPE_AMLI ((UCHAR)1)
  4. #define ACPIVER_DATA_TYPE_END 2
  5. #define ACPIVER_DATA_SUBTYPE_GET_NAME_SPACE_OBJECT ((UCHAR)1)
  6. #define ACPIVER_DATA_SUBTYPE_GET_FIELD_UNIT_REGION_OP ((UCHAR)2)
  7. #define ACPIVER_DATA_SUBTYPE_EVAL_NAME_SPACE_OBJECT ((UCHAR)3)
  8. #define ACPIVER_DATA_SUBTYPE_ASYNC_EVAL_OBJECT ((UCHAR)4)
  9. #define ACPIVER_DATA_SUBTYPE_NEST_ASYNC_EVAL_OBJECT ((UCHAR)5)
  10. #define ACPIVER_DATA_SUBTYPE_REG_EVENT_HANDLER ((UCHAR)6)
  11. #define ACPIVER_DATA_SUBTYPE_EVAL_PACKAGE_ELEMENT ((UCHAR)7)
  12. #define ACPIVER_DATA_SUBTYPE_EVAL_PKG_DATA_ELEMENT ((UCHAR)8)
  13. #define ACPIVER_DATA_SUBTYPE_FREE_DATA_BUFFS ((UCHAR)9)
  14. #define ACPIVER_DATA_SUBTYPE_PAUSE_INTERPRETER ((UCHAR)10)
  15. #define ACPIVER_DATA_SUBTYPE_RESUME_INTERPRETER ((UCHAR)11)
  16. #define ACPIVER_DATA_SUBTYPE_END ((UCHAR)12)
  17. //
  18. // Pre/Post GetNameSpaceObject
  19. //
  20. NTSTATUS
  21. AMLITest_Pre_GetNameSpaceObject(
  22. IN PSZ pszObjPath,
  23. IN PNSOBJ pnsScope,
  24. OUT PPNSOBJ ppns,
  25. IN ULONG dwfFlags,
  26. IN PAMLIHOOK_DATA * ppData);
  27. NTSTATUS
  28. AMLITest_Post_GetNameSpaceObject(
  29. PAMLIHOOK_DATA * ppData,
  30. NTSTATUS _Status);
  31. //
  32. // Pre/Post GetFieldUnitRegionObj
  33. //
  34. NTSTATUS
  35. AMLITest_Pre_GetFieldUnitRegionObj(
  36. IN PFIELDUNITOBJ pfu,
  37. OUT PPNSOBJ ppns,
  38. PAMLIHOOK_DATA * ppData);
  39. NTSTATUS
  40. AMLITest_Post_GetFieldUnitRegionObj(
  41. PAMLIHOOK_DATA * ppData,
  42. NTSTATUS _Status);
  43. //
  44. // Pre/Post EvalNameSpaceObject
  45. //
  46. NTSTATUS
  47. AMLITest_Pre_EvalNameSpaceObject(
  48. IN PNSOBJ pns,
  49. OUT POBJDATA pdataResult,
  50. IN int icArgs,
  51. IN POBJDATA pdataArgs,
  52. IN PAMLIHOOK_DATA * ppData);
  53. NTSTATUS
  54. AMLITest_Post_EvalNameSpaceObject(
  55. PAMLIHOOK_DATA * ppData,
  56. NTSTATUS _Status);
  57. //
  58. // CallBack Pre/Post AsyncEvalObject
  59. //
  60. VOID EXPORT
  61. AMLITest_AsyncEvalObjectCallBack(
  62. IN PNSOBJ pns,
  63. IN NTSTATUS status,
  64. IN POBJDATA pdataResult,
  65. IN PVOID Context);
  66. NTSTATUS
  67. AMLITest_Pre_AsyncEvalObject(
  68. IN PNSOBJ pns,
  69. OUT POBJDATA pdataResult,
  70. IN int icArgs,
  71. IN POBJDATA pdataArgs,
  72. IN PFNACB * nAsyncCallBack,
  73. IN PVOID * Context,
  74. PAMLIHOOK_DATA * Data);
  75. NTSTATUS
  76. AMLITest_Post_AsyncEvalObject(
  77. PAMLIHOOK_DATA * Data,
  78. NTSTATUS Status);
  79. //
  80. // Pre/Post NestAsyncEvalObject
  81. //
  82. NTSTATUS
  83. AMLITest_Pre_NestAsyncEvalObject(
  84. PNSOBJ pns,
  85. POBJDATA pdataResult,
  86. int icArgs,
  87. POBJDATA pdataArgs,
  88. PFNACB * pfnAsyncCallBack,
  89. PVOID * pvContext,
  90. PAMLIHOOK_DATA * Data);
  91. NTSTATUS
  92. AMLITest_Post_NestAsyncEvalObject(
  93. PAMLIHOOK_DATA * Data,
  94. NTSTATUS Status);
  95. //
  96. // Pre/Post EvalPackageElement
  97. //
  98. NTSTATUS
  99. AMLITest_Pre_EvalPackageElement(
  100. PNSOBJ pns,
  101. int iPkgIndex,
  102. POBJDATA pdataResult,
  103. PAMLIHOOK_DATA * Data);
  104. NTSTATUS
  105. AMLITest_Post_EvalPackageElement(
  106. PAMLIHOOK_DATA * Data,
  107. NTSTATUS Status);
  108. //
  109. // Pre/Post EvalPkgDataElement
  110. //
  111. NTSTATUS
  112. AMLITest_Pre_EvalPkgDataElement(
  113. POBJDATA pdataPkg,
  114. int iPkgIndex,
  115. POBJDATA pdataResult,
  116. PAMLIHOOK_DATA * Data);
  117. NTSTATUS
  118. AMLITest_Post_EvalPkgDataElement(
  119. PAMLIHOOK_DATA * Data,
  120. NTSTATUS Status);
  121. //
  122. // Pre/Post FreeDataBuffs
  123. //
  124. NTSTATUS
  125. AMLITest_Pre_FreeDataBuffs(
  126. POBJDATA pdata,
  127. int icData,
  128. PAMLIHOOK_DATA * Data);
  129. NTSTATUS
  130. AMLITest_Post_FreeDataBuffs(
  131. PAMLIHOOK_DATA * Data,
  132. NTSTATUS Status);
  133. //
  134. // Pre/Post RegEventHandler
  135. //
  136. NTSTATUS
  137. AMLIHook_Pre_RegEventHandler(
  138. ULONG dwEventType,
  139. ULONG_PTR uipEventData,
  140. PFNHND * pfnHandler,
  141. ULONG_PTR * uipParam,
  142. PAMLIHOOK_DATA * Data);
  143. NTSTATUS
  144. AMLIHook_Post_RegEventHandler(
  145. PAMLIHOOK_DATA * Data,
  146. NTSTATUS Status);
  147. //
  148. // CallBack , Pre/Post PauseInterpreter
  149. //
  150. VOID EXPORT
  151. AMLITest_PauseInterpreterCallBack(
  152. PVOID Context);
  153. NTSTATUS
  154. AMLITest_Pre_PauseInterpreter(
  155. PFNAA * pfnCallBack,
  156. PVOID * Context,
  157. PAMLIHOOK_DATA * Data);
  158. NTSTATUS
  159. AMLITest_Post_PauseInterpreter(
  160. PAMLIHOOK_DATA * Data,
  161. NTSTATUS Status);
  162. //
  163. // Pre/Post ResumeInterpreter
  164. //
  165. NTSTATUS
  166. AMLITest_Pre_ResumeInterpreter(
  167. PAMLIHOOK_DATA * Data);
  168. NTSTATUS
  169. AMLITest_Post_ResumeInterpreter(
  170. PAMLIHOOK_DATA * Data,
  171. NTSTATUS Status);