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.

277 lines
13 KiB

  1. /*++
  2. Copyright (c) 1997-2003 Microsoft Corporation, All Rights Reserved
  3. Module Name:
  4. nlbwmi.mof
  5. Abstract:
  6. Managed Object Format file that contains
  7. descriptions of the WMI events generated
  8. by the NLB driver
  9. Author:
  10. Karthic N. Sivathanupillai (karthicn) 02-Nov-2001
  11. Revision History:
  12. */
  13. /*
  14. By default, kernel mode wmi objects are published under the root\wmi namespace.
  15. Here are the steps involved :
  16. 1. Add this mof file to the list of files to compile in the sources file.
  17. This will generate a binary mof file (.bmf). Fyi, a binary mof file can
  18. also be generated by running "mofcomp -WMI -b:nlbwmi.bmf nlbwmi.mof".
  19. 2. From the binary mof file generated in step #1, Generate a C header
  20. file containing structure definitions that correspond to the below
  21. event classes. This is done in the makefile.inc file by running
  22. "wmimofck -h$(O)\nlbwmimof.h $(O)\nlbwmi.bmf".
  23. 3. Include the header file generated in step #2 in the .c files of the driver
  24. to create event objects.
  25. 4. Also, include the binary mof file generated in step #1 as a resource in
  26. version.rc and give it a name. This name is registered with WMI in nlbwmi.c.
  27. This is how the event classes show up automagically under the root\wmi namespace.
  28. The following additional steps are involved in publishing the events under the
  29. root\microsoftnlb namespace :
  30. 1. Add the #pragma namespace("\\\\.\\Root\\MicrosoftNLB") line to this mof file
  31. 2. Include a subset of definitions from wmi.mof in wlbsprov.mof
  32. 3. Mofcomp this file so that the event classes are added to the repository.
  33. This is done by including this mof file from wlbsprov.mof - the mof file
  34. of NLB wmi provider.
  35. */
  36. #pragma namespace("\\\\.\\Root\\MicrosoftNLB")
  37. [WMI,
  38. Dynamic,
  39. Provider("WmiProv"),
  40. Locale("MS\\0x409"),
  41. Description("NLB Node Control Event"):Amended,
  42. guid("{BB066205-531F-4e55-9E70-F47DFDF5235F}")]
  43. class MicrosoftNLB_NodeControlEvent : WmiEvent
  44. {
  45. [key, read] string InstanceName;
  46. [read] boolean Active;
  47. /* Start of properties common to all NLB events */
  48. [WmiDataId( 1 ),
  49. MaxLen(38), /* 32 bytes for GUID + 2 bytes for enclosing "{" & "}" + 4 bytes for "-" separators */
  50. Description( "Guid of the Network adapter that has NLB bound to it" ):Amended
  51. ]
  52. string AdapterGuid;
  53. [WmiDataId( 2 ),
  54. MaxLen(15),
  55. Description( "Cluster IP Address of the NLB cluster" ):Amended
  56. ]
  57. string ClusterIPAddress;
  58. [WmiDataId( 3 ),
  59. Description( "Host Priority of the host in the NLB cluster" ):Amended
  60. ]
  61. uint32 HostPriority;
  62. /* End of properties common to all NLB events */
  63. [WmiDataId( 4 ),
  64. Description( "Event Id" ):Amended,
  65. Values { "NLB_EVENT_NODE_STARTED",
  66. "NLB_EVENT_NODE_STOPPED",
  67. "NLB_EVENT_NODE_DRAINING",
  68. "NLB_EVENT_NODE_SUSPENDED",
  69. "NLB_EVENT_NODE_RESUMED",
  70. "NLB_EVENT_NODE_RELOADED",
  71. "NLB_EVENT_NODE_BOUND_AND_STARTED",
  72. "NLB_EVENT_NODE_BOUND_AND_STOPPED",
  73. "NLB_EVENT_NODE_BOUND_AND_SUSPENDED",
  74. "NLB_EVENT_NODE_UNBOUND" } : ToInstance,
  75. ValueMap { "1", "2", "3", "4", "5", "6", "7", "8", "9", "10" } : ToInstance
  76. ]
  77. uint32 Id;
  78. };
  79. [WMI,
  80. Dynamic,
  81. Provider("WmiProv"),
  82. Locale("MS\\0x409"),
  83. Description("NLB Port Control Event"):Amended,
  84. guid("{490BB97C-7D3B-4777-8216-DC11FCC02705}")]
  85. class MicrosoftNLB_PortControlEvent : WmiEvent
  86. {
  87. [key, read] string InstanceName;
  88. [read] boolean Active;
  89. /* Start of properties common to all NLB events */
  90. [WmiDataId( 1 ),
  91. MaxLen(38), /* 32 bytes for GUID + 2 bytes for enclosing "{" & "}" + 4 bytes for "-" separators */
  92. Description( "Guid of the Network adapter that has NLB bound to it" ):Amended
  93. ]
  94. string AdapterGuid;
  95. [WmiDataId( 2 ),
  96. MaxLen(15),
  97. Description( "Cluster IP Address of the NLB cluster" ):Amended
  98. ]
  99. string ClusterIPAddress;
  100. [WmiDataId( 3 ),
  101. Description( "Host Priority of the host in the NLB cluster" ):Amended
  102. ]
  103. uint32 HostPriority;
  104. /* End of properties common to all NLB events */
  105. [WmiDataId( 4 ),
  106. MaxLen(15),
  107. Description( "Virtual IP Address of the affected port rule(s)" ):Amended
  108. ]
  109. string VirtualIPAddress;
  110. [WmiDataId( 5 ),
  111. Description( "Port number of the affected port rule(s)" ):Amended
  112. ]
  113. uint32 Port;
  114. [WmiDataId( 6 ),
  115. Description( "Event Id" ):Amended,
  116. Values { "NLB_EVENT_PORT_ENABLED", "NLB_EVENT_PORT_DISABLED", "NLB_EVENT_PORT_DRAINING" } : ToInstance,
  117. ValueMap { "1" , "2" , "3" } : ToInstance
  118. ]
  119. uint32 Id;
  120. };
  121. [WMI,
  122. Dynamic,
  123. Provider("WmiProv"),
  124. Locale("MS\\0x409"),
  125. Description("NLB Converging Event"):Amended,
  126. guid("{812C7978-7D1B-40dc-89D7-D3C9D36A77B4}")]
  127. class MicrosoftNLB_ConvergingEvent : WmiEvent
  128. {
  129. [key, read] string InstanceName;
  130. [read] boolean Active;
  131. /* Start of properties common to all NLB events */
  132. [WmiDataId( 1 ),
  133. MaxLen(38), /* 32 bytes for GUID + 2 bytes for enclosing "{" & "}" + 4 bytes for "-" separators */
  134. Description( "Guid of the Network adapter that has NLB bound to it" ):Amended
  135. ]
  136. string AdapterGuid;
  137. [WmiDataId( 2 ),
  138. MaxLen(15),
  139. Description( "Cluster IP Address of the NLB cluster" ):Amended
  140. ]
  141. string ClusterIPAddress;
  142. [WmiDataId( 3 ),
  143. Description( "Host Priority of the host in the NLB cluster" ):Amended
  144. ]
  145. uint32 HostPriority;
  146. /* End of properties common to all NLB events */
  147. [WmiDataId( 4 ),
  148. Description( "Cause for Convergence" ):Amended,
  149. Values { "NLB_EVENT_CONVERGING_BAD_CONFIG",
  150. "NLB_EVENT_CONVERGING_NEW_MEMBER",
  151. "NLB_EVENT_CONVERGING_UNKNOWN",
  152. "NLB_EVENT_CONVERGING_DUPLICATE_HOST_ID",
  153. "NLB_EVENT_CONVERGING_NUM_RULES",
  154. "NLB_EVENT_CONVERGING_MODIFIED_RULES",
  155. "NLB_EVENT_CONVERGING_MEMBER_LOST",
  156. "NLB_EVENT_CONVERGING_MODIFIED_PARAMS" } : ToInstance,
  157. ValueMap { "1", "2", "3", "4", "5", "6", "7", "8" } : ToInstance
  158. ]
  159. uint32 Cause;
  160. [WmiDataId( 5 ),
  161. MaxLen(15),
  162. Description( "Dedicated IP Address of the host in the NLB cluster that is the cause of convergence" ):Amended
  163. ]
  164. string InitiatorDedicatedIP;
  165. [WmiDataId( 6 ),
  166. Description( "Host Priority of the host in the NLB cluster that is the cause of convergence" ):Amended
  167. ]
  168. uint32 InitiatorHostPriority;
  169. };
  170. [WMI,
  171. Dynamic,
  172. Provider("WmiProv"),
  173. Locale("MS\\0x409"),
  174. Description("NLB Converged Event"):Amended,
  175. guid("{7131AA4D-F5D0-4d5d-A232-49785088F74E}")]
  176. class MicrosoftNLB_ConvergedEvent : WmiEvent
  177. {
  178. [key, read] string InstanceName;
  179. [read] boolean Active;
  180. /* Start of properties common to all NLB events */
  181. [WmiDataId( 1 ),
  182. MaxLen(38), /* 32 bytes for GUID + 2 bytes for enclosing "{" & "}" + 4 bytes for "-" separators */
  183. Description( "Guid of the Network adapter that has NLB bound to it" ):Amended
  184. ]
  185. string AdapterGuid;
  186. [WmiDataId( 2 ),
  187. MaxLen(15),
  188. Description( "Cluster IP Address of the NLB cluster" ):Amended
  189. ]
  190. string ClusterIPAddress;
  191. [WmiDataId( 3 ),
  192. Description( "Host Priority of the host in the NLB cluster" ):Amended
  193. ]
  194. uint32 HostPriority;
  195. /* End of properties common to all NLB events */
  196. [WmiDataId( 4 ),
  197. Description( "Bit map of the hosts in the NLB cluster" ):Amended
  198. ]
  199. uint32 HostMap;
  200. };
  201. [WMI,
  202. Dynamic,
  203. Provider("WmiProv"),
  204. Locale("MS\\0x409"),
  205. Description("NLB Startup Event"):Amended,
  206. guid("{98E0E934-4952-434e-A7BA-F4E891E96A02}")]
  207. class MicrosoftNLB_StartupEvent : WmiEvent
  208. {
  209. [key, read] string InstanceName;
  210. [read] boolean Active;
  211. };
  212. [WMI,
  213. Dynamic,
  214. Provider("WmiProv"),
  215. Locale("MS\\0x409"),
  216. Description("NLB Shutdown Event"):Amended,
  217. guid("{FD868ED2-8613-480d-B33B-8FE0A8796605}")]
  218. class MicrosoftNLB_ShutdownEvent : WmiEvent
  219. {
  220. [key, read] string InstanceName;
  221. [read] boolean Active;
  222. };