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.

8774 lines
244 KiB

  1. /*++
  2. Copyright (c) Microsoft Corporation. All rights reserved.
  3. Module Name:
  4. wmicore.mof
  5. Abstract:
  6. This file defines all of the MOF classes "built in" to WMI. Typically
  7. this will be for all data providers that are shipped by MS. The list
  8. includes:
  9. WMI specific internal classes
  10. Power Management
  11. NDIS
  12. SMBIOS Data
  13. Keyboard
  14. Mouse
  15. Disk
  16. IDE
  17. Serial
  18. Temperature via ACPI
  19. Revision History:
  20. --*/
  21. #pragma namespace("\\\\.\\root\\wmi")
  22. #pragma classflags("forceupdate")
  23. //
  24. // Wmi internal classes
  25. class WMIEvent : __ExtrinsicEvent
  26. {
  27. };
  28. [abstract]
  29. class MS_WmiInternal
  30. {
  31. };
  32. [Dynamic, Provider("WMIProv"),
  33. WMI,
  34. Description("This class supplies the binary mof information") : amended,
  35. guid("{05901221-D566-11d1-B2F0-00A0C9062910}")
  36. ]
  37. class MSWmi_MofData : MS_WmiInternal
  38. {
  39. [key, read]
  40. string InstanceName;
  41. [read] boolean Active;
  42. [WmiDataId(1),
  43. read
  44. ] uint32 Unused1;
  45. [WmiDataId(2),
  46. read
  47. ] uint32 Unused2;
  48. [WmiDataId(3),
  49. read
  50. ] uint32 Size;
  51. [WmiDataId(4),
  52. read
  53. ] uint32 Unused4;
  54. [WmiDataId(5),
  55. WmiSizeIs("Size"),
  56. read
  57. ] uint8 BinaryMofData[];
  58. };
  59. [Dynamic, Provider("WMIProv"),
  60. WMI,
  61. Description("This class supplies additional information about a data provider. Querying this class with an instance name returned from another class query will return additional information about the instance") : amended,
  62. guid("{C7BF35D0-AADB-11d1-BF4A-00A0C9062910}")
  63. ]
  64. class MSWmi_ProviderInfo : MS_WmiInternal
  65. {
  66. [key, read]
  67. string InstanceName;
  68. [read] boolean Active;
  69. // CM_DRP_FRIENDLY_NAME
  70. [WmiDataId(1),
  71. read,
  72. DisplayName("Friendly Name") : amended
  73. ] string FriendlyName;
  74. // CM_DRP_DEVICEDESC
  75. [WmiDataId(2),
  76. read,
  77. DisplayName("Description") : amended
  78. ] string Description;
  79. // CM_DRP_LOCATION_INFORMATION
  80. [WmiDataId(3),
  81. read,
  82. DisplayName("Location") : amended
  83. ] string Location;
  84. // CM_DRP_MFG
  85. [WmiDataId(4),
  86. read,
  87. DisplayName("Manufacturer") : amended
  88. ] string Manufacturer;
  89. // CM_DRP_SERVICE
  90. [WmiDataId(5),
  91. read,
  92. DisplayName("Service") : amended
  93. ] string Service;
  94. // CONSIDER: adding device capabilities
  95. };
  96. [Dynamic, Provider("WMIProv"),
  97. WMI,
  98. Description("This class supplies the PnPDeviceId for a specific device") : amended,
  99. guid("{C7BF35D2-AADB-11d1-BF4A-00A0C9062910}"),
  100. GuidName1("DATA_PROVIDER_PNPID_GUID")
  101. ]
  102. class MSWmi_PnPDeviceId : MS_WmiInternal
  103. {
  104. //
  105. // Note to driver developers:
  106. //
  107. // Support for this guid is required if properties in the wmi namespace
  108. // are to be mapped into another namespace via the view provider.
  109. //
  110. // This guid is automatically supported by WMI if the following conditions
  111. // are met:
  112. //
  113. // 1. The device registers with PDO instance names for all guids
  114. // (ie, WMIREG_FLAG_PDO_INSTANCE_NAMES)
  115. //
  116. // If the driver cannot follow the rules above and WMI cannot support
  117. // the guid automatically, then the driver can support it in its own
  118. // driver code.
  119. [key, read]
  120. string InstanceName;
  121. [read] boolean Active;
  122. // Pnp device id
  123. [WmiDataId(1),
  124. Description("PnP Device Id for the device. This property is useful for mapping from the wmi namespace to the cimv2 namespace classes using the view provider") : amended,
  125. read,
  126. DisplayName("PnP Device Id") : amended
  127. ] string PnPDeviceId;
  128. };
  129. [Dynamic, Provider("WMIProv"),
  130. WMI,
  131. Description("This class supplies the Instance names associated with a PnP Device Instance Id") : amended,
  132. guid("{C7BF35D3-AADB-11d1-BF4A-00A0C9062910}"),
  133. GuidName1("DATA_PROVIDER_PNPID_INSTANCE_NAMES_GUID")
  134. ]
  135. class MSWmi_PnPInstanceNames : MS_WmiInternal
  136. {
  137. //
  138. // Note to driver developers:
  139. //
  140. // Support for this guid is required if properties in the wmi namespace
  141. // are to be mapped into another namespace via the view provider.
  142. //
  143. // This guid is automatically supported by WMI if the following conditions
  144. // are met:
  145. //
  146. // 1. The device registers with PDO instance names for all guids
  147. // (ie, WMIREG_FLAG_PDO_INSTANCE_NAMES)
  148. //
  149. // If the driver cannot follow the rules above and WMI cannot support
  150. // the guid automatically, then the driver can support it in its own
  151. // driver code.
  152. [key, read]
  153. string InstanceName;
  154. [read] boolean Active;
  155. // Pnp device id
  156. [WmiDataId(1),
  157. Description("Count of instance names associated with this PnPId") : amended,
  158. read,
  159. DisplayName("Count") : amended
  160. ] uint32 Count;
  161. // Instance names
  162. [WmiDataId(2),
  163. WmiSizeIs("Count"),
  164. Description("Wmi Instance Names for the device. This property is useful for mapping from the wmi namespace to the cimv2 namespace classes using the view provider") : amended,
  165. read,
  166. DisplayName("Instance Name List") : amended
  167. ] string InstanceNameList[];
  168. };
  169. [WMI,
  170. guid("{F8C60AED-EF8D-4f95-9EA8-F04318A00F30}")
  171. ]
  172. class MSWmi_Guid
  173. {
  174. [WmiDataId(1)]
  175. uint8 Guid[16];
  176. };
  177. [Dynamic, Provider("WMIProv"),
  178. WMI,
  179. guid("{B48D49A1-E777-11d0-A50C-00A0C9062910}"),
  180. description("This event reports whenever a guid is registered or unregistered") : amended
  181. ]
  182. class MSWmi_GuidRegistrationInfo : WMIEvent
  183. {
  184. [key, read]
  185. string InstanceName;
  186. [read] boolean Active;
  187. [WmiDataId(1),
  188. Description("Type of operation") : amended,
  189. Values{"Registration Add", "Registration Remove", "Registration Update"} : amended,
  190. ValueMap{"1", "2", "4"}
  191. ]
  192. uint32 Operation;
  193. [WmiDataId(2),
  194. Description("Count of guids being registered, unregistered, or updated") : amended
  195. ]
  196. uint32 GuidCount;
  197. [WmiDataId(3),
  198. WmiSizeIs("GuidCount"),
  199. Description("List of guids") : amended
  200. ]
  201. MSWmi_Guid GuidList[];
  202. };
  203. //
  204. // ACPI info classes
  205. //
  206. [Dynamic, Provider("WMIProv"),
  207. WMI,
  208. Description("ACPI Table data") : amended,
  209. guid("{5DAF38AE-F6F8-4d90-8199-EBDE6800EC3B}")
  210. ]
  211. class MSAcpiInfo
  212. {
  213. [key, read]
  214. string InstanceName;
  215. [read] boolean Active;
  216. [WmiDataId(1),
  217. Description("Boot Architecture") : amended,
  218. Values{"LEGACY_DEVICES", "I8042" } : amended,
  219. ValueMap{"1", "2"}
  220. ]
  221. uint32 BootArchitecture;
  222. [WmiDataId(2),
  223. Description("Systems Preferred Power Profile") : amended
  224. ]
  225. uint32 PreferredProfile;
  226. [WmiDataId(3),
  227. BitValues{"this one bit flag indicates whether or not the WBINVD instruction works properly,if this bit is not set we can not use S2, S3 states, or C3 on MP machines",
  228. "this flag indicates if wbinvd works EXCEPT that it does not invalidate the cache",
  229. "this flag indicates that the C1 state is supported on all processors.",
  230. "this one bit flag indicates whether support for the C2 state is restricted to uniprocessor machines",
  231. "this bit indicates whether the PWR button is treated as a fix feature (0) or a generic feature (1)",
  232. "SLEEP_BUTTON_GENERIC",
  233. "this bit indicates whether the RTC wakeup status is reported in fix register space (0) or not (1)",
  234. "RTC_WAKE_FROM_S4",
  235. "This bit indicates whether the machine implements a 24 or 32 bit timer.",
  236. "This bit indicates whether the machine supports docking",
  237. "This bit indicates whether the machine supports reset",
  238. "This bit indicates whether the machine case can be opened",
  239. "This bit indicates whether the machine has no video"
  240. } : amended,
  241. BitMap{"0", "1", "2", "3", "4", "5", "6", "7", "8", "9", "10", "11", "12"},
  242. Description("Capabilities") : amended
  243. ]
  244. uint32 Capabilities;
  245. };
  246. //
  247. // SMBIOS data classes
  248. //
  249. [abstract]
  250. class MS_SmBios
  251. {
  252. };
  253. [Dynamic, Provider("WMIProv"),
  254. WMI,
  255. Description("Raw SMBIOS Tables") : amended,
  256. guid("{8F680850-A584-11d1-BF38-00A0C9062910}")
  257. ]
  258. class MSSmBios_RawSMBiosTables : MS_SmBios
  259. {
  260. [key, read]
  261. string InstanceName;
  262. [read] boolean Active;
  263. [WmiDataId(1),
  264. read,
  265. DisplayName("Used 20 Calling Method") : amended
  266. ] boolean Used20CallingMethod;
  267. [WmiDataId(2),
  268. read,
  269. DisplayName("Smbios Major Version") : amended
  270. ] uint8 SmbiosMajorVersion;
  271. [WmiDataId(3),
  272. read,
  273. DisplayName("Smbios Minor Version") : amended
  274. ] uint8 SmbiosMinorVersion;
  275. [WmiDataId(4),
  276. read,
  277. DisplayName("Dmi Revision") : amended
  278. ] uint8 DmiRevision;
  279. [WmiDataId(5),
  280. read,
  281. DisplayName("Size") : amended
  282. ] uint32 Size;
  283. [WmiDataId(6),
  284. WmiSizeIs("Size"),
  285. read,
  286. DisplayName("SMBios Data") : amended
  287. ] uint8 SMBiosData[];
  288. };
  289. [Dynamic, Provider("WMIProv"),
  290. WMI,
  291. Description("Raw SMBIOS Eventlog") : amended,
  292. guid("{8F680851-A584-11d1-BF38-00A0C9062910}")
  293. ]
  294. class MSSmBios_SMBiosEventlog : MS_SmBios
  295. {
  296. [key, read]
  297. string InstanceName;
  298. [read] boolean Active;
  299. [WmiDataId(1),
  300. read
  301. ] uint16 LogTypeDescLength;
  302. [WmiDataId(2),
  303. read
  304. ] boolean LogHeaderDescExists;
  305. [WmiDataId(3),
  306. read
  307. ] uint8 Reserved;
  308. [WmiDataId(4),
  309. read
  310. ] uint16 LogAreaLength;
  311. [WmiDataId(5),
  312. read
  313. ] uint16 LogHeaderStart;
  314. [WmiDataId(6),
  315. read
  316. ] uint16 LogDataStart;
  317. [WmiDataId(7),
  318. read
  319. ] uint8 AccessMethod;
  320. [WmiDataId(8),
  321. read
  322. ] uint8 LogStatus;
  323. [WmiDataId(9),
  324. read
  325. ] uint32 LogChangeToken;
  326. [WmiDataId(10),
  327. read
  328. ] uint32 AccessMethodAddress;
  329. //
  330. // LogHeaderFormat, NumberLogTypeDesc, LengthEachLogTypeDesc and
  331. // ListLogTypeDesc are only valid if LogHeaderDescExists is TRUE.
  332. // This means that SMBIOS is revision 2.1
  333. //
  334. [WmiDataId(11),
  335. read
  336. ] uint8 LogHeaderFormat;
  337. [WmiDataId(12),
  338. read
  339. ] uint8 NumberLogTypeDesc;
  340. [WmiDataId(13),
  341. read
  342. ] uint8 LengthEachLogTypeDesc;
  343. [WmiDataId(14),
  344. WmiSizeIs("LogTypeDescLength"),
  345. read
  346. ] uint8 ListLogTypeDesc[];
  347. [WmiDataId(15),
  348. WmiSizeIs("LogAreaLength"),
  349. read
  350. ] uint8 LogArea[];
  351. };
  352. [WMI,
  353. guid("{8F680852-A584-11d1-BF38-00A0C9062910}"),
  354. Description("SYSID UUID") : amended,
  355. HeaderName("SYSID_UUID")
  356. ]
  357. class MSSmBios_SysidUUID : MS_SmBios
  358. {
  359. [WmiDataId(1)]
  360. uint8 Uuid[16];
  361. };
  362. [Dynamic, Provider("WMIProv"),
  363. WMI,
  364. Description("List of UUID SYSIDS") : amended,
  365. guid("{8F680853-A584-11d1-BF38-00A0C9062910}"),
  366. GuidName1("SYSID_UUID_DATA_GUID")
  367. ]
  368. class MSSmBios_SysidUUIDList : MS_SmBios
  369. {
  370. [key, read]
  371. string InstanceName;
  372. [read] boolean Active;
  373. [WmiDataId(1),
  374. read
  375. ] uint32 Count;
  376. [WmiDataId(2),
  377. WmiSizeIs("Count"),
  378. read
  379. ] MSSmBios_SysidUUID List;
  380. };
  381. [WMI,
  382. guid("{8F680854-A584-11d1-BF38-00A0C9062910}"),
  383. Description("SYSID 1394") : amended,
  384. HeaderName("SYSID_1394")
  385. ]
  386. class MSSmBios_Sysid1394 : MS_SmBios
  387. {
  388. [WmiDataId(1)
  389. ]
  390. uint8 x1394[8];
  391. };
  392. [Dynamic, Provider("WMIProv"),
  393. WMI,
  394. Description("List of 1394 SYSIDS") : amended,
  395. guid("{8F680855-A584-11d1-BF38-00A0C9062910}"),
  396. GuidName1("SYSID_1394_DATA_GUID")
  397. ]
  398. class MSSmBios_Sysid1394List : MS_SmBios
  399. {
  400. [key, read]
  401. string InstanceName;
  402. [read] boolean Active;
  403. [WmiDataId(1),
  404. read
  405. ] uint32 Count;
  406. [WmiDataId(2),
  407. WmiSizeIs("Count"),
  408. read
  409. ] MSSmBios_Sysid1394 List;
  410. };
  411. [abstract]
  412. class MSMCAInfo
  413. {
  414. };
  415. [WMI,
  416. Dynamic,
  417. Provider("WmiProv"),
  418. guid("{39C14290-F036-4999-B8A1-B6F871FB329E}"),
  419. Description("CMC handling switched from interrupt driver to polling") : amended
  420. ]
  421. class MSMCAEvent_SwitchToCMCPolling : WMIEvent
  422. {
  423. [key, read]
  424. string InstanceName;
  425. boolean Active;
  426. };
  427. [WMI,
  428. Dynamic,
  429. Provider("WmiProv"),
  430. guid("{D5C870CE-4ED0-4fdc-BB54-8B452C18797E}"),
  431. Description("CPE handling switched from interrupt driver to polling") : amended
  432. ]
  433. class MSMCAEvent_SwitchToCPEPolling : WMIEvent
  434. {
  435. [key, read]
  436. string InstanceName;
  437. boolean Active;
  438. };
  439. //
  440. // Define the qualifiers used for the Type property of the MSMCAEvent classes
  441. // The value of the property corresponds to the eventlog type as specified
  442. // in iologmsg.h
  443. //
  444. #define EVENTLOG_MESSAGE_QUALIFIERS \
  445. Values{ \
  446. "MCA_WARNING_CACHE", \
  447. "MCA_ERROR_CACHE", \
  448. "MCA_WARNING_TLB", \
  449. "MCA_ERROR_TLB", \
  450. "MCA_WARNING_CPU_BUS", \
  451. "MCA_ERROR_CPU_BUS", \
  452. "MCA_WARNING_REGISTER_FILE", \
  453. "MCA_ERROR_REGISTER_FILE", \
  454. "MCA_WARNING_MAS", \
  455. "MCA_ERROR_MAS", \
  456. "MCA_WARNING_MEM_UNKNOWN", \
  457. "MCA_ERROR_MEM_UNKNOWN", \
  458. "MCA_WARNING_MEM_1_2", \
  459. "MCA_ERROR_MEM_1_2", \
  460. "MCA_WARNING_MEM_1_2_5", \
  461. "MCA_ERROR_MEM_1_2_5", \
  462. "MCA_WARNING_MEM_1_2_5_4", \
  463. "MCA_ERROR_MEM_1_2_5_4", \
  464. "MCA_WARNING_SYSTEM_EVENT", \
  465. "MCA_ERROR_SYSTEM_EVENT", \
  466. "MCA_WARNING_PCI_BUS_PARITY", \
  467. "MCA_ERROR_PCI_BUS_PARITY", \
  468. "MCA_WARNING_PCI_BUS_PARITY_NO_INFO", \
  469. "MCA_ERROR_PCI_BUS_PARITY_NO_INFO", \
  470. "MCA_WARNING_PCI_BUS_SERR", \
  471. "MCA_ERROR_PCI_BUS_SERR", \
  472. "MCA_WARNING_PCI_BUS_SERR_NO_INFO", \
  473. "MCA_ERROR_PCI_BUS_SERR_NO_INFO", \
  474. "MCA_WARNING_PCI_BUS_MASTER_ABORT", \
  475. "MCA_ERROR_PCI_BUS_MASTER_ABORT", \
  476. "MCA_WARNING_PCI_BUS_MASTER_ABORT_NO_INFO", \
  477. "MCA_ERROR_PCI_BUS_MASTER_ABORT_NO_INFO", \
  478. "MCA_WARNING_PCI_BUS_TIMEOUT", \
  479. "MCA_ERROR_PCI_BUS_TIMEOUT", \
  480. "MCA_WARNING_PCI_BUS_TIMEOUT_NO_INFO", \
  481. "MCA_ERROR_PCI_BUS_TIMEOUT_NO_INFO", \
  482. "MCA_WARNING_PCI_BUS_UNKNOWN", \
  483. "MCA_ERROR_PCI_BUS_UNKNOWN", \
  484. "MCA_WARNING_PCI_DEVICE", \
  485. "MCA_ERROR_PCI_DEVICE", \
  486. "MCA_WARNING_SMBIOS", \
  487. "MCA_ERROR_SMBIOS", \
  488. "MCA_WARNING_PLATFORM_SPECIFIC", \
  489. "MCA_ERROR_PLATFORM_SPECIFIC", \
  490. "MCA_WARNING_UNKNOWN", \
  491. "MCA_ERROR_UNKNOWN", \
  492. "MCA_WARNING_UNKNOWN_NO_CPU", \
  493. "MCA_ERROR_UNKNOWN_NO_CPU", \
  494. "MCA_WARNING_CMC_THRESHOLD_EXCEEDED", \
  495. "MCA_WARNING_CPE_THRESHOLD_EXCEEDED", \
  496. "MCA_WARNING_CPU_THERMAL_THROTTLED", \
  497. "MCA_INFO_CPU_THERMAL_THROTTLING_REMOVED", \
  498. "MCA_WARNING_CPU", \
  499. "MCA_ERROR_CPU" \
  500. }, \
  501. ValueMap{ \
  502. "0x8005003C", \
  503. "0xC005003D", \
  504. "0x8005003E", \
  505. "0xC005003F", \
  506. "0x80050040", \
  507. "0xC0050041", \
  508. "0x80050042", \
  509. "0xC0050043", \
  510. "0x80050044", \
  511. "0xC0050045", \
  512. "0x80050046", \
  513. "0xC0050047", \
  514. "0x80050048", \
  515. "0xC0050049", \
  516. "0x8005004A", \
  517. "0xC005004B", \
  518. "0x8005004C", \
  519. "0xC005004D", \
  520. "0x8005004E", \
  521. "0xC005004F", \
  522. "0x80050050", \
  523. "0xC0050051", \
  524. "0x80050052", \
  525. "0xC0050053", \
  526. "0x80050054", \
  527. "0xC0050055", \
  528. "0x80050056", \
  529. "0xC0050057", \
  530. "0x80050058", \
  531. "0xC0050059", \
  532. "0x8005005A", \
  533. "0xC005005B", \
  534. "0x8005005C", \
  535. "0xC005005D", \
  536. "0x8005005E", \
  537. "0xC005005F", \
  538. "0x80050060", \
  539. "0xC0050061", \
  540. "0x80050062", \
  541. "0xC0050063", \
  542. "0x80050064", \
  543. "0xC0050065", \
  544. "0x80050066", \
  545. "0xC0050067", \
  546. "0x80050068", \
  547. "0xC0050069", \
  548. "0x8005006A", \
  549. "0xC005006B", \
  550. "0x8005006D", \
  551. "0x8005006E", \
  552. "0x8005006F", \
  553. "0x40050070", \
  554. "0x80050071", \
  555. "0xC0050072" \
  556. }, \
  557. Description("Type of eventlog message") : amended
  558. #define ERROR_SEVERITY_QUALIFIERS \
  559. Values{"Recoverable", "Fatal", "Correctable"}, \
  560. ValueMap{ "0", "1", "2" }, \
  561. Description("Severity of the error record") : amended
  562. //
  563. // NOTE: For all MCA events the first data items must be identical and
  564. // match whay is in MSMCAEvent_Header.
  565. //
  566. [WMI,
  567. guid("{6381C27F-C8FA-4da7-8953-B86833736E15}"),
  568. description("Header for all MSMCA events") : amended
  569. ]
  570. class MSMCAEvent_Header
  571. {
  572. [WmiDataId(1),
  573. Description("Unique Id for the error record containing this error") : amended
  574. ]
  575. uint64 RecordId;
  576. [WmiDataId(2),
  577. ERROR_SEVERITY_QUALIFIERS
  578. ]
  579. uint8 ErrorSeverity;
  580. [WmiDataId(3),
  581. EVENTLOG_MESSAGE_QUALIFIERS
  582. ]
  583. uint32 Type;
  584. [WmiDataId(4),
  585. Description("CPU that reported the error") : amended
  586. ]
  587. uint32 Cpu;
  588. [WmiDataId(5),
  589. Description("Number of additional errors in the record") : amended
  590. ]
  591. uint32 AdditionalErrors;
  592. [WmiDataId(6),
  593. Description("If zero then this event is not logged to system eventlog") : amended
  594. ]
  595. uint32 LogToEventlog;
  596. };
  597. [WMI,
  598. Dynamic,
  599. Provider("WmiProv"),
  600. guid("{5CE27CDE-D179-4c68-937F-A07B8CC2EA39}"),
  601. Description("MCA CPU Error Event") : amended
  602. ]
  603. class MSMCAEvent_CPUError : WMIEvent
  604. {
  605. [key, read]
  606. string InstanceName;
  607. boolean Active;
  608. [WmiDataId(1),
  609. Description("Unique Id for the error record containing this error") : amended
  610. ]
  611. uint64 RecordId;
  612. [WmiDataId(2),
  613. ERROR_SEVERITY_QUALIFIERS
  614. ]
  615. uint8 ErrorSeverity;
  616. [WmiDataId(3),
  617. EVENTLOG_MESSAGE_QUALIFIERS
  618. ]
  619. uint32 Type;
  620. [WmiDataId(4),
  621. Description("CPU that reported the error") : amended
  622. ]
  623. uint32 Cpu;
  624. [WmiDataId(5),
  625. Description("Number of additional errors in the record") : amended
  626. ]
  627. uint32 AdditionalErrors;
  628. [WmiDataId(6),
  629. Description("If zero then this event is not logged to system eventlog") : amended
  630. ]
  631. uint32 LogToEventlog;
  632. [WmiDataId(7),
  633. Description("Error type of the major error in the section") : amended,
  634. Values {"Cache", "TLB", "Bus", "Register File", "Microarchitecture"},
  635. ValueMap { "0", "1", "2", "3", "4"},
  636. DefineValues {"MCACpuCacheError",
  637. "MCACpuTlbError",
  638. "MCACpuBusError",
  639. "MCACpuRegFileError",
  640. "MCACpuMSError" }
  641. ]
  642. uint32 MajorErrorType;
  643. //
  644. // This is valid for cache, tlb and microarchitectural structure errors
  645. //
  646. [WmiDataId(8),
  647. Description("Level of cache, TLB or microarchitectural structure where error occured (0 indicates first level)") : amended,
  648. WmiMissingData(-1)
  649. ]
  650. uint32 Level;
  651. //
  652. // This is valid for cache errors
  653. //
  654. [WmiDataId(9),
  655. Values{ "Unknown or internal error",
  656. "load",
  657. "store",
  658. "instruction fetch or instruction prefetch",
  659. "data prefetch (both hardware and software)",
  660. "snoop (coherency check)",
  661. "cast out (explicit or implicit write-back of a cache line)",
  662. "move in (cache line fill)"
  663. } : amended,
  664. ValueMap{"0", "1", "2", "3", "4", "5", "6", "7"},
  665. Description("Type of cache operation that caused the machine check") : amended,
  666. WmiMissingData(-1)
  667. ]
  668. uint32 CacheOp;
  669. //
  670. // This is valid for cache errors
  671. //
  672. [WmiDataId(10),
  673. Description("Status of the cache line") : amended,
  674. Values{"cache line is invalid",
  675. "cache line is held shares",
  676. "cache line is held exclusive",
  677. "cache line is modified"
  678. } : amended,
  679. ValueMap{ "0", "1", "2", "3" },
  680. WmiMissingData(-1)
  681. ]
  682. uint32 CacheMesi;
  683. //
  684. // This is valid for TLB errors
  685. //
  686. [WmiDataId(11),
  687. Values{ "unknown",
  688. "TLB access due to load instruction",
  689. "TLB access due to store instruction",
  690. "TLB access due to instruction fetch or instruction prefetch",
  691. "TLB access due to data prefetch (both hardware and software)",
  692. "TLB shoot down access",
  693. "TLB probe instruction (probe, tpa)",
  694. "move in (VHPT fill)"
  695. } : amended,
  696. ValueMap{"0", "1", "2", "3", "4", "5", "6", "7"},
  697. Description("Type of cache operation that caused the machine check") : amended,
  698. WmiMissingData(-1)
  699. ]
  700. uint32 TLBOp;
  701. //
  702. // This is valid for Bus errors
  703. //
  704. [WmiDataId(12),
  705. Values{ "unknown",
  706. "partial read",
  707. "partial write",
  708. "full line read",
  709. "full line write",
  710. "implicit or explicit write-back operation",
  711. "snoop probe",
  712. "incoming ptc.g",
  713. "WC transactions"
  714. } : amended,
  715. ValueMap{"0", "1", "2", "3", "4", "5", "6", "7", "8"},
  716. Description("Type of Bus transaction that caused the machine check abort") : amended,
  717. WmiMissingData(-1)
  718. ]
  719. uint32 BusType;
  720. //
  721. // This is valid for Bus errors
  722. //
  723. [WmiDataId(13),
  724. Description("Bus error severity. The encodings of error severity are platform specific") : amended,
  725. WmiMissingData(-1)
  726. ]
  727. uint32 BusSev;
  728. //
  729. // This is valid for RegFile errors
  730. //
  731. [WmiDataId(14),
  732. Values{ "unknown/unclassified",
  733. "General register (bank 1)",
  734. "General register (bank 2)",
  735. "Floating point register",
  736. "Branch register",
  737. "Predicate register",
  738. "Application register",
  739. "Control register",
  740. "Region register",
  741. "Protection key register",
  742. "Data breakpoint register",
  743. "Instruction breakpoint register",
  744. "Performance monitor control register",
  745. "Performance monitor data register"
  746. } : amended,
  747. ValueMap{"0", "1", "2", "3", "4", "5", "6", "7", "8", "9",
  748. "10", "11", "12", "13"},
  749. Description("Register file identifier") : amended,
  750. WmiMissingData(-1)
  751. ]
  752. uint32 RegFileId;
  753. //
  754. // This is valid for RegFile errors
  755. //
  756. [WmiDataId(15),
  757. Values{ "unknown",
  758. "read",
  759. "write"
  760. } : amended,
  761. ValueMap{"0", "1", "2" },
  762. Description("Identifies the operation that caused the machine check") : amended,
  763. WmiMissingData(-1)
  764. ]
  765. uint32 RegFileOp;
  766. //
  767. // This is valid for Microarchitectural structure errors
  768. //
  769. [WmiDataId(16),
  770. Description("Structure identification. These bits identify the microarchitectural structure where the error occured.") : amended,
  771. WmiMissingData(-1)
  772. ]
  773. uint32 MSSid;
  774. [WmiDataId(17),
  775. Values{ "unknown",
  776. "read or load",
  777. "write or store"
  778. } : amended,
  779. ValueMap{"0", "1", "2"},
  780. Description("Type of operation that caused the error") : amended,
  781. WmiMissingData(-1)
  782. ]
  783. uint32 MSOp;
  784. //
  785. // This is valid for Microarchitectural structure errors
  786. //
  787. [WmiDataId(18),
  788. Values{ "unknown/unclassified"
  789. } : amended,
  790. ValueMap{"0"},
  791. Description("Identification of the array in the micro architectural structure where the error was generated") : amended,
  792. WmiMissingData(-1)
  793. ]
  794. uint32 MSArrayId;
  795. //
  796. // This is valid for Microarchitectural structure errors
  797. //
  798. [WmiDataId(19),
  799. Description("Index ort set of the micro architectural structure where the error was located.") : amended,
  800. WmiMissingData(-1)
  801. ]
  802. uint32 MSIndex;
  803. [WmiDataId(20),
  804. Description("Size of Raw Error Record") : amended
  805. ]
  806. uint32 Size;
  807. [WmiDataId(21),
  808. WmiSizeIs("Size"),
  809. Description("Raw Error Record") : amended
  810. ]
  811. uint8 RawRecord[];
  812. };
  813. [WMI,
  814. Dynamic,
  815. Provider("WmiProv"),
  816. guid("{433EEA38-C1A7-48f1-884F-B6875F176CC7}"),
  817. Description("MCA Memory Error Event") : amended
  818. ]
  819. class MSMCAEvent_MemoryError : WMIEvent
  820. {
  821. [key, read]
  822. string InstanceName;
  823. boolean Active;
  824. [WmiDataId(1),
  825. Description("Unique Id for the error record containing this error") : amended
  826. ]
  827. uint64 RecordId;
  828. [WmiDataId(2),
  829. ERROR_SEVERITY_QUALIFIERS
  830. ]
  831. uint8 ErrorSeverity;
  832. [WmiDataId(3),
  833. EVENTLOG_MESSAGE_QUALIFIERS
  834. ]
  835. uint32 Type;
  836. [WmiDataId(4),
  837. Description("CPU that reported the error") : amended
  838. ]
  839. uint32 Cpu;
  840. [WmiDataId(5),
  841. Description("Number of additional errors in the record") : amended
  842. ]
  843. uint32 AdditionalErrors;
  844. [WmiDataId(6),
  845. Description("If zero then this event is not logged to system eventlog") : amended
  846. ]
  847. uint32 LogToEventlog;
  848. [WmiDataId(7),
  849. Description("Validation bits to indicate the validity of the subsequent fields") : amended,
  850. BitMap{"0", "1", "2", "3", "4", "5", "6", "7",
  851. "8", "9", "10", "11", "12", "13", "14", "15", "16"},
  852. BitValues{"MEM_ERROR_STATUS is valid",
  853. "MEM_PHYSICAL_ADDR is valid",
  854. "MEM_ADDR_MASK is valid",
  855. "MEM_NODE is valid",
  856. "MEM_CARD is valid",
  857. "MEM_MODULE is valid",
  858. "MEM_BANK is valid",
  859. "MEM_DEVICE is valid",
  860. "MEM_ROW is valid",
  861. "MEM_COLUMN is valid",
  862. "MEM_BIT_POSITION is valid",
  863. "MEM_PLATFORM_REQUESTOR_ID is valid",
  864. "MEM_PLATFORM_RESPONDER_ID is valid",
  865. "MEM_PLATFORM_TARGET is valid",
  866. "MEM_PLATFORM_BUS_SPECIFIC_DATA is valid",
  867. "MEM_PLATFORM_OEM_ID is valid",
  868. "MEM_PLATFORM_OEM_DATA_STRUCT is valid"} : amended
  869. ]
  870. uint64 VALIDATION_BITS;
  871. [WmiDataId(8),
  872. Description("Memory Error Status") : amended
  873. ]
  874. uint64 MEM_ERROR_STATUS;
  875. [WmiDataId(9),
  876. Description("64bit physical address of the memory error") : amended
  877. ]
  878. uint64 MEM_PHYSICAL_ADDR;
  879. [WmiDataId(10),
  880. Description("Defines the valid address bits in the 64-Bit physical address of the memory error. The mask specifies the granularity of the physical address which is dependent on the hardware implementation factors such as interleaving.") : amended
  881. ]
  882. uint64 MEM_PHYSICAL_MASK;
  883. [WmiDataId(11),
  884. Description("Hardware address of the responder to the transaction") : amended
  885. ]
  886. uint64 RESPONDER_ID;
  887. [WmiDataId(12),
  888. Description("Hardware address of intended target of transaction") : amended
  889. ]
  890. uint64 TARGET_ID;
  891. [WmiDataId(13),
  892. Description("Hardware address of the device or component initiating transaction") : amended
  893. ]
  894. uint64 REQUESTOR_ID;
  895. [WmiDataId(14),
  896. Description("OEM specific bus dependent data") : amended
  897. ]
  898. uint64 BUS_SPECIFIC_DATA;
  899. [WmiDataId(15),
  900. Description("In a multi-node system, this value identifies the node containing the memory in error") : amended
  901. ]
  902. uint16 MEM_NODE;
  903. [WmiDataId(16),
  904. Description("The Card number of the memory error location") : amended
  905. ]
  906. uint16 MEM_CARD;
  907. [WmiDataId(17),
  908. Description("The Module or RANK number of the memory error location") : amended
  909. ]
  910. uint16 MEM_BANK;
  911. [WmiDataId(18),
  912. Description("The Device number of the memory error location") : amended
  913. ]
  914. uint16 xMEM_DEVICE;
  915. [WmiDataId(19),
  916. Description("The module or rank number of the memory error location") : amended
  917. ]
  918. uint16 MEM_MODULE;
  919. [WmiDataId(20),
  920. Description("The Row number of the memory error location") : amended
  921. ]
  922. uint16 MEM_ROW;
  923. [WmiDataId(21),
  924. Description("The Column number of the memory error location") : amended
  925. ]
  926. uint16 MEM_COLUMN;
  927. [WmiDataId(22),
  928. Description("Bit position specifies the bit within the memory word that is in error") : amended
  929. ]
  930. uint16 MEM_BIT_POSITION;
  931. [WmiDataId(23),
  932. Description("Size of Raw Error Record") : amended
  933. ]
  934. uint32 Size;
  935. [WmiDataId(24),
  936. WmiSizeIs("Size"),
  937. Description("Raw Error Record") : amended
  938. ]
  939. uint8 RawRecord[];
  940. };
  941. [WMI,
  942. Dynamic,
  943. Provider("WmiProv"),
  944. guid("{A14A5594-25DE-410e-9B92-80F0801AEC07}"),
  945. Description("MCA PCI Bus Error Event") : amended
  946. ]
  947. class MSMCAEvent_PCIBusError : WMIEvent
  948. {
  949. [key, read]
  950. string InstanceName;
  951. boolean Active;
  952. [WmiDataId(1),
  953. Description("Unique Id for the error record containing this error") : amended
  954. ]
  955. uint64 RecordId;
  956. [WmiDataId(2),
  957. ERROR_SEVERITY_QUALIFIERS
  958. ]
  959. uint8 ErrorSeverity;
  960. [WmiDataId(3),
  961. EVENTLOG_MESSAGE_QUALIFIERS
  962. ]
  963. uint32 Type;
  964. [WmiDataId(4),
  965. Description("CPU that reported the error") : amended
  966. ]
  967. uint32 Cpu;
  968. [WmiDataId(5),
  969. Description("Number of additional errors in the record") : amended
  970. ]
  971. uint32 AdditionalErrors;
  972. [WmiDataId(6),
  973. Description("If zero then this event is not logged to system eventlog") : amended
  974. ]
  975. uint32 LogToEventlog;
  976. [WmiDataId(7),
  977. Description("Validation bits to indicate the validity of the subsequent fields") : amended,
  978. BitMap{"0", "1", "2", "3", "4", "5", "6", "7", "8", "9", "10"},
  979. BitValues{"PCI_BUS_ERROR_STATUS is valid",
  980. "PCI_BUS_ERROR_TYPE is valid",
  981. "PCI_BUS_ID is valid",
  982. "PCI_BUS_ADDRESS is valid",
  983. "PCI_BUS_DATA is valid",
  984. "PCI_BUS_CMD is valid",
  985. "PCI_BUS_REQUESTOR_ID is valid",
  986. "PCI_BUS_RESPONDER_ID is valid",
  987. "PCI_BUS_TARGET_ID is valid",
  988. "PCI_BUS_OEM_ID is valid",
  989. "PCI_BUS_OEM_DATA_STRUCT is valid"} : amended
  990. ]
  991. uint64 VALIDATION_BITS;
  992. [WmiDataId(8),
  993. Description("Bus Error Type") : amended
  994. ]
  995. uint64 PCI_BUS_ERROR_STATUS;
  996. [WmiDataId(9),
  997. Description("Memory or IO address on the PCI bus at the time of the event") : amended
  998. ]
  999. uint64 PCI_BUS_ADDRESS;
  1000. [WmiDataId(10),
  1001. Description("Data on the PCI bus at the time of the event") : amended
  1002. ]
  1003. uint64 PCI_BUS_DATA;
  1004. [WmiDataId(11),
  1005. Description("Bus command or operation at the time of the event") : amended
  1006. ]
  1007. uint64 PCI_BUS_CMD;
  1008. [WmiDataId(12),
  1009. Description("PCI Bus Requetor ID at the time of the event") : amended
  1010. ]
  1011. uint64 PCI_BUS_REQUESTOR_ID;
  1012. [WmiDataId(13),
  1013. Description("PCI Bus Responder ID at the time of the event") : amended
  1014. ]
  1015. uint64 PCI_BUS_RESPONDER_ID;
  1016. [WmiDataId(14),
  1017. Description("PCI Bus Intended Target ID at the time of the event") : amended
  1018. ]
  1019. uint64 PCI_BUS_TARGET_ID;
  1020. [WmiDataId(15),
  1021. Description("PCI Bus Error Types") : amended,
  1022. ValueMap{"0", "1", "2", "3", "4", "5", "6", "7"},
  1023. Values{"Unknown or OEM System Specific Error",
  1024. "Data Parity Error",
  1025. "System Error",
  1026. "Master Abort",
  1027. "Bus Time Out or No Device Present (No DEVSEL#)",
  1028. "Master Data Parity Error",
  1029. "Address Parity Error",
  1030. "Command Parity Error" } : amended
  1031. ]
  1032. uint16 PCI_BUS_ERROR_TYPE;
  1033. [WmiDataId(16),
  1034. Description("Designated PCI Bus Identifier encountering error") : amended
  1035. ]
  1036. uint8 PCI_BUS_ID_BusNumber;
  1037. [WmiDataId(17),
  1038. Description("Designated PCI Bus Identifier encountering error") : amended
  1039. ]
  1040. uint8 PCI_BUS_ID_SegmentNumber;
  1041. [WmiDataId(18),
  1042. Description("Size of Raw Error Record") : amended
  1043. ]
  1044. uint32 Size;
  1045. [WmiDataId(19),
  1046. WmiSizeIs("Size"),
  1047. Description("Raw Error Record") : amended
  1048. ]
  1049. uint8 RawRecord[];
  1050. };
  1051. [WMI,
  1052. Dynamic,
  1053. Provider("WmiProv"),
  1054. guid("{805CAF4E-336C-4eb2-8C0C-02F351CBF13C}"),
  1055. Description("MCA PCI Platform Component Error Event") : amended
  1056. ]
  1057. class MSMCAEvent_PCIComponentError : WMIEvent
  1058. {
  1059. [key, read]
  1060. string InstanceName;
  1061. boolean Active;
  1062. [WmiDataId(1),
  1063. Description("Unique Id for the error record containing this error") : amended
  1064. ]
  1065. uint64 RecordId;
  1066. [WmiDataId(2),
  1067. ERROR_SEVERITY_QUALIFIERS
  1068. ]
  1069. uint8 ErrorSeverity;
  1070. [WmiDataId(3),
  1071. EVENTLOG_MESSAGE_QUALIFIERS
  1072. ]
  1073. uint32 Type;
  1074. [WmiDataId(4),
  1075. Description("CPU that reported the error") : amended
  1076. ]
  1077. uint32 Cpu;
  1078. [WmiDataId(5),
  1079. Description("Number of additional errors in the record") : amended
  1080. ]
  1081. uint32 AdditionalErrors;
  1082. [WmiDataId(6),
  1083. Description("If zero then this event is not logged to system eventlog") : amended
  1084. ]
  1085. uint32 LogToEventlog;
  1086. [WmiDataId(7),
  1087. Description("Validation bits to indicate the validity of the subsequent fields") : amended,
  1088. BitMap{"0", "1", "2", "3", "4"},
  1089. BitValues{"PCI_COMP_ERROR_STATUS is valid",
  1090. "PCI_COMP_INFO is valid",
  1091. "PCI_COMP_MEM_NUM is valid",
  1092. "PCI_COMP_IO_NUM is valid",
  1093. "PCI_COMP_REGS_DATA_PAIR is valid"} : amended
  1094. ]
  1095. uint64 VALIDATION_BITS;
  1096. [WmiDataId(8),
  1097. Description("Internal Error Code") : amended
  1098. ]
  1099. uint64 PCI_COMP_ERROR_STATUS;
  1100. [WmiDataId(9),
  1101. Description("PCI Component Information - VendorId") : amended
  1102. ]
  1103. uint16 PCI_COMP_INFO_VendorId;
  1104. [WmiDataId(10),
  1105. Description("PCI Component Information - DeviceId") : amended
  1106. ]
  1107. uint16 PCI_COMP_INFO_DeviceId;
  1108. [WmiDataId(11),
  1109. Description("PCI Component Information - Class Code Interface") : amended
  1110. ]
  1111. uint8 PCI_COMP_INFO_ClassCodeInterface;
  1112. [WmiDataId(12),
  1113. Description("PCI Component Information - Class Code SubClass") : amended
  1114. ]
  1115. uint8 PCI_COMP_INFO_ClassCodeSubClass;
  1116. [WmiDataId(13),
  1117. Description("PCI Component Information - Class Code Base Class") : amended
  1118. ]
  1119. uint8 PCI_COMP_INFO_ClassCodeBaseClass;
  1120. [WmiDataId(14),
  1121. Description("PCI Component Information - Function Number") : amended
  1122. ]
  1123. uint8 PCI_COMP_INFO_FunctionNumber;
  1124. [WmiDataId(15),
  1125. Description("PCI Component Information - Device Number") : amended
  1126. ]
  1127. uint8 PCI_COMP_INFO_DeviceNumber;
  1128. [WmiDataId(16),
  1129. Description("PCI Component Information - Bus Number") : amended
  1130. ]
  1131. uint8 PCI_COMP_INFO_BusNumber;
  1132. [WmiDataId(17),
  1133. Description("PCI Component Information - Segment Number") : amended
  1134. ]
  1135. uint8 PCI_COMP_INFO_SegmentNumber;
  1136. [WmiDataId(18),
  1137. Description("Size of Raw Error Record") : amended
  1138. ]
  1139. uint32 Size;
  1140. [WmiDataId(19),
  1141. WmiSizeIs("Size"),
  1142. Description("Raw Error Record") : amended
  1143. ]
  1144. uint8 RawRecord[];
  1145. };
  1146. [WMI,
  1147. Dynamic,
  1148. Provider("WmiProv"),
  1149. guid("{BDBA4B12-8D00-4570-B9B2-3FDECF1D5661}"),
  1150. Description("MCA Platform IPMI System Eventlog Error Event") : amended
  1151. ]
  1152. class MSMCAEvent_SystemEventError : WMIEvent
  1153. {
  1154. [key, read]
  1155. string InstanceName;
  1156. boolean Active;
  1157. [WmiDataId(1),
  1158. Description("Unique Id for the error record containing this error") : amended
  1159. ]
  1160. uint64 RecordId;
  1161. [WmiDataId(2),
  1162. ERROR_SEVERITY_QUALIFIERS
  1163. ]
  1164. uint8 ErrorSeverity;
  1165. [WmiDataId(3),
  1166. EVENTLOG_MESSAGE_QUALIFIERS
  1167. ]
  1168. uint32 Type;
  1169. [WmiDataId(4),
  1170. Description("CPU that reported the error") : amended
  1171. ]
  1172. uint32 Cpu;
  1173. [WmiDataId(5),
  1174. Description("Number of additional errors in the record") : amended
  1175. ]
  1176. uint32 AdditionalErrors;
  1177. [WmiDataId(6),
  1178. Description("If zero then this event is not logged to system eventlog") : amended
  1179. ]
  1180. uint32 LogToEventlog;
  1181. [WmiDataId(7),
  1182. Description("Validation bits to indicate the validity of the subsequent fields") : amended,
  1183. BitMap{"0", "1", "2", "3", "4", "5", "6", "7", "8", "9"},
  1184. BitValues{"SEL_RECORD_ID is valid",
  1185. "SEL_RECORD_TYPE is valid",
  1186. "SEL_GENERATOR_ID is valid",
  1187. "SEL_EVM_REV is valid",
  1188. "SEL_SENSOR_TYPE is valid",
  1189. "SEL_SENSOR_NUM is valid",
  1190. "SEL_EVENT_DIR is valid",
  1191. "SEL_EVENT_DATA1 is valid",
  1192. "SEL_EVENT_DATA2 is valid",
  1193. "SEL_EVENT_DATA3 is valid"} : amended
  1194. ]
  1195. uint64 VALIDATION_BITS;
  1196. [WmiDataId(8),
  1197. Description("Timestamp of the event log") : amended
  1198. ]
  1199. uint64 SEL_TIME_STAMP;
  1200. [WmiDataId(9),
  1201. Description("Record ID used for System Event Log access") : amended
  1202. ]
  1203. uint16 SEL_RECORD_ID;
  1204. [WmiDataId(10),
  1205. Description("Software ID if event was generated by software") : amended
  1206. ]
  1207. uint16 SEL_GENERATOR_ID;
  1208. [WmiDataId(11),
  1209. Description("Indicates the record type") : amended
  1210. ]
  1211. uint8 SEL_RECORD_TYPE;
  1212. [WmiDataId(12),
  1213. Description("The error message format version") : amended
  1214. ]
  1215. uint8 SEL_EVM_REV;
  1216. [WmiDataId(13),
  1217. Description("Sensor type code of the sensor that generated the event") : amended
  1218. ]
  1219. uint8 SEL_SENSOR_TYPE;
  1220. [WmiDataId(14),
  1221. Description("Number of the sensor that generated the event") : amended
  1222. ]
  1223. uint8 SEL_SENSOR_NUM;
  1224. [WmiDataId(15),
  1225. Description("Event Dir") : amended
  1226. ]
  1227. uint8 SEL_EVENT_DIR_TYPE;
  1228. [WmiDataId(16),
  1229. Description("Event Data Field 1") : amended
  1230. ]
  1231. uint8 SEL_DATA1;
  1232. [WmiDataId(17),
  1233. Description("Event Data Field 2") : amended
  1234. ]
  1235. uint8 SEL_DATA2;
  1236. [WmiDataId(18),
  1237. Description("Event Data Field 3") : amended
  1238. ]
  1239. uint8 SEL_DATA3;
  1240. [WmiDataId(19),
  1241. Description("Size of Raw Error Record") : amended
  1242. ]
  1243. uint32 Size;
  1244. [WmiDataId(20),
  1245. WmiSizeIs("Size"),
  1246. Description("Raw Error Record") : amended
  1247. ]
  1248. uint8 RawRecord[];
  1249. };
  1250. [WMI,
  1251. Dynamic,
  1252. Provider("WmiProv"),
  1253. guid("{4184DF1B-EDFE-406b-B172-54C91FBD9BAF}"),
  1254. Description("MCA SMBIOS Error Event") : amended
  1255. ]
  1256. class MSMCAEvent_SMBIOSError : WMIEvent
  1257. {
  1258. [key, read]
  1259. string InstanceName;
  1260. boolean Active;
  1261. [WmiDataId(1),
  1262. Description("Unique Id for the error record containing this error") : amended
  1263. ]
  1264. uint64 RecordId;
  1265. [WmiDataId(2),
  1266. ERROR_SEVERITY_QUALIFIERS
  1267. ]
  1268. uint8 ErrorSeverity;
  1269. [WmiDataId(3),
  1270. EVENTLOG_MESSAGE_QUALIFIERS
  1271. ]
  1272. uint32 Type;
  1273. [WmiDataId(4),
  1274. Description("CPU that reported the error") : amended
  1275. ]
  1276. uint32 Cpu;
  1277. [WmiDataId(5),
  1278. Description("Number of additional errors in the record") : amended
  1279. ]
  1280. uint32 AdditionalErrors;
  1281. [WmiDataId(6),
  1282. Description("If zero then this event is not logged to system eventlog") : amended
  1283. ]
  1284. uint32 LogToEventlog;
  1285. [WmiDataId(7),
  1286. Description("Validation bits to indicate the validity of the subsequent fields") : amended,
  1287. BitMap{"0"},
  1288. BitValues{"SMBIOS_EVENT_TYPE is valid"} : amended
  1289. ]
  1290. uint64 VALIDATION_BITS;
  1291. [WmiDataId(8),
  1292. Description("Event Type") : amended,
  1293. ValueMap{"0", "1", "2", "3", "4", "5", "6", "7",
  1294. "8", "9", "10", "11", "12", "13", "14", "15",
  1295. "16", "17", "18", "19", "20", "21", "22", "23"},
  1296. Values{"Reserved",
  1297. "Single bit ECC memory error",
  1298. "Multiple bit ECC memory error",
  1299. "Parity Memory error",
  1300. "Bus time-out",
  1301. "I/O Channel Check",
  1302. "Software NMI",
  1303. "POST Memory Resize",
  1304. "POST Error",
  1305. "PCI Parity Error",
  1306. "PCI System Error",
  1307. "CPU Failure",
  1308. "EISA FailSafe Timer timeout",
  1309. "Correctable memory log disabled",
  1310. "Logging disabled for a specific event type. Too many errors of the same type received in a short amount of time",
  1311. "Reserved",
  1312. "System limit exceeded (e.g. voltage or temperature threshold exceeded",
  1313. "Asynchronous hardware timer expired and issued a system reset",
  1314. "System configuration information",
  1315. "Hard disk information",
  1316. "System reconfigured",
  1317. "Uncorrectable CPU-complex error",
  1318. "Log Area Reset/Cleared",
  1319. "System boot. If implemented this log entry is guaranteed to be the first one written on any system boot"
  1320. } : amended
  1321. ]
  1322. uint8 SMBIOS_EVENT_TYPE;
  1323. [WmiDataId(9),
  1324. Description("Size of Raw Error Record") : amended
  1325. ]
  1326. uint32 Size;
  1327. [WmiDataId(10),
  1328. WmiSizeIs("Size"),
  1329. Description("Raw Error Record") : amended
  1330. ]
  1331. uint8 RawRecord[];
  1332. };
  1333. [WMI,
  1334. Dynamic,
  1335. Provider("WmiProv"),
  1336. guid("{2D2434AA-EF83-4200-BA24-DE366C415F7B}"),
  1337. Description("MCA Platform Specific Error Event") : amended
  1338. ]
  1339. class MSMCAEvent_PlatformSpecificError : WMIEvent
  1340. {
  1341. [key, read]
  1342. string InstanceName;
  1343. boolean Active;
  1344. [WmiDataId(1),
  1345. Description("Unique Id for the error record containing this error") : amended
  1346. ]
  1347. uint64 RecordId;
  1348. [WmiDataId(2),
  1349. ERROR_SEVERITY_QUALIFIERS
  1350. ]
  1351. uint8 ErrorSeverity;
  1352. [WmiDataId(3),
  1353. EVENTLOG_MESSAGE_QUALIFIERS
  1354. ]
  1355. uint32 Type;
  1356. [WmiDataId(4),
  1357. Description("CPU that reported the error") : amended
  1358. ]
  1359. uint32 Cpu;
  1360. [WmiDataId(5),
  1361. Description("Number of additional errors in the record") : amended
  1362. ]
  1363. uint32 AdditionalErrors;
  1364. [WmiDataId(6),
  1365. Description("If zero then this event is not logged to system eventlog") : amended
  1366. ]
  1367. uint32 LogToEventlog;
  1368. [WmiDataId(7),
  1369. Description("Validation bits to indicate the validity of the subsequent fields") : amended,
  1370. BitMap{"0", "1", "2", "3", "4", "5", "6", "7"},
  1371. BitValues{"PLATFORM_ERROR_STATUS is valid",
  1372. "PLATFORM_ERROR_REQUESTOR_ID is valid",
  1373. "PLATFORM_ERROR_RESPONDER_ID is valid",
  1374. "PLATFORM_ERROR_TARGET_ID is valid",
  1375. "PLATFORM_ERROR_SPECIFIC_DATA is valid",
  1376. "PLATFORM_ERROR_OEM_ID is valid",
  1377. "PLATFORM_ERROR_OEM_DATA_STRUCT is valid",
  1378. "PLATFORM_ERROR_OEM_DEVICE_PATH is valid"
  1379. } : amended
  1380. ]
  1381. uint64 VALIDATION_BITS;
  1382. [WmiDataId(8),
  1383. Description("Platform generic error status") : amended
  1384. ]
  1385. uint64 PLATFORM_ERROR_STATUS;
  1386. [WmiDataId(9),
  1387. Description("Requestor ID at time of the event") : amended
  1388. ]
  1389. uint64 PLATFORM_REQUESTOR_ID;
  1390. [WmiDataId(10),
  1391. Description("Responder ID at time of the event") : amended
  1392. ]
  1393. uint64 PLATFORM_RESPONDER_ID;
  1394. [WmiDataId(11),
  1395. Description("Target ID at the time of the event") : amended
  1396. ]
  1397. uint64 PLATFORM_TARGET_ID;
  1398. [WmiDataId(12),
  1399. Description("OEM specific bus dependent data") : amended
  1400. ]
  1401. uint64 PLATFORM_BUS_SPECIFIC_DATA;
  1402. [WmiDataId(13),
  1403. Description("A unique ID of the component reporting the error") : amended
  1404. ]
  1405. uint8 OEM_COMPONENT_ID[16];
  1406. [WmiDataId(14),
  1407. Description("Size of Raw Error Record") : amended
  1408. ]
  1409. uint32 Size;
  1410. [WmiDataId(15),
  1411. WmiSizeIs("Size"),
  1412. Description("Raw Error Record") : amended
  1413. ]
  1414. uint8 RawRecord[];
  1415. };
  1416. [WMI,
  1417. Dynamic,
  1418. Provider("WmiProv"),
  1419. guid("{477B769B-785C-48dd-A02E-57E051BE7B85}"),
  1420. Description("MCA Non Compliant Error Event") : amended
  1421. ]
  1422. class MSMCAEvent_InvalidError : WMIEvent
  1423. {
  1424. [key, read]
  1425. string InstanceName;
  1426. boolean Active;
  1427. [WmiDataId(1),
  1428. Description("Unique Id for the error record containing this error") : amended
  1429. ]
  1430. uint64 RecordId;
  1431. [WmiDataId(2),
  1432. ERROR_SEVERITY_QUALIFIERS
  1433. ]
  1434. uint8 ErrorSeverity;
  1435. [WmiDataId(3),
  1436. EVENTLOG_MESSAGE_QUALIFIERS
  1437. ]
  1438. uint32 Type;
  1439. [WmiDataId(4),
  1440. Description("CPU that reported the error") : amended
  1441. ]
  1442. uint32 Cpu;
  1443. [WmiDataId(5),
  1444. Description("Number of additional errors in the record") : amended
  1445. ]
  1446. uint32 AdditionalErrors;
  1447. [WmiDataId(6),
  1448. Description("If zero then this event is not logged to system eventlog") : amended
  1449. ]
  1450. uint32 LogToEventlog;
  1451. [WmiDataId(7),
  1452. Description("Size of Raw Error Record") : amended
  1453. ]
  1454. uint32 Size;
  1455. [WmiDataId(8),
  1456. WmiSizeIs("Size"),
  1457. Description("Raw Error Record") : amended
  1458. ]
  1459. uint8 RawRecord[];
  1460. };
  1461. [WMI,
  1462. Dynamic,
  1463. Provider("WmiProv"),
  1464. guid("{84E9DDB6-E233-4dfc-988C-7412C8754FEC}"),
  1465. Description("Memory page has been removed") : amended
  1466. ]
  1467. class MSMCAEvent_MemoryPageRemoved : WMIEvent
  1468. {
  1469. [key, read]
  1470. string InstanceName;
  1471. boolean Active;
  1472. [WmiDataId(1),
  1473. description("Physical Address of memory paged removed from use by OS") : amended,
  1474. read]
  1475. uint64 PhysicalAddress;
  1476. };
  1477. [WMI,
  1478. Description("An MCA/CMC/CPE event") : amended,
  1479. guid("{9E77A308-6B82-4fc1-AB41-0A55867C35C2}")
  1480. ]
  1481. class MSMCAInfo_Entry : MSMCAInfo
  1482. {
  1483. [WmiDataId(1),
  1484. description("Number of bytes in error record") : amended,
  1485. read]
  1486. uint32 Length;
  1487. [WmiDataId(2),
  1488. read,
  1489. description("Error record contents") : amended,
  1490. WmiSizeIs("Length")]
  1491. uint8 Data[];
  1492. };
  1493. [Dynamic, Provider("WMIProv"),
  1494. WMI,
  1495. Description("This contains the raw MCA logs") : amended,
  1496. guid("{23602A8A-DADD-462f-9AE5-30FA2C37DD5B}")
  1497. ]
  1498. class MSMCAInfo_RawMCAData : MSMCAInfo
  1499. {
  1500. [key, read]
  1501. string InstanceName;
  1502. [read] boolean Active;
  1503. [WmiDataId(1),
  1504. description("Number of error records") : amended,
  1505. read]
  1506. uint32 Count;
  1507. [WmiDataId(2),
  1508. read,
  1509. description("Error records") : amended,
  1510. WmiSizeIs("Count")]
  1511. MSMCAInfo_Entry Records[];
  1512. };
  1513. [Dynamic, Provider("WMIProv"),
  1514. WMI,
  1515. Description("This contains a CMC event") : amended,
  1516. guid("{2F1A8A9D-7988-457f-A17A-8979E82043C5}")
  1517. ]
  1518. class MSMCAInfo_RawCMCEvent : WmiEvent
  1519. {
  1520. [key, read]
  1521. string InstanceName;
  1522. [read] boolean Active;
  1523. [WmiDataId(1),
  1524. description("Number of error records") : amended,
  1525. read]
  1526. uint32 Count;
  1527. [WmiDataId(2),
  1528. read,
  1529. description("Error records") : amended,
  1530. WmiSizeIs("Count")]
  1531. MSMCAInfo_Entry Records[];
  1532. };
  1533. [Dynamic, Provider("WMIProv"),
  1534. WMI,
  1535. Description("This contains a MCA event") : amended,
  1536. guid("{2F1A8A9F-7988-457f-A17A-8979E82043C5}")
  1537. ]
  1538. class MSMCAInfo_RawMCAEvent : WmiEvent
  1539. {
  1540. [key, read]
  1541. string InstanceName;
  1542. [read] boolean Active;
  1543. [WmiDataId(1),
  1544. description("Number of error records") : amended,
  1545. read]
  1546. uint32 Count;
  1547. [WmiDataId(2),
  1548. read,
  1549. description("Error records") : amended,
  1550. WmiSizeIs("Count")]
  1551. MSMCAInfo_Entry Records[];
  1552. };
  1553. [Dynamic, Provider("WMIProv"),
  1554. WMI,
  1555. Description("This contains a Corrected Platform event") : amended,
  1556. guid("{6B629D5E-E63C-48a3-9EBB-974227075265}")
  1557. ]
  1558. class MSMCAInfo_RawCorrectedPlatformEvent : WmiEvent
  1559. {
  1560. [key, read]
  1561. string InstanceName;
  1562. [read] boolean Active;
  1563. [WmiDataId(1),
  1564. description("Number of error records") : amended,
  1565. read]
  1566. uint32 Count;
  1567. [WmiDataId(2),
  1568. read,
  1569. description("Error records") : amended,
  1570. WmiSizeIs("Count")]
  1571. MSMCAInfo_Entry Records[];
  1572. };
  1573. //
  1574. // Power management classes
  1575. [abstract]
  1576. class MSPower
  1577. {
  1578. };
  1579. [Dynamic, Provider("WMIProv"),
  1580. WMI,
  1581. Description("The control sets whether the device should dynamically power on and off while the system is working.") : amended,
  1582. guid("827c0a6f-feb0-11d0-bd26-00aa00b7b32a")
  1583. ]
  1584. class MSPower_DeviceEnable : MSPower
  1585. {
  1586. [key, read]
  1587. string InstanceName;
  1588. [read] boolean Active;
  1589. [WmiDataId(1),
  1590. read,
  1591. write] boolean Enable;
  1592. };
  1593. [Dynamic, Provider("WMIProv"),
  1594. WMI,
  1595. Description("This control indicates whether the device should be configured to wake a sleeping system.") : amended,
  1596. guid("a9546a82-feb0-11d0-bd26-00aa00b7b32a")
  1597. ]
  1598. class MSPower_DeviceWakeEnable : MSPower
  1599. {
  1600. [key, read]
  1601. string InstanceName;
  1602. [read] boolean Active;
  1603. [WmiDataId(1),
  1604. read,
  1605. write] boolean Enable;
  1606. };
  1607. //
  1608. // NDIS classes
  1609. [abstract]
  1610. class MSNdis
  1611. {
  1612. };
  1613. [WMI,
  1614. guid("{B5BD98B7-0201-11d1-A50E-00A0C9062910}")]
  1615. class MSNdis_NetworkAddress : MSNdis
  1616. {
  1617. [read, WmiDataId(1),
  1618. DisplayName("Address") : amended
  1619. ]
  1620. uint8 Address[6];
  1621. };
  1622. [WMI,
  1623. guid("{B5BD98B8-0201-11d1-A50E-00A0C9062910}")]
  1624. class MSNdis_NetworkShortAddress : MSNdis
  1625. {
  1626. [read, WmiDataId(1)
  1627. ]
  1628. uint8 Address[2];
  1629. };
  1630. [WMI,
  1631. guid("{60fc6b57-0f66-11d1-96a7-00c04fc3358c}")]
  1632. class MSNdis_NetworkLinkSpeed : MSNdis
  1633. {
  1634. [read, WmiDataId(1)] uint32 Outbound;
  1635. [
  1636. read, WmiDataId(2)] uint32 Inbound;
  1637. };
  1638. ///
  1639. /// GUIDs that do not translate to OIDs
  1640. ///
  1641. ///
  1642. [WMI, Dynamic, Provider("WMIProv"),
  1643. guid("{981f2d7f-b1f3-11d0-8dd7-00c04fc3358c}"),
  1644. WmiExpense(1),
  1645. Description("NDIS Enumerate Adapter") : amended]
  1646. class MSNdis_EnumerateAdapter : MSNdis
  1647. {
  1648. [key, read]
  1649. string InstanceName;
  1650. [read]
  1651. boolean Active;
  1652. [
  1653. read,
  1654. Description("Device name.") : amended,
  1655. WmiDataId(1)] string DeviceName;
  1656. };
  1657. [WMI, Dynamic, Provider("WMIProv"),
  1658. guid("{981f2d80-b1f3-11d0-8dd7-00c04fc3358c}"),
  1659. WmiExpense(1),
  1660. Description("NDIS Notify Adapter Removal") : amended]
  1661. class MSNdis_NotifyAdapterRemoval : WMIEvent
  1662. {
  1663. [key, read]
  1664. string InstanceName;
  1665. [read]
  1666. boolean Active;
  1667. [
  1668. read,
  1669. Description("Device name.") : amended,
  1670. WmiDataId(1)] string DeviceName;
  1671. };
  1672. [WMI, Dynamic, Provider("WMIProv"),
  1673. guid("{981f2d81-b1f3-11d0-8dd7-00c04fc3358c}"),
  1674. WmiExpense(1),
  1675. Description("NDIS Notify Adapter Arrival") : amended]
  1676. class MSNdis_NotifyAdapterArrival : WMIEvent
  1677. {
  1678. [key, read]
  1679. string InstanceName;
  1680. [read]
  1681. boolean Active;
  1682. [
  1683. read,
  1684. Description("Device name.") : amended,
  1685. WmiDataId(1)] string DeviceName;
  1686. };
  1687. [WMI, Dynamic, Provider("WMIProv"),
  1688. guid("{981f2d82-b1f3-11d0-8dd7-00c04fc3358c}"),
  1689. WmiExpense(1),
  1690. Description("NDIS Enumerate VC") : amended]
  1691. class MSNdis_NdisEnumerateVc : MSNdis
  1692. {
  1693. [key, read]
  1694. string InstanceName;
  1695. [read]
  1696. boolean Active;
  1697. };
  1698. [WMI, Dynamic, Provider("WMIProv"),
  1699. guid("{981f2d79-b1f3-11d0-8dd7-00c04fc3358c}"),
  1700. WmiExpense(1),
  1701. Description("NDIS Notify VC Removal") : amended]
  1702. class MSNdis_NotifyVcRemoval : WmiEvent
  1703. {
  1704. [key, read]
  1705. string InstanceName;
  1706. [read]
  1707. boolean Active;
  1708. };
  1709. [WMI, Dynamic, Provider("WMIProv"),
  1710. guid("{182f9e0c-b1f3-11d0-8dd7-00c04fc3358c}"),
  1711. WmiExpense(1),
  1712. Description("NDIS Notify VC Arrival") : amended]
  1713. class MSNdis_NotifyVcArrival : WMIEvent
  1714. {
  1715. [key, read]
  1716. string InstanceName;
  1717. [read]
  1718. boolean Active;
  1719. };
  1720. [WMI, Dynamic, Provider("WMIProv"),
  1721. guid("{a14f1c97-8839-4f8a-9996-a28996ebbf1d}"),
  1722. WmiExpense(1),
  1723. Description("This control decides whether the network device should wake up the system only on receiving a Magic packet") : amended]
  1724. class MSNdis_DeviceWakeOnMagicPacketOnly : MSNdis
  1725. {
  1726. [key, read]
  1727. string InstanceName;
  1728. [read]
  1729. boolean Active;
  1730. [read, write,
  1731. WmiDataId(1)] boolean EnableWakeOnMagicPacketOnly;
  1732. };
  1733. ///
  1734. ///
  1735. /// General GUIDs
  1736. ///
  1737. ///
  1738. [WMI, Dynamic, Provider("WMIProv"),
  1739. guid("{5ec10354-a61a-11d0-8dd4-00c04fc3358c}"),
  1740. WmiExpense(1),
  1741. Description("NDIS Hardware Status") : amended]
  1742. class MSNdis_HardwareStatus : MSNdis
  1743. {
  1744. [key, read]
  1745. string InstanceName;
  1746. [read]
  1747. boolean Active;
  1748. [read,
  1749. Description("Current hardware status of the underlying NIC.") : amended,
  1750. Values{"NdisHardwareStatusReady",
  1751. "NdisHardwareStatusInitializing",
  1752. "NdisHardwareStatusReset",
  1753. "NdisHardwareStatusClosing",
  1754. "NdisHardwarestatusNotReady"} : amended,
  1755. ValueMap{"0",
  1756. "1",
  1757. "2",
  1758. "3",
  1759. "4"},
  1760. WmiDataId(1)] uint32 NdisHardwareStatus;
  1761. //
  1762. // This is of the type:
  1763. // typedef enum _NDIS_HARDWARE_STATUS
  1764. // {
  1765. // NdisHardwareStatusReady,
  1766. // NdisHardwareStatusInitializing,
  1767. // NdisHardwareStatusReset,
  1768. // NdisHardwareStatusClosing,
  1769. // NdisHardwarestatusNotReady
  1770. // } NDIS_HARDWARE_STATUS, *PNDIS_HARDWARE_STATUS;
  1771. //
  1772. };
  1773. [WMI,Dynamic, Provider("WMIProv"),
  1774. guid("{5ec10355-a61a-11d0-8dd4-00c04fc3358c}"),
  1775. WmiExpense(1),
  1776. Description("NDIS Media Types Supported") : amended]
  1777. class MSNdis_MediaSupported : MSNdis
  1778. {
  1779. [key, read]
  1780. string InstanceName;
  1781. [read]
  1782. boolean Active;
  1783. [
  1784. read,
  1785. Description("Number of media types supported.") : amended,
  1786. WmiDataId(1)] uint32 NumberElements;
  1787. [read,
  1788. Description("List of media types the NIC supports.") : amended,
  1789. WmiDataId(2),
  1790. WmiSizeIs("NumberElements")] uint32 NdisMediaSupported[];
  1791. };
  1792. [WMI,Dynamic, Provider("WMIProv"),
  1793. guid("{5ec10356-a61a-11d0-8dd4-00c04fc3358c}"),
  1794. WmiExpense(1),
  1795. Description("NDIS Media Types In Use") : amended]
  1796. class MSNdis_MediaInUse : MSNdis
  1797. {
  1798. [key, read]
  1799. string InstanceName;
  1800. [read]
  1801. boolean Active;
  1802. [
  1803. read,
  1804. Description("Number of media types in use.") : amended,
  1805. WmiDataId(1)] uint32 NumberElements;
  1806. [read,
  1807. Description("List of media types the NIC is currently supporting.") : amended,
  1808. WmiDataId(2),
  1809. WmiSizeIs("NumberElements")] uint32 NdisMediaInUse[];
  1810. };
  1811. [WMI, Dynamic, Provider("WMIProv"),guid("{5ec10357-a61a-11d0-8dd4-00c04fc3358c}"),
  1812. WmiExpense(1),
  1813. Description("NDIS Maximum Lookahead Supported") : amended]
  1814. class MSNdis_MaximumLookahead : MSNdis
  1815. {
  1816. [key, read]
  1817. string InstanceName;
  1818. [read]
  1819. boolean Active;
  1820. [
  1821. read,
  1822. Description("The maximum number of bytes the NIC can always provide as lookahead data.") : amended,
  1823. WmiDataId(1)] uint32 NdisMaximumLookahead;
  1824. };
  1825. [WMI, Dynamic, Provider("WMIProv"),guid("{5ec10358-a61a-11d0-8dd4-00c04fc3358c}"),
  1826. WmiExpense(1),
  1827. Description("NDIS Maximum Frame Size") : amended]
  1828. class MSNdis_MaximumFrameSize : MSNdis
  1829. {
  1830. [key, read]
  1831. string InstanceName;
  1832. [read]
  1833. boolean Active;
  1834. [
  1835. read,
  1836. Description("The maximum network packet size in bytes the NIC supports, not including a header.") : amended,
  1837. WmiDataId(1)] uint32 NdisMaximumFrameSize;
  1838. };
  1839. [WMI, Dynamic, Provider("WMIProv"),guid("{5ec10359-a61a-11d0-8dd4-00c04fc3358c}"),
  1840. WmiExpense(1),
  1841. Description("NDIS Link Speed") : amended]
  1842. class MSNdis_LinkSpeed : MSNdis
  1843. {
  1844. [key, read]
  1845. string InstanceName;
  1846. [read]
  1847. boolean Active;
  1848. [
  1849. read,
  1850. Description("The maximum speed of the NIC (kbps).") : amended,
  1851. WmiDataId(1)] uint32 NdisLinkSpeed;
  1852. };
  1853. [WMI, Dynamic, Provider("WMIProv"),guid("{5ec1035a-a61a-11d0-8dd4-00c04fc3358c}"),
  1854. WmiExpense(1),
  1855. Description("NDIS Transmit Buffer Space") : amended]
  1856. class MSNdis_TransmitBufferSpace : MSNdis
  1857. {
  1858. [key, read]
  1859. string InstanceName;
  1860. [read]
  1861. boolean Active;
  1862. [
  1863. read,
  1864. Description("The amount of memory, in bytes, on the NIC available for buffering transmit data.") : amended,
  1865. WmiDataId(1)] uint32 NdisTransmitBufferSpace;
  1866. };
  1867. [WMI, Dynamic, Provider("WMIProv"), guid("{5ec1035b-a61a-11d0-8dd4-00c04fc3358c}"),
  1868. WmiExpense(1),
  1869. Description("NDIS Receive Buffer Space") : amended]
  1870. class MSNdis_ReceiveBufferSpace : MSNdis
  1871. {
  1872. [key, read]
  1873. string InstanceName;
  1874. [read]
  1875. boolean Active;
  1876. [
  1877. read,
  1878. Description("The amount of memory on the NIC available for buffering receive data.") : amended,
  1879. WmiDataId(1)] uint32 NdisReceiveBufferSpace;
  1880. };
  1881. [WMI, Dynamic, Provider("WMIProv"), guid("{5ec1035c-a61a-11d0-8dd4-00c04fc3358c}"),
  1882. WmiExpense(1),
  1883. Description("NDIS Transmit Block Size") : amended]
  1884. class MSNdis_TransmitBlockSize : MSNdis
  1885. {
  1886. [key, read]
  1887. string InstanceName;
  1888. [read]
  1889. boolean Active;
  1890. [
  1891. read,
  1892. Description("The minimum number of bytes that a single net packet occupies in the transmit buffer space of the NIC.") : amended,
  1893. WmiDataId(1)] uint32 NdisTransmitBlockSize;
  1894. };
  1895. [WMI, Dynamic, Provider("WMIProv"), guid("{5ec1035d-a61a-11d0-8dd4-00c04fc3358c}"),
  1896. Description("NDIS Receive Block Size") : amended]
  1897. class MSNdis_ReceiveBlockSize : MSNdis
  1898. {
  1899. [key, read]
  1900. string InstanceName;
  1901. [read]
  1902. boolean Active;
  1903. [ read,
  1904. Description("The amount of storage, in bytes, that a single packet occupies in the receive buffer space of the NIC.") : amended,
  1905. WmiDataId(1)] uint32 NdisReceiveBlockSize;
  1906. };
  1907. [WMI, Dynamic, Provider("WMIProv"), guid("{5ec1035e-a61a-11d0-8dd4-00c04fc3358c}"),
  1908. WmiExpense(1),
  1909. Description("NDIS Vendor ID") : amended]
  1910. class MSNdis_VendorID : MSNdis
  1911. {
  1912. [key, read]
  1913. string InstanceName;
  1914. [read]
  1915. boolean Active;
  1916. [
  1917. read,
  1918. Description("A three-byte IEEE-registered vendor code, followed by a single byte the vendor assigns to identify a particular NIC.") : amended,
  1919. WmiDataId(1)] uint32 NdisVendorID;
  1920. };
  1921. [WMI, Dynamic, Provider("WMIProv"), guid("{5ec1035f-a61a-11d0-8dd4-00c04fc3358c}"),
  1922. WmiExpense(1),
  1923. Description("NDIS Vendor Description") : amended
  1924. ]
  1925. class MSNdis_VendorDescription : MSNdis
  1926. {
  1927. [key, read]
  1928. string InstanceName;
  1929. [read]
  1930. boolean Active;
  1931. [
  1932. read,
  1933. Description("Zero-terminated string describing the NIC.") : amended,
  1934. WmiDataId(1)] string NdisVendorDescription;
  1935. };
  1936. [WMI, Dynamic, Provider("WMIProv"), guid("{5ec10360-a61a-11d0-8dd4-00c04fc3358c}"),
  1937. WmiExpense(1),
  1938. Description("NDIS Current Packet Filter") : amended]
  1939. class MSNdis_CurrentPacketFilter : MSNdis
  1940. {
  1941. [key, read]
  1942. string InstanceName;
  1943. [read]
  1944. boolean Active;
  1945. [
  1946. read,
  1947. Description("Current packet types that will be received and indicated by the NIC.") : amended,
  1948. WmiDataId(1)] uint32 NdisCurrentPacketFilter;
  1949. //
  1950. // This is an inclusive OR of the following types:
  1951. //
  1952. // NDIS_PACKET_TYPE_DIRECTED 0x00000001
  1953. // NDIS_PACKET_TYPE_MULTICAST 0x00000002
  1954. // NDIS_PACKET_TYPE_ALL_MULTICAST 0x00000004
  1955. // NDIS_PACKET_TYPE_BROADCAST 0x00000008
  1956. // NDIS_PACKET_TYPE_SOURCE_ROUTING 0x00000010
  1957. // NDIS_PACKET_TYPE_PROMISCUOUS 0x00000020
  1958. // NDIS_PACKET_TYPE_SMT 0x00000040
  1959. // NDIS_PACKET_TYPE_ALL_LOCAL 0x00000080
  1960. // NDIS_PACKET_TYPE_GROUP 0x00001000
  1961. // NDIS_PACKET_TYPE_ALL_FUNCTIONAL 0x00002000
  1962. // NDIS_PACKET_TYPE_FUNCTIONAL 0x00004000
  1963. // NDIS_PACKET_TYPE_MAC_FRAME 0x00008000
  1964. //
  1965. };
  1966. [WMI, Dynamic, Provider("WMIProv"), guid("{5ec10361-a61a-11d0-8dd4-00c04fc3358c}"),
  1967. WmiExpense(1),
  1968. Description("NDIS Current Lookahead") : amended]
  1969. class MSNdis_CurrentLookahead : MSNdis
  1970. {
  1971. [key, read]
  1972. string InstanceName;
  1973. [read]
  1974. boolean Active;
  1975. [
  1976. read,
  1977. Description("The number of bytes of received packet data, excluding the header, that will be indicated to the protocol driver.") : amended,
  1978. WmiDataId(1)] uint32 NdisCurrentLookahead;
  1979. };
  1980. [WMI, Dynamic, Provider("WMIProv"), guid("{5ec10362-a61a-11d0-8dd4-00c04fc3358c}"),
  1981. WmiExpense(1),
  1982. Description("NDIS Driver Version") : amended]
  1983. class MSNdis_DriverVersion : MSNdis
  1984. {
  1985. [key, read]
  1986. string InstanceName;
  1987. [read]
  1988. boolean Active;
  1989. [
  1990. read,
  1991. Description("The NDIS version in use by the NIC driver.") : amended,
  1992. WmiDataId(1)] uint16 NdisDriverVersion;
  1993. };
  1994. [WMI, Dynamic, Provider("WMIProv"), guid("{5ec10363-a61a-11d0-8dd4-00c04fc3358c}"),
  1995. WmiExpense(1),
  1996. Description("NDIS Maximum Packet Total Size") : amended]
  1997. class MSNdis_MaximumTotalSize : MSNdis
  1998. {
  1999. [key, read]
  2000. string InstanceName;
  2001. [read]
  2002. boolean Active;
  2003. [
  2004. read,
  2005. Description("The maximum total packet length, in bytes, the NIC supports, including the header.") : amended,
  2006. WmiDataId(1)] uint32 NdisMaximumTotalSize;
  2007. };
  2008. [WMI, Dynamic, Provider("WMIProv"), guid("{5ec10365-a61a-11d0-8dd4-00c04fc3358c}"),
  2009. WmiExpense(1),
  2010. Description("NDIS MAC Options") : amended]
  2011. class MSNdis_MacOptions : MSNdis
  2012. {
  2013. [key, read]
  2014. string InstanceName;
  2015. [read]
  2016. boolean Active;
  2017. [
  2018. read,
  2019. Description("A bitmask that defines optional properties of the underlying driver or its NIC.") : amended,
  2020. WmiDataId(1)] uint32 NdisMacOptions;
  2021. //
  2022. // This is an inclusive OR of the following types:
  2023. //
  2024. // NDIS_MAC_OPTION_COPY_LOOKAHEAD_DATA 0x00000001
  2025. // NDIS_MAC_OPTION_RECEIVE_SERIALIZED 0x00000002
  2026. // NDIS_MAC_OPTION_TRANSFERS_NOT_PEND 0x00000004
  2027. // NDIS_MAC_OPTION_NO_LOOPBACK 0x00000008
  2028. // NDIS_MAC_OPTION_FULL_DUPLEX 0x00000010
  2029. // NDIS_MAC_OPTION_EOTX_INDICATION 0x00000020
  2030. // NDIS_MAC_OPTION_RESERVED 0x80000000
  2031. //
  2032. };
  2033. [WMI, Dynamic, Provider("WMIProv"), guid("{5ec10366-a61a-11d0-8dd4-00c04fc3358c}"),
  2034. WmiExpense(1),
  2035. Description("NDIS Media Connect Status") : amended]
  2036. class MSNdis_MediaConnectStatus : MSNdis
  2037. {
  2038. [key, read]
  2039. string InstanceName;
  2040. [read]
  2041. boolean Active;
  2042. [
  2043. read,
  2044. Description("The connection status of the NIC on the network.") : amended,
  2045. Values{"NdisMediaStateConnected",
  2046. "NdisMediaStateDisconnected"} : amended,
  2047. ValueMap{"0",
  2048. "1"},
  2049. WmiDataId(1)] uint32 NdisMediaConnectStatus;
  2050. //
  2051. //
  2052. //
  2053. // Defines the state of the LAN media
  2054. //
  2055. // typedef enum _NDIS_MEDIA_STATE
  2056. // {
  2057. // NdisMediaStateConnected,
  2058. // NdisMediaStateDisconnected
  2059. // } NDIS_MEDIA_STATE, *PNDIS_MEDIA_STATE;
  2060. //
  2061. //
  2062. };
  2063. [WMI, Dynamic, Provider("WMIProv"), guid("{5ec10367-a61a-11d0-8dd4-00c04fc3358c}"),
  2064. WmiExpense(1),
  2065. Description("NDIS Maximum Send Packets") : amended]
  2066. class MSNdis_MaximumSendPackets : MSNdis
  2067. {
  2068. [key, read]
  2069. string InstanceName;
  2070. [read]
  2071. boolean Active;
  2072. [
  2073. read,
  2074. Description("The maximum number of send packets the MiniportSendPackets function can accept.") : amended,
  2075. WmiDataId(1)] uint32 NdisMaximumSendPackets;
  2076. };
  2077. [WMI, Dynamic, Provider("WMIProv"), guid("{447956f9-a61b-11d0-8dd4-00c04fc3358c}"),
  2078. WmiExpense(1),
  2079. Description("NDIS Vendor's Driver Version") : amended]
  2080. class MSNdis_VendorDriverVersion : MSNdis
  2081. {
  2082. [key, read]
  2083. string InstanceName;
  2084. [read]
  2085. boolean Active;
  2086. [
  2087. read,
  2088. Description("The vendor-assigned version number of the NIC driver.") : amended,
  2089. WmiDataId(1)] uint32 NdisVendorDriverVersion;
  2090. };
  2091. ///
  2092. /// OID_GEN_VLAN_ID:
  2093. ///
  2094. [WMI, Dynamic, Provider("WMIProv"), guid("{765dc702-c5e8-4b67-843b-3f5a4ff2648b}"),
  2095. WmiExpense(1),
  2096. Description("NDIS VLAN Identifier") : amended]
  2097. class MSNdis_VlanIdentifier : MSNdis
  2098. {
  2099. [key, read]
  2100. string InstanceName;
  2101. [read]
  2102. boolean Active;
  2103. [
  2104. read, write,
  2105. Description("The IEEE 802.1Q VLAN ID assigned to this NIC.") : amended,
  2106. WmiDataId(1)] uint32 NdisVlanId;
  2107. };
  2108. //
  2109. // OID_GEN_PHYSICAL_MEDIUM:
  2110. //
  2111. [WMI, Dynamic, Provider("WMIProv"), guid("{418ca16d-3937-4208-940a-ec6196278085}"),
  2112. WmiExpense(1),
  2113. Description("NDIS Physical Medium Type") : amended]
  2114. class MSNdis_PhysicalMediumType : MSNdis
  2115. {
  2116. [key, read]
  2117. string InstanceName;
  2118. [read]
  2119. boolean Active;
  2120. [
  2121. read,
  2122. Description("The physical medium type of the NIC.") : amended,
  2123. WmiDataId(1)] uint32 NdisPhysicalMediumType;
  2124. // Defines the physical medium type of the NIC
  2125. //
  2126. // typedef enum _NDIS_PHYSICAL_MEDIUM
  2127. // {
  2128. //
  2129. // NdisPhysicalMediumUnspecified,
  2130. // NdisPhysicalMediumWirelessLan,
  2131. // NdisPhysicalMediumCableModem,
  2132. // NdisPhysicalMediumPhoneLine,
  2133. // NdisPhysicalMediumPowerLine,
  2134. // NdisPhysicalMediumDSL, // includes ADSL and UADSL (G.Lite)
  2135. // NdisPhysicalMediumFibreChannel,
  2136. // NdisPhysicalMedium1394,
  2137. // NdisPhysicalMediumWirelessWan,
  2138. // NdisPhysicalMediumMax // Not a real physical type, defined as an upper-bound
  2139. // } NDIS_PHYSICAL_MEDIUM, *PNDIS_PHYSICAL_MEDIUM;
  2140. //
  2141. };
  2142. [WMI, Dynamic, Provider("WMIProv"), guid("{447956fa-a61b-11d0-8dd4-00c04fc3358c}"),
  2143. WmiExpense(1),
  2144. Description("NDIS Transmits OK") : amended]
  2145. class MSNdis_TransmitsOk : MSNdis
  2146. {
  2147. [key, read]
  2148. string InstanceName;
  2149. [read]
  2150. boolean Active;
  2151. [
  2152. read,
  2153. Description("The number of frames transmitted without errors.") : amended,
  2154. WmiDataId(1)] uint64 NdisTransmitsOk;
  2155. };
  2156. [WMI, Dynamic, Provider("WMIProv"), guid("{447956fb-a61b-11d0-8dd4-00c04fc3358c}"),
  2157. WmiExpense(1),
  2158. Description("NDIS Receives OK") : amended]
  2159. class MSNdis_ReceivesOk : MSNdis
  2160. {
  2161. [key, read]
  2162. string InstanceName;
  2163. [read]
  2164. boolean Active;
  2165. [
  2166. read,
  2167. Description("The number of frames the NIC receives without errors and indicates to bound protocols.") : amended,
  2168. WmiDataId(1)] uint64 NdisReceivesOk;
  2169. };
  2170. [WMI, Dynamic, Provider("WMIProv"), guid("{447956fc-a61b-11d0-8dd4-00c04fc3358c}"),
  2171. WmiExpense(1),
  2172. Description("NDIS Transmit Errors") : amended]
  2173. class MSNdis_TransmitsError : MSNdis
  2174. {
  2175. [key, read]
  2176. string InstanceName;
  2177. [read]
  2178. boolean Active;
  2179. [
  2180. read,
  2181. Description("The number of frames a NIC fails to transmit.") : amended,
  2182. WmiDataId(1)] uint32 NdisTransmitsError;
  2183. };
  2184. [WMI, Dynamic, Provider("WMIProv"), guid("{447956fd-a61b-11d0-8dd4-00c04fc3358c}"),
  2185. WmiExpense(1),
  2186. Description("NDIS Receive Errors") : amended]
  2187. class MSNdis_ReceiveError : MSNdis
  2188. {
  2189. [key, read]
  2190. string InstanceName;
  2191. [read]
  2192. boolean Active;
  2193. [
  2194. read,
  2195. Description("The number of frames a NIC receives but does not indicate to the protocols due to errors.") : amended,
  2196. WmiDataId(1)] uint32 NdisReceiveError;
  2197. };
  2198. [WMI, Dynamic, Provider("WMIProv"), guid("{447956fe-a61b-11d0-8dd4-00c04fc3358c}"),
  2199. WmiExpense(1),
  2200. Description("NDIS Receive No Buffer") : amended]
  2201. class MSNdis_ReceiveNoBuffer : MSNdis
  2202. {
  2203. [key, read]
  2204. string InstanceName;
  2205. [read]
  2206. boolean Active;
  2207. [ read,
  2208. Description("The number of frames the NIC cannot receive due to lack of NIC receive buffer space.") : amended,
  2209. WmiDataId(1)] uint32 NdisReceiveNoBuffer;
  2210. };
  2211. ///
  2212. ///
  2213. /// CoNDIS general GUIDs
  2214. ///
  2215. ///
  2216. [WMI, Dynamic, Provider("WMIProv"), guid("{791ad192-e35c-11d0-9692-00c04fc3358c}"),
  2217. WmiExpense(1),
  2218. Description("CoNDIS Hardware Status") : amended]
  2219. class MSNdis_CoHardwareStatus : MSNdis
  2220. {
  2221. [key, read]
  2222. string InstanceName;
  2223. [read]
  2224. boolean Active;
  2225. [
  2226. read,
  2227. Description("Current hardware status of the underlying NIC.") : amended,
  2228. WmiDataId(1)] uint32 NdisCoHardwareStatus;
  2229. };
  2230. [WMI, Dynamic, Provider("WMIProv"), guid("{791ad193-e35c-11d0-9692-00c04fc3358c}"),
  2231. WmiExpense(1),
  2232. Description("CoNDIS Media Types Supported") : amended]
  2233. class MSNdis_CoMediaSupported : MSNdis
  2234. {
  2235. [key, read]
  2236. string InstanceName;
  2237. [read]
  2238. boolean Active;
  2239. [
  2240. read,
  2241. Description("Number of media types supported.") : amended,
  2242. WmiDataId(1)] uint32 NumberElements;
  2243. [read,
  2244. Description("List of media types the NIC supports.") : amended,
  2245. WmiDataId(2),
  2246. WmiSizeIs("NumberElements")] uint32 NdisCoMediaSupported[];
  2247. };
  2248. [WMI, Dynamic, Provider("WMIProv"), guid("{791ad194-e35c-11d0-9692-00c04fc3358c}"),
  2249. WmiExpense(1),
  2250. Description("CoNDIS Media Types In Use") : amended]
  2251. class MSNdis_CoMediaInUse : MSNdis
  2252. {
  2253. [key, read]
  2254. string InstanceName;
  2255. [read]
  2256. boolean Active;
  2257. [
  2258. read,
  2259. Description("Number of media types in use.") : amended,
  2260. WmiDataId(1)] uint32 NumberElements;
  2261. [read,
  2262. Description("List of media types the NIC is currently supporting.") : amended,
  2263. WmiDataId(2),
  2264. WmiSizeIs("NumberElements")] uint32 NdisCoMediaInUse[];
  2265. };
  2266. [WMI, Dynamic, Provider("WMIProv"), guid("{791ad195-e35c-11d0-9692-00c04fc3358c}"),
  2267. WmiExpense(1),
  2268. Description("CoNDIS Link Speed") : amended]
  2269. class MSNdis_CoLinkSpeed : MSNdis
  2270. {
  2271. [key, read]
  2272. string InstanceName;
  2273. [read]
  2274. boolean Active;
  2275. [DisplayName("NdisCoLinkSpeed") : amended,
  2276. read,
  2277. Description("The maximum inbound and outbound speeds of the NIC (kbps).") : amended,
  2278. WmiDataId(1)] MSNdis_NetworkLinkSpeed NdisCoLinkSpeed;
  2279. };
  2280. [WMI, Dynamic, Provider("WMIProv"), guid("{791ad196-e35c-11d0-9692-00c04fc3358c}"),
  2281. WmiExpense(1),
  2282. Description("CoNDIS Vendor ID") : amended]
  2283. class MSNdis_CoVendorId : MSNdis
  2284. {
  2285. [key, read]
  2286. string InstanceName;
  2287. [read]
  2288. boolean Active;
  2289. [
  2290. read,
  2291. Description("A three-byte IEEE-registered vendor code, followed by a single byte the vendor assigns to identify a particular NIC.") : amended,
  2292. WmiDataId(1)] uint32 NdisCoVendorID;
  2293. };
  2294. [WMI, Dynamic, Provider("WMIProv"), guid("{791ad197-e35c-11d0-9692-00c04fc3358c}"),
  2295. WmiExpense(1),
  2296. Description("CoNDIS Vendor Description") : amended]
  2297. class MSNdis_CoVendorDescription : MSNdis
  2298. {
  2299. [key, read]
  2300. string InstanceName;
  2301. [read]
  2302. boolean Active;
  2303. [
  2304. read,
  2305. Description("Zero-terminated string describing the NIC.") : amended,
  2306. WmiDataId(1)] string NdisCoVendorDescription;
  2307. };
  2308. [WMI, Dynamic, Provider("WMIProv"), guid("{791ad198-e35c-11d0-9692-00c04fc3358c}"),
  2309. WmiExpense(1),
  2310. Description("CoNDIS Driver Version") : amended]
  2311. class MSNdis_CoDriverVersion : MSNdis
  2312. {
  2313. [key, read]
  2314. string InstanceName;
  2315. [read]
  2316. boolean Active;
  2317. [
  2318. read,
  2319. Description("The NDIS version in use by the NIC driver.") : amended,
  2320. WmiDataId(1)] uint16 NdisCoDriverVersion;
  2321. };
  2322. [WMI, Dynamic, Provider("WMIProv"), guid("{791ad19a-e35c-11d0-9692-00c04fc3358c}"),
  2323. WmiExpense(1),
  2324. Description("CoNDIS MAC Options") : amended]
  2325. class MSNdis_CoMacOptions : MSNdis
  2326. {
  2327. [key, read]
  2328. string InstanceName;
  2329. [read]
  2330. boolean Active;
  2331. [
  2332. read,
  2333. Description("A bitmask that defines optional properties of the underlying driver or its NIC.") : amended,
  2334. WmiDataId(1)] uint32 NdisCoMacOptions;
  2335. //
  2336. //
  2337. // NDIS MAC option bits for OID_GEN_CO_MAC_OPTIONS.
  2338. //
  2339. // #define NDIS_CO_MAC_OPTION_DYNAMIC_LINK_SPEED 0x00000001
  2340. //
  2341. //
  2342. };
  2343. [WMI, Dynamic, Provider("WMIProv"), guid("{791ad19b-e35c-11d0-9692-00c04fc3358c}"),
  2344. WmiExpense(1),
  2345. Description("CoNDIS Media Connect Status") : amended]
  2346. class MSNdis_CoMediaConnectStatus : MSNdis
  2347. {
  2348. [key, read]
  2349. string InstanceName;
  2350. [read]
  2351. boolean Active;
  2352. [
  2353. read,
  2354. Description("The connection status of the NIC on the network.") : amended,
  2355. Values{"NdisMediaStateConnected",
  2356. "NdisMediaStateDisconnected"} : amended,
  2357. ValueMap{"0",
  2358. "1"},
  2359. WmiDataId(1)] uint32 NdisCoMediaConnectStatus;
  2360. //
  2361. //
  2362. //
  2363. // Defines the state of the LAN media
  2364. //
  2365. // typedef enum _NDIS_MEDIA_STATE
  2366. // {
  2367. // NdisMediaStateConnected,
  2368. // NdisMediaStateDisconnected
  2369. // } NDIS_MEDIA_STATE, *PNDIS_MEDIA_STATE;
  2370. //
  2371. };
  2372. [WMI, Dynamic, Provider("WMIProv"), guid("{791ad19c-e35c-11d0-9692-00c04fc3358c}"),
  2373. WmiExpense(1),
  2374. Description("CoNDIS Vendor's Driver Version") : amended]
  2375. class MSNdis_CoVendorDriverVersion : MSNdis
  2376. {
  2377. [key, read]
  2378. string InstanceName;
  2379. [read]
  2380. boolean Active;
  2381. [DisplayName("NdisCoVendorDriverVersion") : amended,
  2382. read,
  2383. Description("The vendor-assigned version number of the NIC driver.") : amended,
  2384. WmiDataId(1)] uint32 NdisCoVendorDriverVersion;
  2385. };
  2386. [WMI, Dynamic, Provider("WMIProv"), guid("{791ad19d-e35c-11d0-9692-00c04fc3358c}"),
  2387. WmiExpense(1),
  2388. Description("CoNDIS Minimum Link Speed") : amended]
  2389. class MSNdis_CoMinimumLinkSpeed : MSNdis
  2390. {
  2391. [key, read]
  2392. string InstanceName;
  2393. [read]
  2394. boolean Active;
  2395. [
  2396. read,
  2397. Description("The maximum inbound and outbound speeds of the NIC (kbps).") : amended,
  2398. WmiDataId(1)] MSNdis_NetworkLinkSpeed NdisCoMinimumLinkSpeed;
  2399. };
  2400. [WMI, Dynamic, Provider("WMIProv"), guid("{0a214805-e35f-11d0-9692-00c04fc3358c}"),
  2401. WmiExpense(1),
  2402. Description("CoNDIS Transmits PDUs OK") : amended]
  2403. class MSNdis_CoTransmitPdusOk : MSNdis
  2404. {
  2405. [key, read]
  2406. string InstanceName;
  2407. [read]
  2408. boolean Active;
  2409. [
  2410. read,
  2411. Description("The number of PDUs transmitted without errors") : amended,
  2412. WmiDataId(1)] uint64 NdisCoTransmitPdusOk;
  2413. };
  2414. [WMI, Dynamic, Provider("WMIProv"), guid("{0a214806-e35f-11d0-9692-00c04fc3358c}"),
  2415. WmiExpense(1),
  2416. Description("CoNDIS Receive PDUs OK") : amended]
  2417. class MSNdis_CoReceivePdusOk : MSNdis
  2418. {
  2419. [key, read]
  2420. string InstanceName;
  2421. [read]
  2422. boolean Active;
  2423. [
  2424. read,
  2425. Description("The number of PDUs the NIC receives without errors and indicates to bound protocols.") : amended,
  2426. WmiDataId(1)] uint64 NdisCoReceivePdusOk;
  2427. };
  2428. [WMI, Dynamic, Provider("WMIProv"), guid("{0a214807-e35f-11d0-9692-00c04fc3358c}"),
  2429. WmiExpense(1),
  2430. Description("CoNDIS Transmit PDU Errors") : amended]
  2431. class MSNdis_CoTransmitPduErrors : MSNdis
  2432. {
  2433. [key, read]
  2434. string InstanceName;
  2435. [read]
  2436. boolean Active;
  2437. [
  2438. read,
  2439. Description("The number of PDUs a NIC fails to transmit.") : amended,
  2440. WmiDataId(1)] uint32 NdisCoTransmitPduErrors;
  2441. };
  2442. [WMI, Dynamic, Provider("WMIProv"), guid("{0a214808-e35f-11d0-9692-00c04fc3358c}"),
  2443. WmiExpense(1),
  2444. Description("CoNDIS Receive PDU Errors") : amended]
  2445. class MSNdis_CoReceivePduErrors : MSNdis
  2446. {
  2447. [key, read]
  2448. string InstanceName;
  2449. [read]
  2450. boolean Active;
  2451. [
  2452. read,
  2453. Description("The number of PDUs a NIC receives but does not indicate to the protocols due to errors.") : amended,
  2454. WmiDataId(1)] uint32 NdisCoReceivePduErrors;
  2455. };
  2456. [WMI, Dynamic, Provider("WMIProv"), guid("{0a214809-e35f-11d0-9692-00c04fc3358c}"),
  2457. WmiExpense(1),
  2458. Description("CoNDIS Receive PDUs No Buffer") : amended]
  2459. class MSNdis_CoReceivePdusNoBuffer : MSNdis
  2460. {
  2461. [key, read]
  2462. string InstanceName;
  2463. [read]
  2464. boolean Active;
  2465. [
  2466. read,
  2467. Description("The number of PDUs the NIC cannot receive due to lack of NIC receive buffer space.") : amended,
  2468. WmiDataId(1)] uint32 NdisCoReceivePdusNoBuffer;
  2469. };
  2470. ///
  2471. ///
  2472. /// ATM media specific GUIDs
  2473. ///
  2474. ///
  2475. [WMI, Dynamic, Provider("WMIProv"), guid("{791ad19e-e35c-11d0-9692-00c04fc3358c}"),
  2476. WmiExpense(1),
  2477. Description("NDIS ATM Supported VC Rates") : amended]
  2478. class MSNdis_AtmSupportedVcRates : MSNdis
  2479. {
  2480. [key, read]
  2481. string InstanceName;
  2482. [read]
  2483. boolean Active;
  2484. [
  2485. read,
  2486. Description("Minimum cell rate supported.") : amended,
  2487. WmiDataId(1)] uint32 MinCellRate;
  2488. [
  2489. read,
  2490. Description("Maximum cell rate supported.") : amended,
  2491. WmiDataId(2)] uint32 MaxCellRate;
  2492. };
  2493. [WMI, Dynamic, Provider("WMIProv"), guid("{791ad19f-e35c-11d0-9692-00c04fc3358c}"),
  2494. WmiExpense(1),
  2495. Description("NDIS ATM Supported Service Category") : amended]
  2496. class MSNdis_AtmSupportedServiceCategory : MSNdis
  2497. {
  2498. [key, read]
  2499. string InstanceName;
  2500. [read]
  2501. boolean Active;
  2502. [
  2503. read,
  2504. Description("Bit mask defining the service categories supported by the hardware.") : amended,
  2505. WmiDataId(1)] uint32 NdisAtmSupportedServiceCategory;
  2506. //
  2507. // This can be a combination of following defines:
  2508. //
  2509. // #define ATM_SERVICE_CATEGORY_CBR 1 // Constant Bit Rate
  2510. // #define ATM_SERVICE_CATEGORY_VBR 2 // Variable Bit Rate
  2511. // #define ATM_SERVICE_CATEGORY_UBR 4 // Unspecified Bit Rate
  2512. // #define ATM_SERVICE_CATEGORY_ABR 8 // Available Bit Rate
  2513. //
  2514. };
  2515. [WMI, Dynamic, Provider("WMIProv"), guid("{791ad1a0-e35c-11d0-9692-00c04fc3358c}"),
  2516. WmiExpense(1),
  2517. Description("NDIS ATM Supported AAL Types") : amended]
  2518. class MSNdis_AtmSupportedAalTypes : MSNdis
  2519. {
  2520. [key, read]
  2521. string InstanceName;
  2522. [read]
  2523. boolean Active;
  2524. [
  2525. read,
  2526. Description("Bit mask defining the AAL types supported by the hardware.") : amended,
  2527. WmiDataId(1)] uint32 NdisAtmSupportedAalTypes;
  2528. //
  2529. // This can be a combination of the following defines:
  2530. //
  2531. // #define AAL_TYPE_AAL0 1
  2532. // #define AAL_TYPE_AAL1 2
  2533. // #define AAL_TYPE_AAL34 4
  2534. // #define AAL_TYPE_AAL5 8
  2535. //
  2536. };
  2537. [WMI, Dynamic, Provider("WMIProv"), guid("{791ad1a1-e35c-11d0-9692-00c04fc3358c}"),
  2538. WmiExpense(1),
  2539. Description("NDIS ATM Hardware Current Address") : amended]
  2540. class MSNdis_AtmHardwareCurrentAddress : MSNdis
  2541. {
  2542. [key, read]
  2543. string InstanceName;
  2544. [read]
  2545. boolean Active;
  2546. [
  2547. read,
  2548. Description("The address of the NIC encoded in the hardware.") : amended,
  2549. WmiDataId(1)] MSNdis_NetworkAddress NdisAtmHardwareCurrentAddress;
  2550. };
  2551. [WMI, Dynamic, Provider("WMIProv"), guid("{791ad1a2-e35c-11d0-9692-00c04fc3358c}"),
  2552. WmiExpense(1),
  2553. Description("NDIS ATM Maximum Active VCs") : amended]
  2554. class MSNdis_AtmMaxActiveVcs : MSNdis
  2555. {
  2556. [key, read]
  2557. string InstanceName;
  2558. [read]
  2559. boolean Active;
  2560. [
  2561. read,
  2562. Description("Maximum number of active VCs the adapter can support.") : amended,
  2563. WmiDataId(1)] uint32 NdisAtmMaxActiveVcs;
  2564. };
  2565. [WMI, Dynamic, Provider("WMIProv"), guid("{791ad1a3-e35c-11d0-9692-00c04fc3358c}"),
  2566. WmiExpense(1),
  2567. Description("NDIS ATM Maximum Active VCI Bits") : amended]
  2568. class MSNdis_AtmMaxActiveVciBits : MSNdis
  2569. {
  2570. [key, read]
  2571. string InstanceName;
  2572. [read]
  2573. boolean Active;
  2574. [
  2575. read,
  2576. Description("The number of bits controllable in the VCI field of the cell header.") : amended,
  2577. WmiDataId(1)] uint32 NdisAtmMaxActiveVciBits;
  2578. };
  2579. [WMI, Dynamic, Provider("WMIProv"), guid("{791ad1a4-e35c-11d0-9692-00c04fc3358c}"),
  2580. WmiExpense(1),
  2581. Description("NDIS ATM Maximum Active VPI Bits") : amended]
  2582. class MSNdis_AtmMaxActiveVpiBits : MSNdis
  2583. {
  2584. [key, read]
  2585. string InstanceName;
  2586. [read]
  2587. boolean Active;
  2588. [
  2589. read,
  2590. Description("The number of bits controllable in the VPI field of the cell header.") : amended,
  2591. WmiDataId(1)] uint32 NdisAtmMaxActiveVpiBits;
  2592. };
  2593. [WMI, Dynamic, Provider("WMIProv"), guid("{791ad1a5-e35c-11d0-9692-00c04fc3358c}"),
  2594. WmiExpense(1),
  2595. Description("NDIS ATM Maximum AAL0 Packet Size") : amended]
  2596. class MSNdis_AtmMaxAal0PacketSize : MSNdis
  2597. {
  2598. [key, read]
  2599. string InstanceName;
  2600. [read]
  2601. boolean Active;
  2602. [
  2603. read,
  2604. Description("Maximum supported size for AAL0 packets.") : amended,
  2605. WmiDataId(1)] uint32 NdisAtmMaxAal0PacketSize;
  2606. };
  2607. [WMI, Dynamic, Provider("WMIProv"), guid("{791ad1a6-e35c-11d0-9692-00c04fc3358c}"),
  2608. WmiExpense(1),
  2609. Description("NDIS ATM Maximum AAL1 Packet Size") : amended]
  2610. class MSNdis_AtmMaxAal1PacketSize : MSNdis
  2611. {
  2612. [key, read]
  2613. string InstanceName;
  2614. [read]
  2615. boolean Active;
  2616. [ read,
  2617. Description("Maximum supported size for AAL1 packets.") : amended,
  2618. WmiDataId(1)] uint32 NdisAtmMaxAal1PacketSize;
  2619. };
  2620. [WMI, Dynamic, Provider("WMIProv"), guid("{791ad1a7-e35c-11d0-9692-00c04fc3358c}"),
  2621. WmiExpense(1),
  2622. Description("NDIS ATM Maximum AAL3/4 Packet Size") : amended]
  2623. class MSNdis_AtmMaxAal34PacketSize : MSNdis
  2624. {
  2625. [key, read]
  2626. string InstanceName;
  2627. [read]
  2628. boolean Active;
  2629. [ read,
  2630. Description("Maximum supported size for AAL3/4 packets.") : amended,
  2631. WmiDataId(1)] uint32 NdisAtmMaxAal34PacketSize;
  2632. };
  2633. [WMI, Dynamic, Provider("WMIProv"), guid("{791ad191-e35c-11d0-9692-00c04fc3358c}"),
  2634. WmiExpense(1),
  2635. Description("NDIS ATM Maximum AAL5 Packet Size") : amended]
  2636. class MSNdis_AtmMaxAal5PacketSize : MSNdis
  2637. {
  2638. [key, read]
  2639. string InstanceName;
  2640. [read]
  2641. boolean Active;
  2642. [
  2643. read,
  2644. Description("Maximum supported size for AAL5 packets.") : amended,
  2645. WmiDataId(1)] uint32 NdisAtmMaxAal5PacketSize;
  2646. };
  2647. [WMI, Dynamic, Provider("WMIProv"), guid("{0a21480a-e35f-11d0-9692-00c04fc3358c}"),
  2648. WmiExpense(1),
  2649. Description("NDIS ATM Receive Cells OK") : amended]
  2650. class MSNdis_AtmReceiveCellsOk : MSNdis
  2651. {
  2652. [key, read]
  2653. string InstanceName;
  2654. [read]
  2655. boolean Active;
  2656. [
  2657. read,
  2658. Description("The number of cells the NIC has received without errors.") : amended,
  2659. WmiDataId(1)] uint64 NdisAtmReceiveCellsOk;
  2660. };
  2661. [WMI, Dynamic, Provider("WMIProv"), guid("{0a21480b-e35f-11d0-9692-00c04fc3358c}"),
  2662. WmiExpense(1),
  2663. Description("NDIS ATM Transmit Cells OK") : amended]
  2664. class MSNdis_AtmTransmitCellsOk : MSNdis
  2665. {
  2666. [key, read]
  2667. string InstanceName;
  2668. [read]
  2669. boolean Active;
  2670. [
  2671. read,
  2672. Description("The number of cells the NIC has transmitted without errors.") : amended,
  2673. WmiDataId(1)] uint64 NdisAtmTransmitCellsOk;
  2674. };
  2675. [WMI, Dynamic, Provider("WMIProv"), guid("{0a21480c-e35f-11d0-9692-00c04fc3358c}"),
  2676. WmiExpense(1),
  2677. Description("NDIS ATM Receive Cells Dropped") : amended]
  2678. class MSNdis_AtmReceiveCellsDropped : MSNdis
  2679. {
  2680. [key, read]
  2681. string InstanceName;
  2682. [read]
  2683. boolean Active;
  2684. [
  2685. read,
  2686. Description("The number of receive cells the NIC has dropped.") : amended,
  2687. WmiDataId(1)] uint64 NdisAtmReceiveCellsDropped;
  2688. };
  2689. ///
  2690. ///
  2691. /// Ethernet specific GUIDs
  2692. ///
  2693. ///
  2694. [WMI, Dynamic, Provider("WMIProv"), guid("{447956ff-a61b-11d0-8dd4-00c04fc3358c}"),
  2695. WmiExpense(1),
  2696. Description("NDIS Ethernet Permanent Address") : amended]
  2697. class MSNdis_EthernetPermanentAddress : MSNdis
  2698. {
  2699. [key, read]
  2700. string InstanceName;
  2701. [read]
  2702. boolean Active;
  2703. [ read,
  2704. Description("The address of the NIC encoded in the hardware.") : amended,
  2705. WmiDataId(1)] MSNdis_NetworkAddress NdisPermanentAddress;
  2706. };
  2707. [WMI, Dynamic, Provider("WMIProv"), guid("{44795700-a61b-11d0-8dd4-00c04fc3358c}"),
  2708. WmiExpense(1),
  2709. Description("NDIS Ethernet Current Address") : amended]
  2710. class MSNdis_EthernetCurrentAddress : MSNdis
  2711. {
  2712. [key, read]
  2713. string InstanceName;
  2714. [read]
  2715. boolean Active;
  2716. [ read,
  2717. Description("The address the NIC is currently using.") : amended,
  2718. WmiDataId(1)] MSNdis_NetworkAddress NdisCurrentAddress;
  2719. };
  2720. [WMI, Dynamic, Provider("WMIProv"), guid("{44795701-a61b-11d0-8dd4-00c04fc3358c}"),
  2721. WmiExpense(1),
  2722. Description("NDIS Ethernet Multicast List") : amended]
  2723. class MSNdis_EthernetMulticastList : MSNdis
  2724. {
  2725. [key, read]
  2726. string InstanceName;
  2727. [read]
  2728. boolean Active;
  2729. [ read,
  2730. Description("Number of multicast addresses enabled on the NIC.") : amended,
  2731. WmiDataId(1)] uint32 NumberElements;
  2732. [read,
  2733. Description("The multicast address list on the NIC enabled for packet reception.") : amended,
  2734. WmiDataId(2),
  2735. WmiSizeIs("NumberElements")] MSNdis_NetworkAddress NdisMulticastList[];
  2736. };
  2737. [WMI, Dynamic, Provider("WMIProv"), guid("{44795702-a61b-11d0-8dd4-00c04fc3358c}"),
  2738. WmiExpense(1),
  2739. Description("Adpater Ethernet Maximum Multicast List Size") : amended]
  2740. class MSNdis_EthernetMaximumMulticastListSize : MSNdis
  2741. {
  2742. [key, read]
  2743. string InstanceName;
  2744. [read]
  2745. boolean Active;
  2746. [
  2747. read,
  2748. Description("The maximum number of multicast addresses the NIC driver can manage.") : amended,
  2749. WmiDataId(1)] uint32 NdisEthernetMaximumMulticastListSize;
  2750. };
  2751. [WMI, Dynamic, Provider("WMIProv"), guid("{44795703-a61b-11d0-8dd4-00c04fc3358c}"),
  2752. WmiExpense(1),
  2753. Description("NDIS Ethernet MAC Options") : amended]
  2754. class MSNdis_EthernetMacOptions : MSNdis
  2755. {
  2756. [key, read]
  2757. string InstanceName;
  2758. [read]
  2759. boolean Active;
  2760. [
  2761. read,
  2762. Description("Features supported by the underlying driver, which could be emulating Ethernet.") : amended,
  2763. WmiDataId(1)] uint32 NdisEthernetMacOptions;
  2764. //
  2765. // Supported values:
  2766. //
  2767. // NDIS_802_3_MAC_OPTION_PRIORITY 0x00000001
  2768. //
  2769. };
  2770. [WMI, Dynamic, Provider("WMIProv"), guid("{44795704-a61b-11d0-8dd4-00c04fc3358c}"),
  2771. WmiExpense(1),
  2772. Description("NDIS Ethernet Receive Error Alignment") : amended]
  2773. class MSNdis_EthernetReceiveErrorAlignment : MSNdis
  2774. {
  2775. [key, read]
  2776. string InstanceName;
  2777. [read]
  2778. boolean Active;
  2779. [
  2780. read,
  2781. Description("The number of frames received with alignment errors.") : amended,
  2782. WmiDataId(1)] uint32 NdisEthernetReceiveErrorAlignment;
  2783. };
  2784. [WMI, Dynamic, Provider("WMIProv"), guid("{44795705-a61b-11d0-8dd4-00c04fc3358c}"),
  2785. WmiExpense(1),
  2786. Description("NDIS Ethernet One Transmit collision") : amended]
  2787. class MSNdis_EthernetOneTransmitCollision : MSNdis
  2788. {
  2789. [key, read]
  2790. string InstanceName;
  2791. [read]
  2792. boolean Active;
  2793. [
  2794. read,
  2795. Description("The number of frames successfully transmitted after exactly one collision.") : amended,
  2796. WmiDataId(1)] uint32 NdisEthernetOneTransmitCollision;
  2797. };
  2798. [WMI, Dynamic, Provider("WMIProv"), guid("{44795706-a61b-11d0-8dd4-00c04fc3358c}"),
  2799. WmiExpense(1),
  2800. Description("NDIS Ethernet More Transmit collisions") : amended]
  2801. class MSNdis_EthernetMoreTransmitCollisions : MSNdis
  2802. {
  2803. [key, read]
  2804. string InstanceName;
  2805. [read]
  2806. boolean Active;
  2807. [
  2808. read,
  2809. Description("The number of frames successfully transmitted after more than one collision.") : amended,
  2810. WmiDataId(1)] uint32 NdisEthernetMoreTransmitCollisions;
  2811. };
  2812. ///
  2813. ///
  2814. /// Token Ring specific GUIDs
  2815. ///
  2816. ///
  2817. [WMI, Dynamic, Provider("WMIProv"), guid("{44795707-a61b-11d0-8dd4-00c04fc3358c}"),
  2818. WmiExpense(1),
  2819. Description("NDIS Token Ring Permanent Address") : amended]
  2820. class MSNdis_TokenRingPermanentAddress : MSNdis
  2821. {
  2822. [key, read]
  2823. string InstanceName;
  2824. [read]
  2825. boolean Active;
  2826. [
  2827. read,
  2828. Description("The address of the NIC encoded in the hardware.") : amended,
  2829. WmiDataId(1)] MSNdis_NetworkAddress NdisPermanentAddress;
  2830. };
  2831. [WMI, Dynamic, Provider("WMIProv"), guid("{44795708-a61b-11d0-8dd4-00c04fc3358c}"),
  2832. WmiExpense(1),
  2833. Description("NDIS Token Ring Current Address") : amended]
  2834. class MSNdis_TokenRingCurrentAddress : MSNdis
  2835. {
  2836. [key, read]
  2837. string InstanceName;
  2838. [read]
  2839. boolean Active;
  2840. [
  2841. read,
  2842. Description("The address the NIC is currently using.") : amended,
  2843. WmiDataId(1)] MSNdis_NetworkAddress NdisCurrentAddress;
  2844. };
  2845. [WMI, Dynamic, Provider("WMIProv"), guid("{44795709-a61b-11d0-8dd4-00c04fc3358c}"),
  2846. WmiExpense(1),
  2847. Description("NDIS Token Ring Current Functional Address") : amended]
  2848. class MSNdis_TokenRingCurrentFunctional : MSNdis
  2849. {
  2850. [key, read]
  2851. string InstanceName;
  2852. [read]
  2853. boolean Active;
  2854. [
  2855. read,
  2856. Description("The functional address enabled on the NIC for packet reception.") : amended,
  2857. WmiDataId(1)] uint32 NdisTokenRingCurrentFunctional;
  2858. };
  2859. [WMI, Dynamic, Provider("WMIProv"), guid("{4479570a-a61b-11d0-8dd4-00c04fc3358c}"),
  2860. WmiExpense(1),
  2861. Description("NDIS Token Ring Current Group Address") : amended]
  2862. class MSNdis_TokenRingCurrentGroup : MSNdis
  2863. {
  2864. [key, read]
  2865. string InstanceName;
  2866. [read]
  2867. boolean Active;
  2868. [
  2869. read,
  2870. Description("The group address enabled on the NIC for packet reception.") : amended,
  2871. WmiDataId(1)] uint32 NdisTokenRingCurrentGroup;
  2872. };
  2873. [WMI, Dynamic, Provider("WMIProv"), guid("{4479570b-a61b-11d0-8dd4-00c04fc3358c}"),
  2874. WmiExpense(1),
  2875. Description("NDIS Token Ring Last Open Status") : amended]
  2876. class MSNdis_TokenRingLastOpenStatus : MSNdis
  2877. {
  2878. [key, read]
  2879. string InstanceName;
  2880. [read]
  2881. boolean Active;
  2882. [
  2883. read,
  2884. Description("The last open error status returned for a protocol's call to NdisOpenAdapter.") : amended,
  2885. WmiDataId(1)] uint32 NdisTokenRingLastOpenStatus;
  2886. };
  2887. [WMI, Dynamic, Provider("WMIProv"), guid("{890a36ec-a61c-11d0-8dd4-00c04fc3358c}"),
  2888. WmiExpense(1),
  2889. Description("NDIS Token Ring Current Ring Status") : amended]
  2890. class MSNdis_TokenRingCurrentRingStatus : MSNdis
  2891. {
  2892. [key, read]
  2893. string InstanceName;
  2894. [read]
  2895. boolean Active;
  2896. [
  2897. read,
  2898. Description("The last ring status indicated with an NDIS_RING_XXX status code.") : amended,
  2899. WmiDataId(1)] uint32 NdisTokenRingCurrentRingStatus;
  2900. //
  2901. // This can be one of the following values:
  2902. //
  2903. // NDIS_RING_SIGNAL_LOSS 0x00008000
  2904. // NDIS_RING_HARD_ERROR 0x00004000
  2905. // NDIS_RING_SOFT_ERROR 0x00002000
  2906. // NDIS_RING_TRANSMIT_BEACON 0x00001000
  2907. // NDIS_RING_LOBE_WIRE_FAULT 0x00000800
  2908. // NDIS_RING_AUTO_REMOVAL_ERROR 0x00000400
  2909. // NDIS_RING_REMOVE_RECEIVED 0x00000200
  2910. // NDIS_RING_COUNTER_OVERFLOW 0x00000100
  2911. // NDIS_RING_SINGLE_STATION 0x00000080
  2912. // NDIS_RING_RING_RECOVERY 0x00000040
  2913. //
  2914. };
  2915. [WMI, Dynamic, Provider("WMIProv"), guid("{acf14032-a61c-11d0-8dd4-00c04fc3358c}"),
  2916. WmiExpense(1),
  2917. Description("NDIS Token Ring Current Ring State.") : amended]
  2918. class MSNdis_TokenRingCurrentRingState : MSNdis
  2919. {
  2920. [key, read]
  2921. string InstanceName;
  2922. [read]
  2923. boolean Active;
  2924. [
  2925. read,
  2926. Description("The state of the NIC driver with repsect to entering the ring.") : amended,
  2927. Values{"NdisRingStateOpened",
  2928. "NdisRingStateClosed",
  2929. "NdisRingStateOpening",
  2930. "NdisRingStateClosing",
  2931. "NdisRingStateOpenFailure",
  2932. "NdisRingStateRingFailure"} : amended,
  2933. ValueMap{"1",
  2934. "2",
  2935. "3",
  2936. "4",
  2937. "5",
  2938. "6"},
  2939. WmiDataId(1)] uint32 NdisTokenRingCurrentRingState;
  2940. //
  2941. // This is defined as follows:
  2942. //
  2943. // typedef enum _NDIS_802_5_RING_STATE
  2944. // {
  2945. // NdisRingStateOpened = 1,
  2946. // NdisRingStateClosed,
  2947. // NdisRingStateOpening,
  2948. // NdisRingStateClosing,
  2949. // NdisRingStateOpenFailure,
  2950. // NdisRingStateRingFailure
  2951. // } NDIS_802_5_RING_STATE, *PNDIS_802_5_RING_STATE;
  2952. //
  2953. };
  2954. [WMI, Dynamic, Provider("WMIProv"), guid("{acf14033-a61c-11d0-8dd4-00c04fc3358c}"),
  2955. WmiExpense(1),
  2956. Description("NDIS Token Ring Line Errors") : amended]
  2957. class MSNdis_TokenRingLineErrors : MSNdis
  2958. {
  2959. [key, read]
  2960. string InstanceName;
  2961. [read]
  2962. boolean Active;
  2963. [
  2964. read,
  2965. Description("Number of frames with an invalid FCS or a code violation.") : amended,
  2966. WmiDataId(1)] uint32 NdisTokenRingLineErrors;
  2967. };
  2968. [WMI, Dynamic, Provider("WMIProv"), guid("{acf14034-a61c-11d0-8dd4-00c04fc3358c}"),
  2969. WmiExpense(1),
  2970. Description("NDIS Token Ring Lost Frames") : amended]
  2971. class MSNdis_TokenRingLostFrames : MSNdis
  2972. {
  2973. [key, read]
  2974. string InstanceName;
  2975. [read]
  2976. boolean Active;
  2977. [
  2978. read,
  2979. Description("The number of frames transmitted that have not circled the ring within the maximum ring latency.") : amended,
  2980. WmiDataId(1)] uint32 NdisTokenRingLostFrames;
  2981. };
  2982. ///
  2983. ///
  2984. /// FDDI specific GUIDs
  2985. ///
  2986. ///
  2987. [WMI, Dynamic, Provider("WMIProv"), guid("{acf14035-a61c-11d0-8dd4-00c04fc3358c}"),
  2988. WmiExpense(1),
  2989. Description("NDIS FDDI Long Permanent Address") : amended]
  2990. class MSNdis_FddiLongPermanentAddress : MSNdis
  2991. {
  2992. [key, read]
  2993. string InstanceName;
  2994. [read]
  2995. boolean Active;
  2996. [
  2997. read,
  2998. Description("The long address of the NIC encoded in the hardware.") : amended,
  2999. WmiDataId(1)] MSNdis_NetworkAddress NdisPermanentAddress;
  3000. };
  3001. [WMI, Dynamic, Provider("WMIProv"), guid("{acf14036-a61c-11d0-8dd4-00c04fc3358c}"),
  3002. WmiExpense(1),
  3003. Description("NDIS FDDI Long Current Address") : amended]
  3004. class MSNdis_FddiLongCurrentAddress : MSNdis
  3005. {
  3006. [key, read]
  3007. string InstanceName;
  3008. [read]
  3009. boolean Active;
  3010. [
  3011. read,
  3012. Description("The long address the NIC is currently using.") : amended,
  3013. WmiDataId(1)] MSNdis_NetworkAddress NdisCurrentAddress;
  3014. };
  3015. [WMI, Dynamic, Provider("WMIProv"), guid("{acf14037-a61c-11d0-8dd4-00c04fc3358c}"),
  3016. WmiExpense(1),
  3017. Description("NDIS FDDI Long Multicast List") : amended]
  3018. class MSNdis_FddiLongMulticastList : MSNdis
  3019. {
  3020. [key, read]
  3021. string InstanceName;
  3022. [read]
  3023. boolean Active;
  3024. [
  3025. read,
  3026. Description("Number of multicast addresses enabled on the NIC.") : amended,
  3027. WmiDataId(1)] uint32 NumberElements;
  3028. [read,
  3029. Description("The multicast long address list on the NIC enabled for packet reception.") : amended,
  3030. WmiDataId(2), WmiSizeIs("NumberElements")]
  3031. MSNdis_NetworkAddress NdisMulticastList[];
  3032. };
  3033. [WMI, Dynamic, Provider("WMIProv"), guid("{acf14038-a61c-11d0-8dd4-00c04fc3358c}"),
  3034. WmiExpense(1),
  3035. Description("NDIS FDDI Long Maximum List Size") : amended]
  3036. class MSNdis_FddiLongMaximumListSize : MSNdis
  3037. {
  3038. [key, read]
  3039. string InstanceName;
  3040. [read]
  3041. boolean Active;
  3042. [
  3043. read,
  3044. Description("The maximum number of multicast long addresses the NIC driver can manage.") : amended,
  3045. WmiDataId(1)] uint32 NdisFddiLongMaximumListSize;
  3046. };
  3047. [WMI, Dynamic, Provider("WMIProv"), guid("{acf14039-a61c-11d0-8dd4-00c04fc3358c}"),
  3048. WmiExpense(1),
  3049. Description("NDIS FDDI Short Permanent Address") : amended]
  3050. class MSNdis_FddiShortPermanentAddress : MSNdis
  3051. {
  3052. [key, read]
  3053. string InstanceName;
  3054. [read]
  3055. boolean Active;
  3056. [
  3057. read,
  3058. Description("The short address of the NIC encoded in the hardware.") : amended,
  3059. WmiDataId(1)] MSNdis_NetworkShortAddress NdisPermanentAddress;
  3060. };
  3061. [WMI, Dynamic, Provider("WMIProv"), guid("{acf1403a-a61c-11d0-8dd4-00c04fc3358c}"),
  3062. WmiExpense(1),
  3063. Description("NDIS FDDI Short Current Address") : amended]
  3064. class MSNdis_FddiShortCurrentAddress : MSNdis
  3065. {
  3066. [key, read]
  3067. string InstanceName;
  3068. [read]
  3069. boolean Active;
  3070. [
  3071. read,
  3072. Description("The short address the NIC is currently using.") : amended,
  3073. WmiDataId(1)] MSNdis_NetworkShortAddress NdisCurrentAddress;
  3074. };
  3075. [WMI, Dynamic, Provider("WMIProv"), guid("{acf1403b-a61c-11d0-8dd4-00c04fc3358c}"),
  3076. WmiExpense(1),
  3077. Description("NDIS FDDI Short Multicast List") : amended]
  3078. class MSNdis_FddiShortMulticastList : MSNdis
  3079. {
  3080. [key, read]
  3081. string InstanceName;
  3082. [read]
  3083. boolean Active;
  3084. [
  3085. read,
  3086. Description("Number of multicast short addresses enabled on the NIC.") : amended,
  3087. WmiDataId(1)] uint32 NumberElements;
  3088. [read,
  3089. Description("The multicast short address list on the NIC enabled for packet reception.") : amended,
  3090. WmiDataId(2),
  3091. WmiSizeIs("NumberElements")] MSNdis_NetworkShortAddress NdisMulticastList[];
  3092. };
  3093. [WMI, Dynamic, Provider("WMIProv"), guid("{acf1403c-a61c-11d0-8dd4-00c04fc3358c}"),
  3094. WmiExpense(1),
  3095. Description("NDIS FDDI Short Maximum List Size") : amended]
  3096. class MSNdis_FddiShortMaximumListSize : MSNdis
  3097. {
  3098. [key, read]
  3099. string InstanceName;
  3100. [read]
  3101. boolean Active;
  3102. [
  3103. read,
  3104. Description("The maximum number of multicast short addresses the NIC driver can manage.") : amended,
  3105. WmiDataId(1)] uint32 NdisFddiShortMaximumListSize;
  3106. };
  3107. [WMI, Dynamic, Provider("WMIProv"), guid("{acf1403d-a61c-11d0-8dd4-00c04fc3358c}"),
  3108. WmiExpense(1),
  3109. Description("NDIS FDDI Attachment Type") : amended]
  3110. class MSNdis_FddiAttachmentType : MSNdis
  3111. {
  3112. [key, read]
  3113. string InstanceName;
  3114. [read]
  3115. boolean Active;
  3116. [
  3117. read,
  3118. Description("Defines the attachment of the NIC to the network.") : amended,
  3119. Values{"NdisFddiTypeIsolated",
  3120. "NdisFddiTypeLocalA",
  3121. "NdisFddiTypeLocalB",
  3122. "NdisFddiTypeLocalAB",
  3123. "NdisFddiTypeLocalS",
  3124. "NdisFddiTypeWrapA",
  3125. "NdisFddiTypeWrapB",
  3126. "NdisFddiTypeWrapAB",
  3127. "NdisFddiTypeWrapS",
  3128. "NdisFddiTypeCWrapA",
  3129. "NdisFddiTypeCWrapB",
  3130. "NdisFddiTypeCWrapS",
  3131. "NdisFddiTypeThrough"} : amended,
  3132. ValueMap{"1",
  3133. "2",
  3134. "3",
  3135. "4",
  3136. "5",
  3137. "6",
  3138. "7",
  3139. "8",
  3140. "9",
  3141. "10",
  3142. "11",
  3143. "12",
  3144. "13"},
  3145. WmiDataId(1)] uint32 NdisFddiAttachmentType;
  3146. //
  3147. // This can be of the following type:
  3148. //
  3149. // typedef enum _NDIS_FDDI_ATTACHMENT_TYPE
  3150. // {
  3151. // NdisFddiTypeIsolated = 1,
  3152. // NdisFddiTypeLocalA,
  3153. // NdisFddiTypeLocalB,
  3154. // NdisFddiTypeLocalAB,
  3155. // NdisFddiTypeLocalS,
  3156. // NdisFddiTypeWrapA,
  3157. // NdisFddiTypeWrapB,
  3158. // NdisFddiTypeWrapAB,
  3159. // NdisFddiTypeWrapS,
  3160. // NdisFddiTypeCWrapA,
  3161. // NdisFddiTypeCWrapB,
  3162. // NdisFddiTypeCWrapS,
  3163. // NdisFddiTypeThrough
  3164. // } NDIS_FDDI_ATTACHMENT_TYPE, *PNDIS_FDDI_ATTACHMENT_TYPE;
  3165. //
  3166. };
  3167. [WMI, Dynamic, Provider("WMIProv"), guid("{acf1403e-a61c-11d0-8dd4-00c04fc3358c}"),
  3168. WmiExpense(1),
  3169. Description("NDIS FDDI Upstream Node Long") : amended]
  3170. class MSNdis_FddiUpstreamNodeLong : MSNdis
  3171. {
  3172. [key, read]
  3173. string InstanceName;
  3174. [read]
  3175. boolean Active;
  3176. [
  3177. read,
  3178. Description("The long address of the station above this NIC on the ring or zero if the address is unknown.") : amended,
  3179. WmiDataId(1)] MSNdis_NetworkAddress NdisFddiUpstreamNodeLong;
  3180. };
  3181. [WMI, Dynamic, Provider("WMIProv"), guid("{acf1403f-a61c-11d0-8dd4-00c04fc3358c}"),
  3182. WmiExpense(1),
  3183. Description("NDIS FDDI Downstream Node Long") : amended]
  3184. class MSNdis_FddiDownstreamNodeLong : MSNdis
  3185. {
  3186. [key, read]
  3187. string InstanceName;
  3188. [read]
  3189. boolean Active;
  3190. [
  3191. read,
  3192. Description("The long address of the station below this NIC on the ring or zero if the address is unknown.") : amended,
  3193. WmiDataId(1)] MSNdis_NetworkAddress NdisFddiDownstreamNodeLong;
  3194. };
  3195. [WMI, Dynamic, Provider("WMIProv"), guid("{acf14040-a61c-11d0-8dd4-00c04fc3358c}"),
  3196. WmiExpense(1),
  3197. Description("NDIS FDDI Frame Errors") : amended]
  3198. class MSNdis_FddiFrameErrors : MSNdis
  3199. {
  3200. [key, read]
  3201. string InstanceName;
  3202. [read]
  3203. boolean Active;
  3204. [
  3205. read,
  3206. Description("The number of frames detected in error by this NIC that have not been detected in error by another device on the ring.") : amended,
  3207. WmiDataId(1)] uint32 NdisFddiFrameErrors;
  3208. };
  3209. [WMI, Dynamic, Provider("WMIProv"), guid("{acf14041-a61c-11d0-8dd4-00c04fc3358c}"),
  3210. WmiExpense(1),
  3211. Description("NDIS FDDI Frames Lost") : amended]
  3212. class MSNdis_FddiFramesLost : MSNdis
  3213. {
  3214. [key, read]
  3215. string InstanceName;
  3216. [read]
  3217. boolean Active;
  3218. [
  3219. read,
  3220. Description("The number of times this NIC detected a format error during frame reception such that the frame was stripped.") : amended,
  3221. WmiDataId(1)] uint32 NdisFddiFramesLost;
  3222. };
  3223. [WMI, Dynamic, Provider("WMIProv"), guid("{acf14042-a61c-11d0-8dd4-00c04fc3358c}"),
  3224. WmiExpense(1),
  3225. Description("NDIS FDDI Ring Management State") : amended]
  3226. class MSNdis_FddiRingManagmentState : MSNdis
  3227. {
  3228. [key, read]
  3229. string InstanceName;
  3230. [read]
  3231. boolean Active;
  3232. [
  3233. read,
  3234. Description("Defines the current state of the Ring Management state machine.") : amended,
  3235. Values{"NdisFddiRingIsolated",
  3236. "NdisFddiRingNonOperational",
  3237. "NdisFddiRingOperational",
  3238. "NdisFddiRingDetect",
  3239. "NdisFddiRingNonOperationalDup",
  3240. "NdisFddiRingOperationalDup",
  3241. "NdisFddiRingDirected",
  3242. "NdisFddiRingTrace"} : amended,
  3243. ValueMap{"1",
  3244. "2",
  3245. "3",
  3246. "4",
  3247. "5",
  3248. "6",
  3249. "7",
  3250. "8"},
  3251. WmiDataId(1)] uint32 NdisFddiRingManagmentState;
  3252. //
  3253. // This can be of the following type:
  3254. //
  3255. // typedef enum _NDIS_FDDI_RING_MGT_STATE
  3256. // {
  3257. // NdisFddiRingIsolated = 1,
  3258. // NdisFddiRingNonOperational,
  3259. // NdisFddiRingOperational,
  3260. // NdisFddiRingDetect,
  3261. // NdisFddiRingNonOperationalDup,
  3262. // NdisFddiRingOperationalDup,
  3263. // NdisFddiRingDirected,
  3264. // NdisFddiRingTrace
  3265. // } NDIS_FDDI_RING_MGT_STATE, *PNDIS_FDDI_RING_MGT_STATE;
  3266. //
  3267. };
  3268. [WMI, Dynamic, Provider("WMIProv"), guid("{acf14043-a61c-11d0-8dd4-00c04fc3358c}"),
  3269. WmiExpense(1),
  3270. Description("NDIS FDDI LCT Failures") : amended]
  3271. class MSNdis_FddiLctFailures : MSNdis
  3272. {
  3273. [key, read]
  3274. string InstanceName;
  3275. [read]
  3276. boolean Active;
  3277. [
  3278. read,
  3279. Description("The count of the consecutive times the link confidence test (LCT) has failed during connection management.") : amended,
  3280. WmiDataId(1)] uint32 NdisFddiLctFailures;
  3281. };
  3282. [WMI, Dynamic, Provider("WMIProv"), guid("{acf14044-a61c-11d0-8dd4-00c04fc3358c}"),
  3283. WmiExpense(1),
  3284. Description("NDIS FDDI LEM Rejects") : amended]
  3285. class MSNdis_FddiLemRejects : MSNdis
  3286. {
  3287. [key, read]
  3288. string InstanceName;
  3289. [read]
  3290. boolean Active;
  3291. [
  3292. read,
  3293. Description("The link error monitor (LEM) count of times that a link was rejected.") : amended,
  3294. WmiDataId(1)] uint32 NdisFddiLemRejects;
  3295. };
  3296. [WMI, Dynamic, Provider("WMIProv"), guid("{acf14045-a61c-11d0-8dd4-00c04fc3358c}"),
  3297. WmiExpense(1),
  3298. Description("NDIS FDDI LConnect State") : amended]
  3299. class MSNdis_FddiLConnectionState : MSNdis
  3300. {
  3301. [key, read]
  3302. string InstanceName;
  3303. [read]
  3304. boolean Active;
  3305. [
  3306. read,
  3307. Description("Defines the state of this port's Physical Connection Management (PCM) state machine.") : amended,
  3308. Values{"NdisFddiStateOff",
  3309. "NdisFddiStateBreak",
  3310. "NdisFddiStateTrace",
  3311. "NdisFddiStateConnect",
  3312. "NdisFddiStateNext",
  3313. "NdisFddiStateSignal",
  3314. "NdisFddiStateJoin",
  3315. "NdisFddiStateVerify",
  3316. "NdisFddiStateActive",
  3317. "NdisFddiStateMaintenance"} : amended,
  3318. ValueMap{"1",
  3319. "2",
  3320. "3",
  3321. "4",
  3322. "5",
  3323. "6",
  3324. "7",
  3325. "8",
  3326. "9",
  3327. "10"},
  3328. WmiDataId(1)] uint32 NdisFddiLConnectionState;
  3329. //
  3330. // This can be of the following type:
  3331. //
  3332. // typedef enum _NDIS_FDDI_LCONNECTION_STATE
  3333. // {
  3334. // NdisFddiStateOff = 1,
  3335. // NdisFddiStateBreak,
  3336. // NdisFddiStateTrace,
  3337. // NdisFddiStateConnect,
  3338. // NdisFddiStateNext,
  3339. // NdisFddiStateSignal,
  3340. // NdisFddiStateJoin,
  3341. // NdisFddiStateVerify,
  3342. // NdisFddiStateActive,
  3343. // NdisFddiStateMaintenance
  3344. // } NDIS_FDDI_LCONNECTION_STATE, *PNDIS_FDDI_LCONNECTION_STATE;
  3345. //
  3346. };
  3347. ///
  3348. ///
  3349. /// Wireless (802.11) specific GUIDs
  3350. ///
  3351. ///
  3352. /// OID_802_11_BSSID:
  3353. ///
  3354. [WMI, Dynamic, Provider("WMIProv"), guid("{2504b6c2-1fa5-11d4-97eb-00c04f79c403}"),
  3355. WmiExpense(1),
  3356. Description("NDIS 802.11 Base Service Set Identifier: the MAC address of the associated access point. Writing this is useful when doing a site survey.") : amended]
  3357. class MSNdis_80211_BaseServiceSetIdentifier : MSNdis
  3358. {
  3359. [key, read]
  3360. string InstanceName;
  3361. [read]
  3362. boolean Active;
  3363. [
  3364. read,
  3365. Description("The 802.11 access point MAC address.") : amended,
  3366. WmiDataId(1)] uint8 Ndis80211MacAddress[6];
  3367. };
  3368. ///
  3369. /// OID_802_11_SSID:
  3370. ///
  3371. [WMI, Dynamic, Provider("WMIProv"), guid("{7d2a90ea-2041-11d4-97eb-00c04f79c403}"),
  3372. WmiExpense(1),
  3373. Description("NDIS 802.11 Service Set Identifier string that identifies a set of interconnected basic service sets. This is a NULL terminated ANSI string upto 32 characters long.") : amended]
  3374. class MSNdis_80211_ServiceSetIdentifier : MSNdis
  3375. {
  3376. [key, read]
  3377. string InstanceName;
  3378. [read]
  3379. boolean Active;
  3380. [
  3381. read,
  3382. Description("SSID string") : amended,
  3383. WmiDataId(1)] uint8 Ndis80211SsId[33];
  3384. };
  3385. ///
  3386. /// Embedded class definition for _NDIS_802_11_NETWORK_TYPE.
  3387. ///
  3388. [WMI, guid("{e779ab61-b9ab-11d4-b675-002048570337}")]
  3389. class MSNdis_80211_NetworkType : MSNdis
  3390. {
  3391. [
  3392. Description("NDIS 802.11 network type") : amended,
  3393. Values{"Ndis802_11FH",
  3394. "Ndis802_11DS"} : amended,
  3395. ValueMap{"0",
  3396. "1"},
  3397. WmiDataId(1)] uint32 Ndis80211NetworkType;
  3398. };
  3399. ///
  3400. /// OID_802_11_NETWORK_TYPES_SUPPORTED:
  3401. ///
  3402. [WMI, Dynamic, Provider("WMIProv"), guid("{8531d6e6-2041-11d4-97eb-00c04f79c403}"),
  3403. WmiExpense(1),
  3404. Description("NDIS 802.11 supported network types") : amended]
  3405. class MSNdis_80211_NetworkTypesSupported : MSNdis
  3406. {
  3407. [key, read]
  3408. string InstanceName;
  3409. [read]
  3410. boolean Active;
  3411. [
  3412. read,
  3413. Description("Number of items in list of 802.11 network types") : amended,
  3414. WmiDataId(1)] uint32 NumberOfItems;
  3415. [
  3416. read,
  3417. Description("List of NDIS 802.11 network types") : amended,
  3418. WmiDataId(2),
  3419. WmiSizeIs("NumberOfItems")]
  3420. MSNdis_80211_NetworkType Ndis80211NetworkTypes[];
  3421. };
  3422. ///
  3423. /// OID_802_11_NETWORK_TYPE_IN_USE:
  3424. ///
  3425. [WMI, Dynamic, Provider("WMIProv"), guid("{857e2326-2041-11d4-97eb-00c04f79c403}"),
  3426. WmiExpense(1),
  3427. Description("NDIS 802.11 network type in use determines whether the station uses Frequency Hopping Spread Spectrum or Direct Sequence Spread Spectrum.") : amended]
  3428. class MSNdis_80211_NetworkTypeInUse : MSNdis
  3429. {
  3430. [key, read]
  3431. string InstanceName;
  3432. [read]
  3433. boolean Active;
  3434. [
  3435. read,
  3436. Description("The 802.11 network type") : amended,
  3437. WmiDataId(1)]
  3438. MSNdis_80211_NetworkType Ndis80211NetworkTypeInUse;
  3439. };
  3440. ///
  3441. /// OID_802_11_POWER_MODE:
  3442. ///
  3443. [WMI, Dynamic, Provider("WMIProv"), guid("{85be837c-2041-11d4-97eb-00c04f79c403}"),
  3444. WmiExpense(1),
  3445. Description("NDIS 802.11 Power Mode") : amended]
  3446. class MSNdis_80211_PowerMode : MSNdis
  3447. {
  3448. [key, read]
  3449. string InstanceName;
  3450. [read]
  3451. boolean Active;
  3452. [
  3453. read,
  3454. Description("The current 802.11 power mode") : amended,
  3455. Values{"Ndis802_11PowerModeCAM",
  3456. "Ndis802_11PowerModeMAX_PSP",
  3457. "Ndis802_11PowerModeFast_PSP"} : amended,
  3458. ValueMap{"0",
  3459. "1",
  3460. "2"},
  3461. WmiDataId(1)] uint32 Ndis80211PowerMode;
  3462. };
  3463. ///
  3464. /// OID_802_11_TX_POWER_LEVEL:
  3465. ///
  3466. [WMI, Dynamic, Provider("WMIProv"), guid("{11e6ba76-2053-11d4-97eb-00c04f79c403}"),
  3467. WmiExpense(1),
  3468. Description("NDIS 802.11 Transmit power level") : amended]
  3469. class MSNdis_80211_TransmitPowerLevel : MSNdis
  3470. {
  3471. [key, read]
  3472. string InstanceName;
  3473. [read]
  3474. boolean Active;
  3475. [
  3476. read,
  3477. Description("The 802.11 transmit power level in mW") : amended,
  3478. WmiDataId(1)] uint32 Ndis80211TransmitPowerLevel;
  3479. };
  3480. ///
  3481. /// OID_802_11_RSSI:
  3482. ///
  3483. [WMI, Dynamic, Provider("WMIProv"), guid("{1507db16-2053-11d4-97eb-00c04f79c403}"),
  3484. WmiExpense(1),
  3485. Description("NDIS 802.11 Received Signal Strength Indication") : amended]
  3486. class MSNdis_80211_ReceivedSignalStrength : MSNdis
  3487. {
  3488. [key, read]
  3489. string InstanceName;
  3490. [read]
  3491. boolean Active;
  3492. [
  3493. read,
  3494. Description("The 802.11 received signal strength in dBm") : amended,
  3495. WmiDataId(1)] sint32 Ndis80211ReceivedSignalStrength;
  3496. };
  3497. ///
  3498. /// OID_802_11_RSSI_TRIGGER:
  3499. ///
  3500. [WMI, Dynamic, Provider("WMIProv"), guid("{155689b8-2053-11d4-97eb-00c04f79c403}"),
  3501. WmiExpense(1),
  3502. Description("NDIS 802.11 Received Signal Strength Indication event trigger. An event of class MSNdis_80211_ReceivedSignalStrengthEvent is generated when the current RSSI goes past the trigger value.") : amended]
  3503. class MSNdis_80211_ReceivedSignalStrengthEventTrigger : MSNdis
  3504. {
  3505. [key, read]
  3506. string InstanceName;
  3507. [read]
  3508. boolean Active;
  3509. [
  3510. read,
  3511. Description("The 802.11 RSSI trigger value in dBm") : amended,
  3512. WmiDataId(1)] sint32 Ndis80211ReceivedSignalStrengthTrigger;
  3513. };
  3514. ///
  3515. /// Embedded class definition for _NDIS_802_11_NETWORK_INFRASTRUCTURE.
  3516. ///
  3517. [WMI, guid("{34e1fa48-b9b6-11d4-b675-002048570337}")]
  3518. class MSNdis_80211_NetworkInfrastructure : MSNdis
  3519. {
  3520. [
  3521. Description("The 802.11 infrastructure mode") : amended,
  3522. Values{"Ndis802_11IBSS",
  3523. "Ndis802_11Infrastructure",
  3524. "Ndis802_11AutoUnknown"},
  3525. ValueMap{"0",
  3526. "1",
  3527. "2"},
  3528. WmiDataId(1)] uint32 Ndis80211NetworkInfrastructure;
  3529. };
  3530. ///
  3531. ///
  3532. /// Embedded class definition for _NDIS_802_11_CONFIGURATION_FH.
  3533. /// This is used with MSNdis_80211_Configuration (below).
  3534. ///
  3535. ///
  3536. [WMI, guid("{4a800b8c-2068-11d4-97eb-00c04f79c403}")]
  3537. class MSNdis_80211_ConfigurationFH : MSNdis
  3538. {
  3539. [
  3540. WmiDataId(1)] uint32 FHLength;
  3541. [
  3542. WmiDataId(2)] uint32 HopPattern;
  3543. [
  3544. WmiDataId(3)] uint32 HopSet;
  3545. [
  3546. WmiDataId(4)] uint32 DwellTime;
  3547. };
  3548. ///
  3549. ///
  3550. /// Embedded class definition for _NDIS_802_11_CONFIGURATION. This
  3551. /// is used with OID_802_11_CONFIGURATION and OID_802_11_BSSID_LIST.
  3552. ///
  3553. ///
  3554. [WMI, guid("{220c16fc-b9a8-11d4-b675-002048570337}")]
  3555. class MSNdis_80211_ConfigurationInfo : MSNdis
  3556. {
  3557. [
  3558. Description("Length of configuration structure") : amended,
  3559. WmiDataId(1)] uint32 ConfigLength;
  3560. [
  3561. Description("Beacon period in Kusec") : amended,
  3562. WmiDataId(2)] uint32 BeaconPeriod;
  3563. [
  3564. Description("Announcement Traffic Indication Message (ATIM) Window in Kusec") : amended,
  3565. WmiDataId(3)] uint32 ATIMWindow;
  3566. [
  3567. Description("Frequency in kHz") : amended,
  3568. WmiDataId(4)] uint32 DSConfig;
  3569. [
  3570. Description("Radio configuration parameters") : amended,
  3571. WmiDataId(5)] MSNdis_80211_ConfigurationFH FHConfig;
  3572. };
  3573. ///
  3574. ///
  3575. /// Embedded class definition for _NDIS_WLAN_BSSID. This is used in
  3576. /// OID_802_11_BSSID_LIST (below).
  3577. ///
  3578. ///
  3579. [WMI, guid("{6929e718-2062-11d4-97eb-00c04f79c403}")]
  3580. class MSNdis_80211_WLanBssId : MSNdis
  3581. {
  3582. [
  3583. WmiDataId(1)] uint32 Ndis80211WLanBssIdLength;
  3584. [
  3585. WmiDataId(2)] uint8 Ndis80211MacAddress[6];
  3586. [
  3587. WmiDataId(3)] uint16 Reserved;
  3588. [
  3589. WmiDataId(4)] uint32 Ndis80211SsIdLength;
  3590. [
  3591. WmiDataId(5)] uint8 Ndis80211SsId[32];
  3592. [
  3593. WmiDataId(6)] uint32 Ndis80211Privacy;
  3594. [
  3595. WmiDataId(7)] uint32 Ndis80211Rssi;
  3596. [
  3597. WmiDataId(8)] MSNdis_80211_NetworkType Ndis80211NetworkTypeInUse;
  3598. [
  3599. WmiDataId(9)] MSNdis_80211_ConfigurationInfo Ndis80211Configuration;
  3600. [
  3601. WmiDataId(10)] MSNdis_80211_NetworkInfrastructure Ndis80211InfrastructureMode;
  3602. [
  3603. WmiDataId(11)] uint8 Ndis80211SupportedRate[8];
  3604. };
  3605. ///
  3606. /// OID_802_11_BSSID_LIST:
  3607. ///
  3608. [WMI, Dynamic, Provider("WMIProv"), guid("{69526f9a-2062-11d4-97eb-00c04f79c403}"),
  3609. WmiExpense(1),
  3610. Description("NDIS 802.11 Base Service Set Identifier list. This is a list of all BSSID in range, their SSID and RSSI.") : amended]
  3611. class MSNdis_80211_BSSIList : MSNdis
  3612. {
  3613. [key, read]
  3614. string InstanceName;
  3615. [read]
  3616. boolean Active;
  3617. [
  3618. read,
  3619. Description("Number of items in list of 802.11 BSSI") : amended,
  3620. WmiDataId(1)] uint32 NumberOfItems;
  3621. [
  3622. read,
  3623. Description("The list of in-range BSSIDs and their properties") : amended,
  3624. WmiDataId(2),
  3625. WmiSizeIs("NumberOfItems")]
  3626. MSNdis_80211_WLanBssId Ndis80211BSSIList[];
  3627. };
  3628. ///
  3629. /// OID_802_11_INFRASTRUCTURE_MODE:
  3630. ///
  3631. [WMI, Dynamic, Provider("WMIProv"), guid("{697d5a7e-2062-11d4-97eb-00c04f79c403}"),
  3632. WmiExpense(1),
  3633. Description("NDIS 802.11 Infrastructure mode - defines how the device connects to the network.") : amended]
  3634. class MSNdis_80211_InfrastructureMode : MSNdis
  3635. {
  3636. [key, read]
  3637. string InstanceName;
  3638. [read]
  3639. boolean Active;
  3640. [
  3641. read,
  3642. WmiDataId(1)] MSNdis_80211_NetworkInfrastructure Ndis80211InfrastructureMode;
  3643. };
  3644. ///
  3645. /// OID_802_11_FRAGMENTATION_THRESHOLD:
  3646. ///
  3647. [WMI, Dynamic, Provider("WMIProv"), guid("{69aaa7c4-2062-11d4-97eb-00c04f79c403}"),
  3648. WmiExpense(1),
  3649. Description("The size beyond which the 802.11 device should fragment packets") : amended]
  3650. class MSNdis_80211_FragmentationThreshold : MSNdis
  3651. {
  3652. [key, read]
  3653. string InstanceName;
  3654. [read]
  3655. boolean Active;
  3656. [
  3657. read,
  3658. Description("The 802.11 fragmentation threshold in bytes") : amended,
  3659. WmiDataId(1)] uint32 Ndis80211FragmentationThreshold;
  3660. };
  3661. ///
  3662. /// OID_802_11_RTS_THRESHOLD:
  3663. ///
  3664. [WMI, Dynamic, Provider("WMIProv"), guid("{0134d07e-2064-11d4-97eb-00c04f79c403}"),
  3665. WmiExpense(1),
  3666. Description("The size beyond which the 802.11 device should invoke the RTS/CTS mechanism") : amended]
  3667. class MSNdis_80211_RTSThreshold : MSNdis
  3668. {
  3669. [key, read]
  3670. string InstanceName;
  3671. [read]
  3672. boolean Active;
  3673. [
  3674. read,
  3675. Description("The 802.11 RTS threshold, in bytes") : amended,
  3676. WmiDataId(1)] uint32 Ndis80211RTSThreshold;
  3677. };
  3678. ///
  3679. /// OID_802_11_NUMBER_OF_ANTENNAS:
  3680. ///
  3681. [WMI, Dynamic, Provider("WMIProv"), guid("{01779336-2064-11d4-97eb-00c04f79c403}"),
  3682. WmiExpense(1),
  3683. Description("The number of antennas on the 802.11 radio.") : amended]
  3684. class MSNdis_80211_NumberOfAntennas : MSNdis
  3685. {
  3686. [key, read]
  3687. string InstanceName;
  3688. [read]
  3689. boolean Active;
  3690. [
  3691. read,
  3692. Description("The number of antennas") : amended,
  3693. WmiDataId(1)] uint32 Ndis80211NumberOfAntennas;
  3694. };
  3695. ///
  3696. /// OID_802_11_RX_ANTENNA_SELECTED:
  3697. ///
  3698. [WMI, Dynamic, Provider("WMIProv"), guid("{01ac07a2-2064-11d4-97eb-00c04f79c403}"),
  3699. WmiExpense(1),
  3700. Description("The antenna selected for receiving on the radio of the 802.11 device") : amended]
  3701. class MSNdis_80211_ReceiveAntennaSelected : MSNdis
  3702. {
  3703. [key, read]
  3704. string InstanceName;
  3705. [read]
  3706. boolean Active;
  3707. [
  3708. read,
  3709. Description("The receive antenna number") : amended,
  3710. WmiDataId(1)] uint32 Ndis80211ReceiveAntennaSelected;
  3711. };
  3712. ///
  3713. /// OID_802_11_TX_ANTENNA_SELECTED:
  3714. ///
  3715. [WMI, Dynamic, Provider("WMIProv"), guid("{01dbb74a-2064-11d4-97eb-00c04f79c403}"),
  3716. WmiExpense(1),
  3717. Description("The antenna selected for transmitting on the radio of the 802.11 device") : amended]
  3718. class MSNdis_80211_TransmitAntennaSelected : MSNdis
  3719. {
  3720. [key, read]
  3721. string InstanceName;
  3722. [read]
  3723. boolean Active;
  3724. [
  3725. read,
  3726. Description("The transmit antenna number") : amended,
  3727. WmiDataId(1)] uint32 Ndis80211TransmitAntennaSelected;
  3728. };
  3729. ///
  3730. /// OID_802_11_SUPPORTED_RATES
  3731. ///
  3732. [WMI, Dynamic, Provider("WMIProv"), guid("{49db8722-2068-11d4-97eb-00c04f79c403}"),
  3733. WmiExpense(1),
  3734. Description("A set of supported NDIS 802.11 data rates in the operational rate set that the radio is capable of running at.") : amended]
  3735. class MSNdis_80211_DataRates : MSNdis
  3736. {
  3737. [key, read]
  3738. string InstanceName;
  3739. [read]
  3740. boolean Active;
  3741. [
  3742. read,
  3743. Description("The list of data rates, in units of 0.5 Mbps") : amended,
  3744. WmiDataId(1)] uint8 Ndis80211DataRate[8];
  3745. };
  3746. ///
  3747. /// OID_802_11_DESIRED_RATES:
  3748. ///
  3749. [WMI, Dynamic, Provider("WMIProv"), guid("{452ee08e-2536-11d4-97eb-00c04f79c403}"),
  3750. WmiExpense(1),
  3751. Description("NDIS 802.11 data rates that are desirable for the radio to operate in.") : amended]
  3752. class MSNdis_80211_DesiredDataRates : MSNdis
  3753. {
  3754. [key, read]
  3755. string InstanceName;
  3756. [read]
  3757. boolean Active;
  3758. [
  3759. read,
  3760. Description("The list of desired data rates, in units of 0.5 Mbps") : amended,
  3761. WmiDataId(1)] uint8 Ndis80211DesiredRate[8];
  3762. };
  3763. ///
  3764. /// OID_802_11_CONFIGURATION:
  3765. ///
  3766. [WMI, Dynamic, Provider("WMIProv"), guid("{4a4df982-2068-11d4-97eb-00c04f79c403}"),
  3767. WmiExpense(1),
  3768. Description("NDIS 802.11 device radio configuration parameters") : amended]
  3769. class MSNdis_80211_Configuration : MSNdis
  3770. {
  3771. [key, read]
  3772. string InstanceName;
  3773. [read]
  3774. boolean Active;
  3775. [
  3776. read,
  3777. WmiDataId(1)] MSNdis_80211_ConfigurationInfo Ndis80211Config;
  3778. };
  3779. ///
  3780. /// OID_802_11_STATISTICS:
  3781. ///
  3782. [WMI, Dynamic, Provider("WMIProv"), guid("{42bb73b0-2129-11d4-97eb-00c04f79c403}"),
  3783. WmiExpense(1),
  3784. Description("NDIS 802.11 device statistics") : amended]
  3785. class MSNdis_80211_Statistics : MSNdis
  3786. {
  3787. [key, read]
  3788. string InstanceName;
  3789. [read]
  3790. boolean Active;
  3791. [
  3792. read,
  3793. Description("Length of the statistics structure") : amended,
  3794. WmiDataId(1)] uint32 StatisticsLength;
  3795. [
  3796. read,
  3797. Description("Number of transmitted fragments") : amended,
  3798. WmiDataId(2)] uint64 TransmittedFragmentCount;
  3799. [
  3800. read,
  3801. Description("Number of transmitted multicast frames") : amended,
  3802. WmiDataId(3)] uint64 MulticastTransmittedFrameCount;
  3803. [
  3804. read,
  3805. Description("Number of failures") : amended,
  3806. WmiDataId(4)] uint64 FailedCount;
  3807. [
  3808. read,
  3809. Description("Number of retries") : amended,
  3810. WmiDataId(5)] uint64 RetryCount;
  3811. [
  3812. read,
  3813. Description("Number of multiple retries") : amended,
  3814. WmiDataId(6)] uint64 MultipleRetryCount;
  3815. [
  3816. read,
  3817. Description("Number of Request To Send success") : amended,
  3818. WmiDataId(7)] uint64 RTSSuccessCount;
  3819. [
  3820. read,
  3821. Description("Number of Request To Send failures") : amended,
  3822. WmiDataId(8)] uint64 RTSFailureCount;
  3823. [
  3824. read,
  3825. Description("Number of Acknowledgement failures") : amended,
  3826. WmiDataId(9)] uint64 ACKFailureCount;
  3827. [
  3828. read,
  3829. Description("Number of duplicate frames") : amended,
  3830. WmiDataId(10)] uint64 FrameDuplicateCount;
  3831. [
  3832. read,
  3833. Description("Number of received fragments") : amended,
  3834. WmiDataId(11)] uint64 ReceivedFragmentCount;
  3835. [
  3836. read,
  3837. Description("Number of received multicast frames") : amended,
  3838. WmiDataId(12)] uint64 MulticastReceivedFrameCount;
  3839. [
  3840. read,
  3841. Description("Number of frame checksum errors") : amended,
  3842. WmiDataId(13)] uint64 FCSErrorCount;
  3843. };
  3844. ///
  3845. /// OID_802_11_ADD_WEP:
  3846. ///
  3847. [WMI, Dynamic, Provider("WMIProv"), guid("{4307bff0-2129-11d4-97eb-00c04f79c403}"),
  3848. WmiExpense(1),
  3849. Description("Set a WEP key to the NDIS 802.11 device") : amended]
  3850. class MSNdis_80211_AddWEP : MSNdis
  3851. {
  3852. [key, read]
  3853. string InstanceName;
  3854. [read]
  3855. boolean Active;
  3856. [
  3857. write,
  3858. Description("Length of 802.11 WEP structure") : amended,
  3859. WmiDataId(1)] uint32 Length;
  3860. [
  3861. write,
  3862. Description("WEP key index") : amended,
  3863. WmiDataId(2)] uint32 KeyIndex;
  3864. [
  3865. write,
  3866. Description("WEP key length in bytes") : amended,
  3867. WmiDataId(3)] uint32 KeyLength;
  3868. [
  3869. write,
  3870. Description("WEP key index") : amended,
  3871. WmiDataId(4), WmiSizeIs("KeyLength")]
  3872. uint8 KeyMaterial[];
  3873. };
  3874. ///
  3875. /// OID_802_11_REMOVE_WEP:
  3876. ///
  3877. [WMI, Dynamic, Provider("WMIProv"), guid("{433c345c-2129-11d4-97eb-00c04f79c403}"),
  3878. WmiExpense(1),
  3879. Description("Remove a WEP key on the NDIS 802.11 device") : amended]
  3880. class MSNdis_80211_RemoveWEP : MSNdis
  3881. {
  3882. [key, read]
  3883. string InstanceName;
  3884. [read]
  3885. boolean Active;
  3886. [
  3887. write,
  3888. Description("The NDIS 802.11 WEP key index") : amended,
  3889. WmiDataId(1)] uint32 Ndis80211KeyIndex;
  3890. };
  3891. ///
  3892. /// OID_802_11_DISASSOCIATE:
  3893. ///
  3894. [WMI, Dynamic, Provider("WMIProv"), guid("{43671f40-2129-11d4-97eb-00c04f79c403}"),
  3895. WmiExpense(1),
  3896. Description("Disassociate the NDIS 802.11 device with the current SSID") : amended]
  3897. class MSNdis_80211_Disassociate : MSNdis
  3898. {
  3899. [key, read]
  3900. string InstanceName;
  3901. [read]
  3902. boolean Active;
  3903. [
  3904. write,
  3905. Description("Unused parameter") : amended,
  3906. WmiDataId(1)] uint32 UnusedParameter;
  3907. };
  3908. ///
  3909. /// OID_802_11_BSSID_LIST_SCAN:
  3910. ///
  3911. [WMI, Dynamic, Provider("WMIProv"), guid("{0d9e01e1-ba70-11d4-b675-002048570337}"),
  3912. WmiExpense(1),
  3913. Description("Perform a survey to refresh the NDIS 802.11 BSS list") : amended]
  3914. class MSNdis_80211_BssIdListScan : MSNdis
  3915. {
  3916. [key, read]
  3917. string InstanceName;
  3918. [read]
  3919. boolean Active;
  3920. [
  3921. write,
  3922. Description("Unused parameter") : amended,
  3923. WmiDataId(1)] uint32 UnusedParameter;
  3924. };
  3925. ///
  3926. /// OID_802_11_AUTHENTICATION_MODE:
  3927. ///
  3928. [WMI, Dynamic, Provider("WMIProv"), guid("{43920a24-2129-11d4-97eb-00c04f79c403}"),
  3929. WmiExpense(1),
  3930. Description("NDIS 802.11 Authentication Mode") : amended]
  3931. class MSNdis_80211_AuthenticationMode : MSNdis
  3932. {
  3933. [key, read]
  3934. string InstanceName;
  3935. [read]
  3936. boolean Active;
  3937. [
  3938. read,
  3939. Description("NDIS 802.11 authentication mode setting") : amended,
  3940. Values{"Ndis802_11AuthModeOpen",
  3941. "Ndis802_11AuthModeShared",
  3942. "Ndis802_11AuthModeAutoSwitch"},
  3943. ValueMap{"0",
  3944. "1",
  3945. "2"},
  3946. WmiDataId(1)] uint32 Ndis80211AuthenticationMode;
  3947. };
  3948. ///
  3949. /// OID_802_11_PRIVACY_FILTER:
  3950. ///
  3951. [WMI, Dynamic, Provider("WMIProv"), guid("{6733c4e9-4792-11d4-97f1-00c04f79c403}"),
  3952. WmiExpense(1),
  3953. Description("NDIS 802.11 Privacy Filter") : amended]
  3954. class MSNdis_80211_PrivacyFilter : MSNdis
  3955. {
  3956. [key, read]
  3957. string InstanceName;
  3958. [read]
  3959. boolean Active;
  3960. [
  3961. read,
  3962. Description("NDIS 802.11 privacy filter setting") : amended,
  3963. Values{"Ndis802_11PrivFilterAcceptAll",
  3964. "Ndis802_11PrivFilter8021xWEP"},
  3965. ValueMap{"0",
  3966. "1"},
  3967. WmiDataId(1)] uint32 Ndis80211PrivacyFilter;
  3968. };
  3969. ///
  3970. /// OID_802_11_WEP_STATUS:
  3971. ///
  3972. [WMI, Dynamic, Provider("WMIProv"), guid("{b027a21f-3cfa-4125-800b-3f7a18fddcdc}"),
  3973. WmiExpense(1),
  3974. Description("NDIS 802.11 WEP Status") : amended]
  3975. class MSNdis_80211_WEPStatus : MSNdis
  3976. {
  3977. [key, read]
  3978. string InstanceName;
  3979. [read]
  3980. boolean Active;
  3981. [
  3982. read,
  3983. Description("NDIS 802.11 WEP Status setting") : amended,
  3984. Values{"Ndis802_11WEPEnabled",
  3985. "Ndis802_11WEPDisabled",
  3986. "Ndis802_11WEPKeyAbsent",
  3987. "Ndis802_11WEPNotSupported"},
  3988. ValueMap{"0",
  3989. "1",
  3990. "2",
  3991. "3"},
  3992. WmiDataId(1)] uint32 Ndis80211WEPStatus;
  3993. };
  3994. ///
  3995. /// OID_802_11_RELOAD_DEFAULTS:
  3996. ///
  3997. [WMI, Dynamic, Provider("WMIProv"), guid("{748b14e8-32ee-4425-b91b-c9848c58b55a}"),
  3998. WmiExpense(1),
  3999. Description("NDIS 802.11 Reload Default Settings") : amended]
  4000. class MSNdis_80211_ReloadDefaults : MSNdis
  4001. {
  4002. [key, read]
  4003. string InstanceName;
  4004. [read]
  4005. boolean Active;
  4006. [
  4007. write,
  4008. Description("The parameter(s) to be reloaded to default settings") : amended,
  4009. Values{"Ndis802_11ReloadWEPKeys"} : amended,
  4010. ValueMap{"0"},
  4011. WmiDataId(1)] uint32 Ndis80211ReloadDefaults;
  4012. };
  4013. ///
  4014. ///
  4015. /// NDIS status specific GUIDs
  4016. ///
  4017. ///
  4018. [WMI, Dynamic, Provider("WMIProv"), guid("{981f2d76-b1f3-11d0-8dd7-00c04fc3358c}"),
  4019. WmiExpense(1),
  4020. Description("NDIS Status Reset Start") : amended]
  4021. class MSNdis_StatusResetStart : WMIEvent
  4022. {
  4023. [key, read]
  4024. string InstanceName;
  4025. [read]
  4026. boolean Active;
  4027. };
  4028. [WMI, Dynamic, Provider("WMIProv"), guid("{981f2d77-b1f3-11d0-8dd7-00c04fc3358c}"),
  4029. WmiExpense(1),
  4030. Description("NDIS Status Reset End") : amended]
  4031. class MSNdis_StatusResetEnd : WMIEvent
  4032. {
  4033. [key, read]
  4034. string InstanceName;
  4035. [read]
  4036. boolean Active;
  4037. };
  4038. [WMI, Dynamic, Provider("WMIProv"), guid("{981f2d7d-b1f3-11d0-8dd7-00c04fc3358c}"),
  4039. WmiExpense(1),
  4040. Description("NDIS Status Media Connect") : amended]
  4041. class MSNdis_StatusMediaConnect : WMIEvent
  4042. {
  4043. [key, read]
  4044. string InstanceName;
  4045. [read]
  4046. boolean Active;
  4047. };
  4048. [WMI, Dynamic, Provider("WMIProv"), guid("{981f2d7e-b1f3-11d0-8dd7-00c04fc3358c}"),
  4049. WmiExpense(1),
  4050. Description("NDIS Status Media Disconnect") : amended]
  4051. class MSNdis_StatusMediaDisconnect : WMIEvent
  4052. {
  4053. [key, read]
  4054. string InstanceName;
  4055. [read]
  4056. boolean Active;
  4057. };
  4058. [WMI, Dynamic, Provider("WMIProv"), guid("{981f2d84-b1f3-11d0-8dd7-00c04fc3358c}"),
  4059. WmiExpense(1),
  4060. Description("NDIS Status Media Specific Indication") : amended]
  4061. class MSNdis_StatusMediaSpecificIndication : WMIEvent
  4062. {
  4063. [key, read]
  4064. string InstanceName;
  4065. [read]
  4066. boolean Active;
  4067. [
  4068. read,
  4069. Description("Number of bytes for media specific status indication") : amended,
  4070. WmiDataId(1)] uint32 NumberElements;
  4071. [read,
  4072. Description("Media specific status information.") : amended,
  4073. WmiDataId(2), WmiSizeIs("NumberElements")] uint8 NdisStatusMediaSpecificIndication[];
  4074. };
  4075. [WMI, Dynamic, Provider("WMIProv"), guid("{981f2d85-b1f3-11d0-8dd7-00c04fc3358c}"),
  4076. WmiExpense(1),
  4077. Description("NDIS Status Link Speed Change") : amended]
  4078. class MSNdis_StatusLinkSpeedChange : WMIEvent
  4079. {
  4080. [key, read]
  4081. string InstanceName;
  4082. [read]
  4083. boolean Active;
  4084. [
  4085. read,
  4086. Description("New inbound and outbound link speeds for the adapter.") : amended,
  4087. WmiDataId(1)] MSNdis_NetworkLinkSpeed NdisStatusLinkSpeedChange;
  4088. };
  4089. [WMI, Dynamic, Provider("WMIProv"),
  4090. guid("{5413531c-b1f3-11d0-d78d-00c04fc3358c}"),
  4091. WmiExpense(1),
  4092. Description("NDIS Protocol Bind Notification") : amended]
  4093. class MSNdis_StatusProtocolBind : WMIEvent
  4094. {
  4095. [key, read]
  4096. string InstanceName;
  4097. [read]
  4098. boolean Active;
  4099. [
  4100. read,
  4101. Description("Name of transport bound") : amended,
  4102. WmiDataId(1)] string Transport;
  4103. };
  4104. [WMI, Dynamic, Provider("WMIProv"),
  4105. guid("{6e3ce1ec-b1f3-11d0-d78d-00c04fc3358c}"),
  4106. WmiExpense(1),
  4107. Description("NDIS Protocol Unbind Notification") : amended]
  4108. class MSNdis_StatusProtocolUnbind : WMIEvent
  4109. {
  4110. [key, read]
  4111. string InstanceName;
  4112. [read]
  4113. boolean Active;
  4114. [
  4115. read,
  4116. Description("Name of transport unbound") : amended,
  4117. WmiDataId(1)] string Transport;
  4118. };
  4119. [WMI, Dynamic, Provider("WMIProv"),
  4120. guid("{5f81cfd0-f046-4342-61af-895acedaefd9}"),
  4121. WmiExpense(1),
  4122. Description("NDIS Device Power On Notification") : amended]
  4123. class MSNdis_StatusDevicePowerOn : WMIEvent
  4124. {
  4125. [key, read]
  4126. string InstanceName;
  4127. [read]
  4128. boolean Active;
  4129. [
  4130. read,
  4131. Description("Name of device powered on") : amended,
  4132. WmiDataId(1)] string Device;
  4133. };
  4134. [WMI, Dynamic, Provider("WMIProv"),
  4135. guid("{81bc8189-b026-46ab-64b9-f182e342934e}"),
  4136. WmiExpense(1),
  4137. Description("NDIS Device Power Off Notification") : amended]
  4138. class MSNdis_StatusDevicePowerOff : WMIEvent
  4139. {
  4140. [key, read]
  4141. string InstanceName;
  4142. [read]
  4143. boolean Active;
  4144. [
  4145. read,
  4146. Description("Name of device powered off") : amended,
  4147. WmiDataId(1)] string Device;
  4148. };
  4149. //
  4150. // Keyboard and Mouse
  4151. [abstract]
  4152. class MSKeyboard
  4153. {
  4154. };
  4155. class MSMouse
  4156. {
  4157. };
  4158. [Dynamic, Provider("WMIProv"),
  4159. WMI,
  4160. Description("Keyboard port driver information") : amended,
  4161. guid("{4731F89A-71CB-11d1-A52C-00A0C9062910}"),
  4162. GuidName1("KEYBOARD_PORT_WMI_STD_DATA_GUID"),
  4163. HeaderName("KEYBOARD_PORT_WMI_STD_DATA"),
  4164. DisplayName("Keyboard Port Information") : amended
  4165. ]
  4166. class MSKeyboard_PortInformation : MSKeyboard
  4167. {
  4168. [key, read]
  4169. string InstanceName;
  4170. [read] boolean Active;
  4171. [DisplayName("Connector Type") : amended,
  4172. WmiDataId(1),
  4173. read,
  4174. Values{"I8042 Connector"
  4175. "Serial Connector",
  4176. "USB Connector" } : amended,
  4177. ValueMap{"0",
  4178. "1",
  4179. "2" },
  4180. DefineValues{"KEYBOARD_PORT_WMI_STD_I8042",
  4181. "KEYBOARD_PORT_WMI_STD_SERIAL",
  4182. "KEYBOARD_PORT_WMI_STD_USB"},
  4183. Description("How the keyboard is connected to the computer") : amended]
  4184. uint32 ConnectorType;
  4185. [DisplayName("Data Queue Size") : amended,
  4186. WmiDataId(2),
  4187. read,
  4188. Description("The DataQueueSize property indicates the size of the data queue.") : amended]
  4189. uint32 DataQueueSize;
  4190. [DisplayName("Error Count") : amended,
  4191. WmiDataId(3),
  4192. read,
  4193. Description("Number of errors that occured on this device") : amended]
  4194. uint32 ErrorCount;
  4195. [DisplayName("Number of Function Keys") : amended,
  4196. WmiDataId(4),
  4197. read,
  4198. Description("The NumberOfFunctionKeys property indicates the number of function keys on the keyboard.") : amended]
  4199. uint32 FunctionKeys;
  4200. [DisplayName("Number of Indicators") : amended,
  4201. WmiDataId(5),
  4202. read,
  4203. Description("The NumberOfIndicators property indicates the number of indicator leds on the keyboard.") : amended]
  4204. uint32 Indicators;
  4205. };
  4206. [Dynamic, Provider("WMIProv"),
  4207. WMI,
  4208. Description("Keyboard port extended ID") : amended,
  4209. guid("{6ac4e23d-a950-4518-8b2b-aa4dcd5fe14a}"),
  4210. GuidName1("KEYBOARD_PORT_WMI_EXTENDED_ID"),
  4211. HeaderName("KEYBOARD_ID_EX"),
  4212. DisplayName("Keyboard Extended ID Information") : amended
  4213. ]
  4214. class MSKeyboard_ExtendedID : MSKeyboard
  4215. {
  4216. [key, read]
  4217. string InstanceName;
  4218. [read] boolean Active;
  4219. [DisplayName("Extended Type") : amended,
  4220. WmiDataId(1),
  4221. read,
  4222. Description("The Extended Type property indicates a 32 bit type identifier for the keyboard.") : amended]
  4223. uint32 Type;
  4224. [DisplayName("Extended Subtype") : amended,
  4225. WmiDataId(2),
  4226. read,
  4227. Description("The Extended Type property indicates a 32 bit subtype identifier for the keyboard.") : amended]
  4228. uint32 Subtype;
  4229. };
  4230. [Dynamic, Provider("WMIProv"),
  4231. WMI,
  4232. Description("Mouse port driver information") : amended,
  4233. guid("{4731F89C-71CB-11d1-A52C-00A0C9062910}"),
  4234. GuidName1("POINTER_PORT_WMI_STD_DATA_GUID"),
  4235. HeaderName("POINTER_PORT_WMI_STD_DATA"),
  4236. DisplayName("Mouse Port Information") : amended
  4237. ]
  4238. class MSMouse_PortInformation : MSMouse
  4239. {
  4240. [key, read]
  4241. string InstanceName;
  4242. [read] boolean Active;
  4243. [DisplayName("Connector Type") : amended,
  4244. WmiDataId(1),
  4245. read,
  4246. Values{"I8042 Connector"
  4247. "Serial Connector",
  4248. "USB Connector" } : amended,
  4249. ValueMap{"0",
  4250. "1",
  4251. "2" },
  4252. DefineValues{"POINTER_PORT_WMI_STD_I8042",
  4253. "POINTER_PORT_WMI_STD_SERIAL",
  4254. "POINTER_PORT_WMI_STD_USB"},
  4255. Description("How the mouse is connected to the computer") : amended]
  4256. uint32 ConnectorType;
  4257. [DisplayName("Data Queue Size") : amended,
  4258. WmiDataId(2),
  4259. read,
  4260. Description("The DataQueueSize property indicates the size of the data queue.") : amended]
  4261. uint32 DataQueueSize;
  4262. [DisplayName("Error Count") : amended,
  4263. WmiDataId(3),
  4264. read,
  4265. Description("Number of errors that occured on this device") : amended]
  4266. uint32 ErrorCount;
  4267. [DisplayName("Number of Buttons") : amended,
  4268. WmiDataId(4),
  4269. read,
  4270. Description("The NumberOfButtons property indicates the number of buttons on the pointing device.") : amended]
  4271. uint32 Buttons;
  4272. [DisplayName("Hardware Type") : amended,
  4273. WmiDataId(5),
  4274. read,
  4275. Values{"Standard Mouse",
  4276. "Standard Pointer",
  4277. "Standard Absolute Pointer",
  4278. "Tablet",
  4279. "Touch Screen",
  4280. "Pen",
  4281. "Track Ball",
  4282. "Other"} : amended,
  4283. ValueMap{"0",
  4284. "1",
  4285. "2",
  4286. "3",
  4287. "4",
  4288. "5",
  4289. "6",
  4290. "256"},
  4291. DefineValues{"POINTER_PORT_WMI_STD_MOUSE",
  4292. "POINTER_PORT_WMI_STD_POINTER",
  4293. "POINTER_PORT_WMI_ABSOLUTE_POINTER",
  4294. "POINTER_PORT_WMI_TABLET",
  4295. "POINTER_PORT_WMI_TOUCH_SCRENE",
  4296. "POINTER_PORT_WMI_PEN",
  4297. "POINTER_PORT_WMI_TRACK_BALL",
  4298. "POINTER_PORT_WMI_OTHER"},
  4299. Description("The HardwareType property indicates the hardware type of the pointing device.") : amended]
  4300. uint32 HardwareType;
  4301. };
  4302. [Dynamic, Provider("WMIProv"),
  4303. WMI,
  4304. Description("Mouse class driver information") : amended,
  4305. guid("{4731F89B-71CB-11d1-A52C-00A0C9062910}")
  4306. ]
  4307. class MSMouse_ClassInformation : MSMouse
  4308. {
  4309. [key, read]
  4310. string InstanceName;
  4311. [read] boolean Active;
  4312. [
  4313. WmiDataId(1),
  4314. read,
  4315. Description("An identification number for the device") : amended]
  4316. uint64 DeviceId;
  4317. };
  4318. [Dynamic, Provider("WMIProv"),
  4319. WMI,
  4320. Description("Keyboard class driver information") : amended,
  4321. guid("{4731F899-71CB-11d1-A52C-00A0C9062910}")
  4322. ]
  4323. class MSKeyboard_ClassInformation : MSKeyboard
  4324. {
  4325. [key, read]
  4326. string InstanceName;
  4327. [read] boolean Active;
  4328. [
  4329. WmiDataId(1),
  4330. read,
  4331. Description("An identification number for the device") : amended]
  4332. uint64 DeviceId;
  4333. };
  4334. //
  4335. // AGP information
  4336. //
  4337. [abstract]
  4338. class MSAgp
  4339. {
  4340. };
  4341. [Dynamic, Provider("WMIProv"),
  4342. WMI,
  4343. Description("AGP Information") : amended,
  4344. HeaderName("AGP_STD_DATA"),
  4345. guid("{8C27FBED-1C7B-47E4-A649-0E389D3ADA4F}"),
  4346. GuidName1("AGP_WMI_STD_DATA_GUID")
  4347. ]
  4348. class MSAgp_Information : MSAgp
  4349. {
  4350. [key, read]
  4351. string InstanceName;
  4352. [read] boolean Active;
  4353. [
  4354. WmiDataId(1),
  4355. Description("Aperture base") : amended,
  4356. read]
  4357. uint64 ApertureBase;
  4358. [
  4359. WmiDataId(2),
  4360. Description("Aperture length") : amended,
  4361. read]
  4362. uint32 ApertureLength;
  4363. [
  4364. WmiDataId(3),
  4365. BitValues{"AGP_RATE_1X", "AGP_RATE_2X", "AGP_RATE_4X",
  4366. "FAST_WRITE", "FOUR_GB", "SBA_ENABLE"} : amended,
  4367. BitMap{"0", "1", "2", "4", "5", "9"},
  4368. Description("AGP Status") : amended,
  4369. read]
  4370. uint32 AgpStatus;
  4371. [
  4372. WmiDataId(4),
  4373. BitValues{"AGP_RATE_1X", "AGP_RATE_2X", "AGP_RATE_4X",
  4374. "FAST_WRITE", "FOUR_GB", "AGP_ENABLE", "SBA_ENABLE"} : amended,
  4375. BitMap{"0", "1", "2", "4", "5", "8", "9"},
  4376. Description("AGP Command") : amended,
  4377. read]
  4378. uint32 AgpCommand;
  4379. };
  4380. //
  4381. // Thermal information via ACPI
  4382. [abstract]
  4383. class MSAcpi
  4384. {
  4385. };
  4386. [Dynamic, Provider("WMIProv"),
  4387. WMI,
  4388. Description("ThermalZone temperature information") : amended,
  4389. guid("{A1BC18C0-A7C8-11d1-BF3C-00A0C9062910}"),
  4390. DisplayName("Thermal Zone Information") : amended
  4391. ]
  4392. class MSAcpi_ThermalZoneTemperature : MSAcpi
  4393. {
  4394. [key, read]
  4395. string InstanceName;
  4396. [read] boolean Active;
  4397. [DisplayName("Thermal Stamp") : amended,
  4398. WmiDataId(1),
  4399. Description("Thermal information change stamp") : amended,
  4400. read]
  4401. uint32 ThermalStamp;
  4402. [DisplayName("Thermal Constant 1") : amended,
  4403. WmiDataId(2),
  4404. Description("First thermal constant") : amended,
  4405. read]
  4406. uint32 ThermalConstant1;
  4407. [DisplayName("Thermal Constant 2") : amended,
  4408. WmiDataId(3),
  4409. Description("Second thermal constant") : amended,
  4410. read]
  4411. uint32 ThermalConstant2;
  4412. [DisplayName("Reserved") : amended,
  4413. WmiDataId(4),
  4414. Description("Reserved") : amended,
  4415. read]
  4416. uint32 Reserved;
  4417. [DisplayName("Sampling Period") : amended,
  4418. WmiDataId(5),
  4419. Description("Sampling period") : amended,
  4420. read]
  4421. uint32 SamplingPeriod;
  4422. [DisplayName("Current Temperature") : amended,
  4423. WmiDataId(6),
  4424. Description("Temperature at thermal zone in tenths of degrees Kelvin") : amended,
  4425. read]
  4426. uint32 CurrentTemperature;
  4427. [DisplayName("Passive Trippoint") : amended,
  4428. WmiDataId(7),
  4429. Description("Temperature (in tenths of degrees Kelvin) at which the OS must activate CPU throttling (ie, enable passive cooling)") : amended,
  4430. read]
  4431. uint32 PassiveTripPoint;
  4432. [DisplayName("Critical Trippoint") : amended,
  4433. WmiDataId(8),
  4434. Description("Temperature (in tenths of degrees Kelvin) at which the OS must shutdown the system (ie, critical temperature)") : amended,
  4435. read]
  4436. uint32 CriticalTripPoint;
  4437. [DisplayName("Active Trippoint Count") : amended,
  4438. WmiDataId(9),
  4439. Description("Count of active trip points") : amended,
  4440. read]
  4441. uint32 ActiveTripPointCount;
  4442. [WmiDataId(10),
  4443. Description("Temperature levels (in tenths of degrees Kelvin) at which the OS must activate active cooling") : amended,
  4444. DisplayName("Active Trippoint") : amended,
  4445. MissingValue(0),
  4446. read]
  4447. uint32 ActiveTripPoint[10];
  4448. };
  4449. //
  4450. // Disk
  4451. [abstract]
  4452. class MSDiskDriver
  4453. {
  4454. };
  4455. [Dynamic, Provider("WMIProv"),
  4456. WMI,
  4457. Description("Disk Geometry") : amended,
  4458. guid("{25007F51-57C2-11d1-A528-00A0C9062910}"),
  4459. HeaderName("WMI_DISK_GEOMETRY"),
  4460. DisplayName("Disk Geometry") : amended
  4461. ]
  4462. class MSDiskDriver_Geometry : MSDiskDriver
  4463. {
  4464. [key, read]
  4465. string InstanceName;
  4466. [read] boolean Active;
  4467. [DisplayName("Cylinders") : amended,
  4468. WmiDataId(1),
  4469. read]
  4470. sint64 Cylinders;
  4471. [DisplayName("Media Type") : amended,
  4472. WmiDataId(2),
  4473. Values{"Format is unknown",
  4474. "5.25, 1.2MB, 512 bytes/sector",
  4475. "3.5, 1.44MB, 512 bytes/sector",
  4476. "3.5, 2.88MB, 512 bytes/sector",
  4477. "3.5, 20.8MB, 512 bytes/sector",
  4478. "3.5, 720KB, 512 bytes/sector",
  4479. "5.25, 360KB, 512 bytes/sector",
  4480. "5.25, 320KB, 512 bytes/sector",
  4481. "5.25, 320KB, 1024 bytes/sector",
  4482. "5.25, 180KB, 512 bytes/sector",
  4483. "5.25, 160KB, 512 bytes/sector",
  4484. "Removable media other than floppy",
  4485. "Fixed hard disk media",
  4486. "3.5, 120M Floppy",
  4487. "3.5 , 640KB, 512 bytes/sector",
  4488. "5.25, 640KB, 512 bytes/sector",
  4489. "5.25, 720KB, 512 bytes/sector",
  4490. "3.5 , 1.2Mb, 512 bytes/sector",
  4491. "3.5 , 1.23Mb, 1024 bytes/sector",
  4492. "5.25, 1.23MB, 1024 bytes/sector",
  4493. "3.5 MO 128Mb 512 bytes/sector",
  4494. "3.5 MO 230Mb 512 bytes/sector",
  4495. "8, 256KB, 128 bytes/sector"} : amended,
  4496. ValueMap{"0",
  4497. "1",
  4498. "2",
  4499. "3",
  4500. "4",
  4501. "5",
  4502. "6",
  4503. "7",
  4504. "8",
  4505. "9",
  4506. "10",
  4507. "11",
  4508. "12",
  4509. "13",
  4510. "14",
  4511. "15",
  4512. "16",
  4513. "17",
  4514. "18",
  4515. "19",
  4516. "20",
  4517. "21",
  4518. "22"},
  4519. read]
  4520. uint32 MediaType;
  4521. [DisplayName("Tracks Per Cylinder") : amended,
  4522. WmiDataId(3),
  4523. read]
  4524. uint32 TracksPerCylinder;
  4525. [DisplayName("Sectors Per Track") : amended,
  4526. WmiDataId(4),
  4527. read]
  4528. uint32 SectorsPerTrack;
  4529. [DisplayName("Bytes Per Sector") : amended,
  4530. WmiDataId(5),
  4531. read]
  4532. uint32 BytesPerSector;
  4533. };
  4534. [
  4535. WMI,
  4536. Description("Disk performance statistics") : amended,
  4537. guid("BDD865D2-D7C1-11d0-A501-00A0C9062910"),
  4538. HeaderName("WMI_DISK_PERFORMANCE"),
  4539. DisplayName("Disk Performance Information") : amended
  4540. ]
  4541. class MSDiskDriver_PerformanceData : MSDiskDriver
  4542. {
  4543. [DisplayName("Bytes Read") : amended,
  4544. WmiDataId(1),
  4545. Description("Number of bytes read on disk") : amended,
  4546. read]
  4547. sint64 BytesRead;
  4548. [DisplayName("Bytes Written") : amended,
  4549. WmiDataId(2),
  4550. Description("Number of bytes written on disk") : amended,
  4551. read]
  4552. sint64 BytesWritten;
  4553. [DisplayName("Read Time") : amended,
  4554. WmiDataId(3),
  4555. Description("Amount off time spent reading from disk") : amended,
  4556. read]
  4557. sint64 ReadTime;
  4558. [DisplayName("Write Time") : amended,
  4559. WmiDataId(4),
  4560. Description("Amount off time spent writing to disk") : amended,
  4561. read]
  4562. sint64 WriteTime;
  4563. [DisplayName("Idle Time") : amended,
  4564. WmiDataId(5),
  4565. Description("Amount off disk idle time") : amended,
  4566. read]
  4567. sint64 IdleTime;
  4568. [DisplayName("Read Count") : amended,
  4569. WmiDataId(6),
  4570. Description("Number of read operations from disk") : amended,
  4571. read]
  4572. uint32 ReadCount;
  4573. [DisplayName("Write Count") : amended,
  4574. WmiDataId(7),
  4575. Description("Number of write operations to disk") : amended,
  4576. read]
  4577. uint32 WriteCount;
  4578. [DisplayName("Queue Depth") : amended,
  4579. WmiDataId(8),
  4580. Description("Number of requests waiting in the disk queue") : amended,
  4581. read]
  4582. uint32 QueueDepth;
  4583. [DisplayName("Split Count") : amended,
  4584. WmiDataId(9),
  4585. Description("Number of split IO operations") : amended,
  4586. read]
  4587. uint32 SplitCount;
  4588. [DisplayName("Query Time") : amended,
  4589. WmiDataId(10),
  4590. Description("") : amended,
  4591. read]
  4592. sint64 QueryTime;
  4593. [DisplayName("Storage Device Number") : amended,
  4594. WmiDataId(11),
  4595. Description("") : amended,
  4596. read]
  4597. uint32 StorageDeviceNumber;
  4598. [WmiDataId(12),
  4599. DisplayName("Storage Manager Name") : amended,
  4600. Description("") : amended,
  4601. read]
  4602. uint16 StorageManagerName[8];
  4603. };
  4604. [Dynamic, Provider("WMIProv"),
  4605. WMI,
  4606. Description("Disk performance statistics") : amended,
  4607. guid("BDD865D1-D7C1-11d0-A501-00A0C9062910"),
  4608. DisplayName("Disk Performance Information") : amended
  4609. ]
  4610. class MSDiskDriver_Performance : MSDiskDriver
  4611. {
  4612. [key, read]
  4613. string InstanceName;
  4614. [read] boolean Active;
  4615. [DisplayName("Performance Data") : amended,
  4616. WmiDataId(1),
  4617. Description("Performance Data Information") : amended,
  4618. read]
  4619. MSDiskDriver_PerformanceData PerfData;
  4620. [DisplayName("Device Name") : amended,
  4621. WmiDataId(2),
  4622. Description("Internal device name") : amended,
  4623. read]
  4624. string DeviceName;
  4625. };
  4626. //
  4627. // General storage
  4628. [abstract]
  4629. class MSStorageDriver
  4630. {
  4631. };
  4632. [Dynamic, Provider("WMIProv"),
  4633. WMI,
  4634. Description("Storage Device Failure Prediction Status") : amended,
  4635. guid("{78ebc102-4cf9-11d2-ba4a-00a0c9062910}"),
  4636. HeaderName("STORAGE_FAILURE_PREDICT_STATUS"),
  4637. GuidName1("WMI_STORAGE_FAILURE_PREDICT_STATUS_GUID"),
  4638. DisplayName("Failure Predict Status") : amended
  4639. ]
  4640. class MSStorageDriver_FailurePredictStatus : MSStorageDriver
  4641. {
  4642. [key, read]
  4643. string InstanceName;
  4644. [read] boolean Active;
  4645. [DisplayName("Reason") : amended,
  4646. WmiDataId(1),
  4647. ValueMap{"0", "255"},
  4648. Values{"Unknown", "Test - Not a failure"} : amended,
  4649. read]
  4650. uint32 Reason;
  4651. [DisplayName("Predict Failure") : amended,
  4652. WmiDataId(2),
  4653. Description("TRUE if drive is predictiing failure. In this case it is critical that the disk is backed up immediately") : amended,
  4654. read]
  4655. boolean PredictFailure;
  4656. };
  4657. [Dynamic, Provider("WMIProv"),
  4658. WMI,
  4659. Description("Storage Device Failure Prediction Data") : amended,
  4660. guid("{78ebc103-4cf9-11d2-ba4a-00a0c9062910}"),
  4661. HeaderName("STORAGE_FAILURE_PREDICT_DATA"),
  4662. GuidName1("WMI_STORAGE_FAILURE_PREDICT_DATA_GUID"),
  4663. DisplayName("Failure Predict Data") : amended
  4664. ]
  4665. class MSStorageDriver_FailurePredictData : MSStorageDriver
  4666. {
  4667. [key, read]
  4668. string InstanceName;
  4669. [read] boolean Active;
  4670. [DisplayName("Length") : amended,
  4671. WmiDataId(1),
  4672. read]
  4673. uint32 Length;
  4674. [DisplayName("Vendor Specific") : amended,
  4675. WmiDataId(2),
  4676. Description("Vendor specific failure prediction data") : amended,
  4677. read]
  4678. uint8 VendorSpecific[512];
  4679. };
  4680. [Dynamic, Provider("WMIProv"),
  4681. WMI,
  4682. Description("ATAPI SMART Data") : amended,
  4683. guid("{78ebc103-4cf9-11d2-ba4a-00a0c9062910}"),
  4684. HeaderName("ATAPI_FAILURE_PREDICT_DATA"),
  4685. GuidName1("WMI_ATAPI_FAILURE_PREDICT_DATA_GUID"),
  4686. read,
  4687. DisplayName("ATAPI Failure Predict Data") : amended
  4688. ]
  4689. class MSStorageDriver_ATAPISmartData : MSStorageDriver
  4690. {
  4691. [key, read]
  4692. string InstanceName;
  4693. [read] boolean Active;
  4694. [DisplayName("Length") : amended,
  4695. WmiDataId(1),
  4696. read]
  4697. uint32 Length;
  4698. [DisplayName("Vendor Specific") : amended,
  4699. WmiDataId(2),
  4700. Description("Vendor specific failure prediction data") : amended,
  4701. read]
  4702. uint8 VendorSpecific[362];
  4703. [WmiDataId(3),
  4704. Description("Off-line data collection status") : amended,
  4705. read,
  4706. Values{"0", "2", "4", "5", "6", "128", "130", "132", "133", "134"},
  4707. ValueMap{"Off-line data collection activity was never started",
  4708. "Off-line data collection activity was completed without error",
  4709. "Off-line data collection activity was suspended by an interrupting command from host",
  4710. "Off-line data collection activity was aborted by an interrupting command from host",
  4711. "Off-line data collection activity was aborted by the device with a fatal error",
  4712. "Off-line data collection activity was never started",
  4713. "Off-line data collection activity was completed without error",
  4714. "Off-line data collection activity was suspended by an interrupting command from host",
  4715. "Off-line data collection activity was aborted by an interrupting command from host",
  4716. "Off-line data collection activity was aborted by the device with a fatal error"
  4717. } : amended
  4718. ]
  4719. uint8 OfflineCollectionStatus;
  4720. [WmiDataId(4),
  4721. Description("Self-test execution status byte") : amended,
  4722. read,
  4723. Values{"0", "1", "2", "3", "4", "5", "6", "7", "15"},
  4724. ValueMap{
  4725. "The previous self-test routine completed without error or no self-test has ever been run"
  4726. "The self-test routine was aborted by the host",
  4727. "The self-test routine was interrupted by the host with a hardware or software reset",
  4728. "A fatal error or unknown test error occurred while the device was executing its self-test routineand the device was unable to complete the self-test routine.",
  4729. "The previous self-test completed having a test element that failed and the test element that failed is not known.",
  4730. "The previous self-test completed having the electrical element of the test failed.",
  4731. "The previous self-test completed having the servo (and/or seek) test element of the test failed.",
  4732. "The previous self-test completed having the read element of the test failed.",
  4733. "Self-test routine in progress."
  4734. } : amended
  4735. ]
  4736. uint8 SelfTestStatus;
  4737. [WmiDataId(5),
  4738. Description("Total time in seconds to complete off-line data collection activity") : amended,
  4739. read
  4740. ]
  4741. uint16 TotalTime;
  4742. [WmiDataId(6),
  4743. Description("Vendor Specific") : amended,
  4744. read
  4745. ]
  4746. uint8 VendorSpecific2;
  4747. [WmiDataId(7),
  4748. Description("Off-line data collection capability") : amended,
  4749. BitMap{"0", "1", "2", "3", "4"},
  4750. BitValues{
  4751. "(EXECUTE OFF-LINE IMMEDIATE implemented bit) - If this bit is set to one, then the SMART EXECUTE OFF-LINE IMMEDIATE command is implemented by this device. If this bit is cleared to zero, then the SMART EXECUTE OFF-LINE IMMEDIATE command is not implemented by this device.",
  4752. "(vendor specific)",
  4753. "(abort/restart off-line by host bit) - If this bit is set to one, then the device shall abort all off-line data collection activity initiated by an SMART EXECUTE OFF-LINE IMMEDIATE command upon receipt of a new command within 2 seconds of receiving the new command. If this bit is cleared to zero, the device shall suspend off-line data collection activity after an interrupting command and resume off-line data collection activity after some vendor-specified event.",
  4754. "(off-line read scanning implemented bit) - If this bit is cleared to zero, the device does not support off-line read scanning. If this bit is set to one, the device supports off-line read scanning.",
  4755. "(self-test implemented bit) - If this bit is cleared to zero, the device does not implement the Short and Extended self-test routines. If this bit is set to one, the device implements the Short and Extended self-test routines."
  4756. } : amended,
  4757. read
  4758. ]
  4759. uint8 OfflineCollectCapability;
  4760. [WmiDataId(8),
  4761. Description("SMART capability") : amended,
  4762. read,
  4763. BitMap{"0", "1"},
  4764. BitValues{
  4765. "(power mode SMART data saving capability bit) - If this bit is set to one, the device saves SMART data prior to going into a power saving mode (Idle, Standby, or Sleep) or immediately upon return to Active or Idle mode from a Standby mode. If this bit is cleared to zero, the device does not save SMART data prior to going into a power saving mode (Idle, Standby, or Sleep) or immediately upon return to Active or Idle mode from a Standby mode.",
  4766. "(SMART data autosave after event capability bit) - This bit is set to one for devices complying with this standard."
  4767. } : amended
  4768. ]
  4769. uint16 SmartCapability;
  4770. [WmiDataId(9),
  4771. Description("Error logging capability") : amended,
  4772. read,
  4773. BitMap{"0"},
  4774. BitValues{"Device error logging supported"} : amended
  4775. ]
  4776. uint8 ErrorLogCapability;
  4777. [WmiDataId(10),
  4778. Description("Vendor Specific") : amended,
  4779. read
  4780. ]
  4781. uint8 VendorSpecific3;
  4782. [WmiDataId(11),
  4783. Description("Short self-test routine recommended polling time (in minutes)") : amended,
  4784. read
  4785. ]
  4786. uint8 ShortPollTimeInMinutes;
  4787. [WmiDataId(12),
  4788. Description("Extended self-test routine recommended polling time (in minutes)") : amended,
  4789. read
  4790. ]
  4791. uint8 ExtendedPollTimeInMinutes;
  4792. [WmiDataId(13),
  4793. Description("Reserved"),
  4794. read
  4795. ]
  4796. uint8 Reserved[12];
  4797. [WmiDataId(14),
  4798. Description("Vendor Specific") : amended,
  4799. read
  4800. ]
  4801. uint8 VendorSpecific4[125];
  4802. [WmiDataId(15),
  4803. Description("Data structure checksum") : amended,
  4804. read
  4805. ]
  4806. uint8 Checksum;
  4807. };
  4808. [Dynamic, Provider("WMIProv"),
  4809. WMI,
  4810. Description("Storage Device Failure Prediction Thresholds") : amended,
  4811. guid("{DAE10783-CC31-4d2a-8A0F-861C04077A95}"),
  4812. HeaderName("STORAGE_FAILURE_PREDICT_THRESHOLDS"),
  4813. GuidName1("WMI_STORAGE_FAILURE_PREDICT_THRESHOLDS_GUID"),
  4814. DisplayName("Failure Predict Thresholds") : amended
  4815. ]
  4816. class MSStorageDriver_FailurePredictThresholds : MSStorageDriver
  4817. {
  4818. [key, read]
  4819. string InstanceName;
  4820. [read] boolean Active;
  4821. [DisplayName("Vendor Specific") : amended,
  4822. WmiDataId(1),
  4823. Description("Vendor specific failure prediction thresholds") : amended,
  4824. read]
  4825. uint8 VendorSpecific[512];
  4826. };
  4827. [Dynamic, Provider("WMIProv"),
  4828. WMI,
  4829. Description("Storage Device Failure Prediction Event") : amended,
  4830. guid("{78ebc104-4cf9-11d2-ba4a-00a0c9062910}"),
  4831. HeaderName("STORAGE_FAILURE_PREDICT_EVENT"),
  4832. GuidName1("WMI_STORAGE_PREDICT_FAILURE_EVENT_GUID"),
  4833. DisplayName("Failure Predict Event") : amended
  4834. ]
  4835. class MSStorageDriver_FailurePredictEvent : WmiEvent
  4836. {
  4837. [key, read]
  4838. string InstanceName;
  4839. [read] boolean Active;
  4840. [DisplayName("Length") : amended,
  4841. WmiDataId(1),
  4842. read]
  4843. uint32 Length;
  4844. [DisplayName("Vendor Specific") : amended,
  4845. WmiDataId(2),
  4846. Description("Vendor specific failure prediction data") : amended,
  4847. WmiSizeIs("Length"),
  4848. read]
  4849. uint8 VendorSpecific[];
  4850. };
  4851. [Dynamic, Provider("WMIProv"),
  4852. WMI,
  4853. Description("Storage Device Failure Prediction Functions") : amended,
  4854. guid("{78ebc105-4cf9-11d2-ba4a-00a0c9062910}"),
  4855. HeaderName("STORAGE_FAILURE_PREDICT_FUNCTION"),
  4856. GuidName1("WMI_STORAGE_FAILURE_PREDICT_FUNCTION_GUID"),
  4857. DisplayName("Failure Predict Functions") : amended
  4858. ]
  4859. class MSStorageDriver_FailurePredictFunction : MSStorageDriver
  4860. {
  4861. [key, read]
  4862. string InstanceName;
  4863. [read] boolean Active;
  4864. [WmiMethodId(1),
  4865. Implemented,
  4866. DisplayName("Allow Performance Degredation") : amended,
  4867. HeaderName("ALLOW_PERFORMANCE_HIT"),
  4868. Description("Configures setting that specifies if additional failure prediction checking can cause a loss of performance") : amended]
  4869. void AllowPerformanceHit([in, DisplayName("Allow") : amended] boolean Allow);
  4870. [WmiMethodId(2),
  4871. Implemented,
  4872. DisplayName("Enable Or Disable Hardware Failure Prediction") : amended,
  4873. HeaderName("ENABLE_DISABLE_FP"),
  4874. Description("Enables or disables failure prediction checking at the hardware level") : amended]
  4875. void EnableDisableHardwareFailurePrediction([in, DisplayName("Enable") : amended] boolean Enable);
  4876. [WmiMethodId(3),
  4877. Implemented,
  4878. DisplayName("Enable Or Disable Failure Prediction Polling") : amended,
  4879. HeaderName("ENABLE_DISABLE_FP_POLLING"),
  4880. Description("Enables or disables polling for failure prediction status") : amended]
  4881. void EnableDisableFailurePredictionPolling(
  4882. [in,
  4883. DisplayName("Period") : amended,
  4884. Description("Period in seconds to poll for failure prediction status") : amended]
  4885. uint32 Period,
  4886. [in] boolean Enable);
  4887. [WmiMethodId(4),
  4888. Implemented,
  4889. DisplayName("Get Failure Prediction Capability") : amended,
  4890. HeaderName("GET_FP_CAPABILITY"),
  4891. Description("Returns mechanism used to read failure prediction status ") : amended]
  4892. void GetFailurePredictionCapability([out, ValueMap{"0", "1", "2", "3"},
  4893. Value{"Not Supported",
  4894. "Ioctl Based",
  4895. "IDE SMART",
  4896. "SCSI SMART"} : amended,
  4897. DisplayName("Capability") : amended
  4898. ] uint32 Capability);
  4899. [WmiMethodId(5),
  4900. HeaderName("ENABLE_OFFLINE_DIAGS"),
  4901. Implemented,
  4902. DisplayName("Enable Offline Diags") : amended,
  4903. Description("Enables execution of offline diagnostics") : amended]
  4904. void EnableOfflineDiags([out, DisplayName("Success") : amended] boolean Success);
  4905. [WmiMethodId(6),
  4906. Implemented,
  4907. DisplayName("Read Log Sectors") : amended,
  4908. HeaderName("READ_LOG_SECTORS"),
  4909. Description("Read log sectors") : amended
  4910. ]
  4911. void ReadLogSectors([in, DisplayName("Log Address") : amended] uint8 LogAddress,
  4912. [in, DisplayName("Sector Count") : amended] uint8 SectorCount,
  4913. [out, DisplayName("Length") : amended] uint32 Length,
  4914. [out, WmiSizeIs("Length"), DisplayName("Log Sectors") : amended] uint8 LogSectors[]
  4915. );
  4916. [WmiMethodId(7),
  4917. Implemented,
  4918. HeaderName("WRITE_LOG_SECTORS"),
  4919. DisplayName("WriteLogSectors") : amended,
  4920. Description("Write log sectors") : amended
  4921. ]
  4922. void WriteLogSectors([in, DisplayName("LogAddress") : amended] uint8 LogAddress,
  4923. [in, DisplayName("SectorCount") : amended] uint8 SectorCount,
  4924. [in, DisplayName("Length") : amended] uint32 Length,
  4925. [in, WmiSizeIs("Length"), DisplayName("LogSectors") : amended] uint8 LogSectors[],
  4926. [out, DisplayName("Success") : amended] boolean Success
  4927. );
  4928. [WmiMethodId(8),
  4929. Implemented,
  4930. HeaderName("EXECUTE_SELF_TEST"),
  4931. DisplayName("Execute Self Test") : amended,
  4932. Description("Execute Self Test") : amended
  4933. ]
  4934. void ExecuteSelfTest([in, DisplayName("Sub Command") : amended] uint8 Subcommand,
  4935. [out,
  4936. DisplayName("Return Code") : amended,
  4937. ValueMap{"0", "1", "2"},
  4938. Value{"Successful Completion",
  4939. "Captive Mode Required",
  4940. "Unsuccessful Completion"} : amended
  4941. ]
  4942. uint32 ReturnCode);
  4943. };
  4944. [Dynamic, Provider("WMIProv"),
  4945. WMI,
  4946. Description("Data for Scsi Info Exceptions Mode Page") : amended,
  4947. guid("{1101D829-167B-4ebf-ACAE-28CAB7C34802}"),
  4948. HeaderName("STORAGE_SCSI_INFO_EXCEPTIONS"),
  4949. GuidName1("WMI_STORAGE_SCSI_INFO_EXCEPTIONS_GUID"),
  4950. DisplayName("Scsi Info Exceptions") : amended
  4951. ]
  4952. class MSStorageDriver_ScsiInfoExceptions : MSStorageDriver
  4953. {
  4954. [key, read]
  4955. string InstanceName;
  4956. [read] boolean Active;
  4957. [DisplayName("Page Savable") : amended,
  4958. WmiDataId(1),
  4959. Description("The returned Parameter Savable bit of 1 indicates that page parameter data is savable.") : amended,
  4960. read, write]
  4961. boolean PageSavable;
  4962. [DisplayName("Flags") : amended,
  4963. WmiDataId(2),
  4964. Description("Bit flags: "
  4965. "Perf set to zero indicates that informational exception operations that are the cause of delays are acceptable. "
  4966. "DExcpt set to zero indicates information exception operations shall be enabled. "
  4967. "Test of one instructs the drive to create false drive failures. "
  4968. "LogErr bit of zero indicates that logging of informational exception conditions are vendor specific.") : amended,
  4969. BitValues{"Perf", "DExcpt", "Test", "LogErr"} : amended,
  4970. BitMap{"7", "3", "2", "0"},
  4971. read, write]
  4972. uint8 Flags;
  4973. [DisplayName("Reporting Method") : amended,
  4974. WmiDataId(3),
  4975. Description("The Method of Reporting Informational Exceptions (MRIE) indicates the methods that shall be used by the target to report information exception conditions.") : amended,
  4976. ValueMap{"0", "1", "2", "3", "4", "5", "6"},
  4977. Values{"No Reporting", "Asynchronous Event Reporting", "Generate Unit Attention", "Conditionally Generate Recovered Error", "Unconditionally Generate Recovered Error", "Generate No Sense", "Report On Request"} : amended,
  4978. read, write]
  4979. uint8 MRIE;
  4980. [
  4981. WmiDataId(4),
  4982. Description("Buffer padding to 32 bits, do not use") : amended,
  4983. read]
  4984. uint8 Padding;
  4985. [DisplayName("Interval Timer") : amended,
  4986. WmiDataId(5),
  4987. Description("Period in 100ms increments for reproting that an information exception condition has occurred.") : amended,
  4988. read, write]
  4989. uint32 IntervalTimer;
  4990. [DisplayName("Report Count") : amended,
  4991. WmiDataId(6),
  4992. Description("Indicates the number of times to report an informational exception condition to the application client. A value of zero indications there is no limit.") : amended,
  4993. read, write]
  4994. uint32 ReportCount;
  4995. };
  4996. [abstract]
  4997. class MSIde
  4998. {
  4999. };
  5000. [Dynamic, Provider("WMIProv"), WMI,
  5001. Description("Scsi Address") : amended,
  5002. guid("{53f5630f-b6bf-11d0-94f2-00a0c91efb8b}"),
  5003. DisplayName("Ide Port Information") : amended
  5004. ]
  5005. class MSIde_PortDeviceInfo : MSIde
  5006. {
  5007. [key, read]
  5008. string InstanceName;
  5009. [read] boolean Active;
  5010. [DisplayName("Bus") : amended,
  5011. WmiDataId(1),
  5012. Description("Scsi Bus Number") : amended,
  5013. read]
  5014. uint8 Bus;
  5015. [DisplayName("Target") : amended,
  5016. WmiDataId(2),
  5017. Description("Scsi Target ID") : amended,
  5018. read]
  5019. uint8 Target;
  5020. [DisplayName("Lun") : amended,
  5021. WmiDataId(3),
  5022. Description("Scsi Lun") : amended,
  5023. read]
  5024. uint8 Lun;
  5025. };
  5026. // Serial
  5027. [abstract]
  5028. class MSSerial
  5029. {
  5030. };
  5031. [WMI, Dynamic, Provider ("WMIProv"),
  5032. guid("{A0EC11A8-B16C-11D1-BD98-00A0C906BE2D}"),
  5033. GuidName1("SERIAL_PORT_WMI_NAME_GUID"),
  5034. Description("Serial Port Name" ) : amended,
  5035. DisplayName("Serial Port Name") : amended
  5036. ]
  5037. class MSSerial_PortName : MSSerial
  5038. {
  5039. boolean Active;
  5040. [key]
  5041. string InstanceName;
  5042. [DisplayName("Port Name") : amended,
  5043. WmiDataId(1),
  5044. Description("Serial Port Name") : amended,
  5045. read]
  5046. string PortName;
  5047. };
  5048. [WMI, Dynamic, Provider ("WMIProv"),
  5049. guid("{EDB16A62-B16C-11D1-BD98-00A0C906BE2D}"),
  5050. GuidName1("SERIAL_PORT_WMI_COMM_GUID"),
  5051. HeaderName("SERIAL_WMI_COMM_DATA"),
  5052. Description("Serial Communications Information") : amended,
  5053. DisplayName("Serial Comm Information") : amended
  5054. ]
  5055. class MSSerial_CommInfo : MSSerial
  5056. {
  5057. boolean Active;
  5058. [key]
  5059. string InstanceName;
  5060. [DisplayName("Baud Rate") : amended,
  5061. WmiDataId(1),
  5062. Description("The BaudRate property indicates the baud rate for this serial port") : amended,
  5063. read]
  5064. uint32 BaudRate;
  5065. [WmiDataId(2),
  5066. DisplayName("Bits Per Byte") : amended,
  5067. Description("The BitsPerByte property indicates the number of bits per byte for the serial port") : amended,
  5068. read]
  5069. uint32 BitsPerByte;
  5070. [DisplayName("Parity") : amended,
  5071. WmiDataId(3),
  5072. read,
  5073. Description("The Parity property indicates the type of parity used") : amended,
  5074. Values{"None",
  5075. "Odd",
  5076. "Even",
  5077. "Space",
  5078. "Mark"} : amended,
  5079. ValueMap{"0",
  5080. "1",
  5081. "2",
  5082. "3",
  5083. "4"},
  5084. DefineValues{"SERIAL_WMI_PARITY_NONE",
  5085. "SERIAL_WMI_PARITY_ODD",
  5086. "SERIAL_WMI_PARITY_EVEN",
  5087. "SERIAL_WMI_PARITY_SPACE",
  5088. "SERIAL_WMI_PARITY_MARK"}
  5089. ]
  5090. uint32 Parity;
  5091. [DisplayName("Parity Check Enable") : amended,
  5092. WmiDataId(4),
  5093. Description("The ParityCheckEnabled property determines whether parity checking is enabled") : amended,
  5094. read]
  5095. boolean ParityCheckEnable;
  5096. [DisplayName("Stop Bits") : amended,
  5097. WmiDataId(5),
  5098. read,
  5099. Description("The StopBits property indicates the number of stop bits for the serial port") : amended,
  5100. Values{"1",
  5101. "1.5",
  5102. "2"} : amended,
  5103. ValueMap{"0",
  5104. "1",
  5105. "2"},
  5106. DefineValues{"SERIAL_WMI_STOP_1",
  5107. "SERIAL_WMI_STOP_1_5",
  5108. "SERIAL_WMI_STOP_2"}]
  5109. uint32 StopBits;
  5110. [DisplayName("Xoff Character") : amended,
  5111. WmiDataId(6),
  5112. Description("The XOffCharacter property indicates the XOff character for the serial port") : amended,
  5113. read]
  5114. uint32 XoffCharacter;
  5115. [DisplayName("Xoff Xmit Threshold") : amended,
  5116. WmiDataId(7),
  5117. Description("The XOffXmitThreshold property indicates the XOff transmit threshold for the serial port") : amended,
  5118. read]
  5119. uint32 XoffXmitThreshold;
  5120. [DisplayName("Xon Character") : amended,
  5121. WmiDataId(8),
  5122. Description("The XOnCharacter property indicates the XOn character") : amended,
  5123. read]
  5124. uint32 XonCharacter;
  5125. [DisplayName("Xon Xmit Threshold") : amended,
  5126. WmiDataId(9),
  5127. Description("The XOnXMitThreshold property indicates the XOn transmit threshold") : amended,
  5128. read]
  5129. uint32 XonXmitThreshold;
  5130. [DisplayName("Maximum Baud Rate") : amended,
  5131. WmiDataId(10),
  5132. Description("The MaximumBaudRate property indicates the maximum baud rate of the serial port") : amended,
  5133. read]
  5134. uint32 MaximumBaudRate;
  5135. [DisplayName("Maximum Output Buffer Size") : amended,
  5136. WmiDataId(11),
  5137. Description("The MaximumOutputBufferSize property indicates the maximum output buffer size (in bytes)") : amended,
  5138. read]
  5139. uint32 MaximumOutputBufferSize;
  5140. [DisplayName("Maximum Input Buffer Size") : amended,
  5141. WmiDataId(12),
  5142. Description("The MaximumInputBufferSize property indicates the maximum input buffer size (in bytes)") : amended,
  5143. read]
  5144. uint32 MaximumInputBufferSize;
  5145. [DisplayName("Support 16Bit Mode") : amended,
  5146. WmiDataId(13),
  5147. Description("The Support16BitMode property determines whether 16-bit mode is supported on the Win32 serial port") : amended,
  5148. read]
  5149. boolean Support16BitMode;
  5150. [DisplayName("Support DTRDSR") : amended,
  5151. WmiDataId(14),
  5152. Description("The SupportDTRDSR property determines whether Data Terminal Ready (DTR) and Data Set Ready (DSR) signals are supported on the Win32 serial port.") : amended,
  5153. read]
  5154. boolean SupportDTRDSR;
  5155. [DisplayName("Support Interval Timeouts") : amended,
  5156. WmiDataId(15),
  5157. Description("The SupportIntervalTimeouts property determines whether interval timeouts are supported on the serial port") : amended,
  5158. read]
  5159. boolean SupportIntervalTimeouts;
  5160. [DisplayName("Support Parity Check") : amended,
  5161. WmiDataId(16),
  5162. Description("The SupportParityCheck property determines whether parity checking is supported on the Win32 serial port") : amended,
  5163. read]
  5164. boolean SupportParityCheck;
  5165. [DisplayName("Support RTSCTS") : amended,
  5166. WmiDataId(17),
  5167. Description("The SupportRTSCTS property determines whether Ready To Send (RTS) and Clear To Send (CTS) signals are supported on the serial port") : amended,
  5168. read]
  5169. boolean SupportRTSCTS;
  5170. [DisplayName("Support Xon Xoff") : amended,
  5171. WmiDataId(18),
  5172. Description("The SupportXOnXOff property determines whether software flow control is supported on the serial port") : amended,
  5173. read]
  5174. boolean SupportXonXoff;
  5175. [DisplayName("Settable Baud Rate") : amended,
  5176. WmiDataId(19),
  5177. Description("The SettableBaudRate property determines whether the baud rate can be set on the serial port") : amended,
  5178. read]
  5179. boolean SettableBaudRate;
  5180. [DisplayName("Settable Data Bits") : amended,
  5181. WmiDataId(20),
  5182. Description("The SettableDataBits property determines whether the number of data bits can be set on the Win32 serial port") : amended,
  5183. read]
  5184. boolean SettableDataBits;
  5185. [DisplayName("Settable Flow Control") : amended,
  5186. WmiDataId(21),
  5187. Description("The SettableFlowControl property determines whether the flow control can be set on the serial port") : amended,
  5188. read]
  5189. boolean SettableFlowControl;
  5190. [DisplayName("Settable Parity") : amended,
  5191. WmiDataId(22),
  5192. Description("The SettableParity property determines whether the parity can be set on the serial port") : amended,
  5193. read]
  5194. boolean SettableParity;
  5195. [DisplayName("Settable Parity Check") : amended,
  5196. WmiDataId(23),
  5197. Description("The SettableParityCheck property determines whether parity checking can be set on the serial port") : amended,
  5198. read]
  5199. boolean SettableParityCheck;
  5200. [DisplayName("Settable Stop Bits") : amended,
  5201. WmiDataId(24),
  5202. Description("The SettableStopBits property determines whether the number of stop bits can be set on the serial port") : amended,
  5203. read]
  5204. boolean SettableStopBits;
  5205. [DisplayName("Is Busy") : amended,
  5206. WmiDataId(25),
  5207. Description("The IsBusy property determines whether the serial port is busy") : amended,
  5208. read]
  5209. boolean IsBusy;
  5210. };
  5211. [WMI, Dynamic, Provider ("WMIProv"),
  5212. guid("{270B9B86-B16D-11D1-BD98-00A0C906BE2D}"),
  5213. GuidName1("SERIAL_PORT_WMI_HW_GUID"),
  5214. HeaderName("SERIAL_WMI_HW_DATA"),
  5215. Description("Hardware configuration for serial port") : amended,
  5216. DisplayName("Serial Hardware Configuration") : amended
  5217. ]
  5218. class MSSerial_HardwareConfiguration : MSSerial
  5219. {
  5220. boolean Active;
  5221. [key]
  5222. string InstanceName;
  5223. [DisplayName("Irq Number") : amended,
  5224. WmiDataId(1),
  5225. Description("The IRQNumber property indicates the number of the IRQ resource") : amended,
  5226. read]
  5227. uint32 IrqNumber;
  5228. [DisplayName("Irq Vector") : amended,
  5229. WmiDataId(2),
  5230. Description("The Vector property indicates the vector of the IRQ resource") : amended,
  5231. read]
  5232. uint32 IrqVector;
  5233. [DisplayName("Irq Level") : amended,
  5234. WmiDataId(3),
  5235. Description("The IRQLevel property indicates the level of the IRQ resource") : amended,
  5236. read]
  5237. uint32 IrqLevel;
  5238. [DisplayName("Irq Affinity Mask") : amended,
  5239. WmiDataId(4),
  5240. Description("The AffinityMask property indicates the affinity mask of the IRQ resource") : amended,
  5241. read]
  5242. uint64 IrqAffinityMask;
  5243. [DisplayName("Interrupt Type") : amended,
  5244. WmiDataId(5),
  5245. Description("The InterruptType property indicates the interrupt type of the IRQ resource") : amended,
  5246. Values{"Latched",
  5247. "Level"} : amended,
  5248. ValueMap{"0",
  5249. "1"},
  5250. DefineValues{"SERIAL_WMI_INTTYPE_LATCHED",
  5251. "SERIAL_WMI_INTTYPE_LEVEL"},
  5252. read]
  5253. uint32 InterruptType;
  5254. [DisplayName("Base IO Address") : amended,
  5255. WmiDataId(6),
  5256. Description("The BaseIOAddress is the base IO address for the serial port") : amended,
  5257. read]
  5258. uint64 BaseIOAddress;
  5259. };
  5260. [WMI, Dynamic, Provider ("WMIProv"),
  5261. guid("{56415ACC-B16D-11D1-BD98-00A0C906BE2D}"),
  5262. GuidName1("SERIAL_PORT_WMI_PERF_GUID"),
  5263. HeaderName("SERIAL_WMI_PERF_DATA"),
  5264. Description("Performance information for serial port") : amended,
  5265. DisplayName("Serial Performance Data") : amended
  5266. ]
  5267. class MSSerial_PerformanceInformation : MSSerial
  5268. {
  5269. boolean Active;
  5270. [key]
  5271. string InstanceName;
  5272. [DisplayName("Received Count") : amended,
  5273. WmiDataId(1),
  5274. Description("The ReceivedCount property indicates the number of bytes received in the current session") : amended,
  5275. read]
  5276. uint32 ReceivedCount;
  5277. [DisplayName("Transmitted Count") : amended,
  5278. WmiDataId(2),
  5279. Description("The TransmittedCount property indicates the number of bytes transmitted in the current session") : amended,
  5280. read]
  5281. uint32 TransmittedCount;
  5282. [DisplayName("Frame Error Count") : amended,
  5283. WmiDataId(3),
  5284. Description("The FrameErrorCount property indicates the number of framing errors that occurred in the current session") : amended,
  5285. read]
  5286. uint32 FrameErrorCount;
  5287. [DisplayName("Serial Overrun Error Count") : amended,
  5288. WmiDataId(4),
  5289. Description("The SerialOverrunCount property indicates the number of serial overrun errors that occurred in the current session") : amended,
  5290. read]
  5291. uint32 SerialOverrunErrorCount;
  5292. [DisplayName("Buffer Overrun Error Count") : amended,
  5293. WmiDataId(5),
  5294. Description("The BufferOverrunCount property indicates the number of buffer overrun errors that occurred in the current session") : amended,
  5295. read]
  5296. uint32 BufferOverrunErrorCount;
  5297. [DisplayName("Parity Error Count") : amended,
  5298. WmiDataId(6),
  5299. Description("The ParityErrorCount property indicates the number of parity errors that occurred in the current session") : amended,
  5300. read]
  5301. uint32 ParityErrorCount;
  5302. };
  5303. [WMI, Dynamic, Provider ("WMIProv"),
  5304. guid("{8209EC2A-2D6B-11d2-BA49-00A0C9062910}"),
  5305. GuidName1("SERIAL_PORT_WMI_PROPERTIES_GUID"),
  5306. HeaderName("SERIAL_WMI_COMMPROP"),
  5307. Description("Communication properties for serial port") : amended
  5308. ]
  5309. class MSSerial_CommProperties : MSSerial
  5310. {
  5311. boolean Active;
  5312. [key]
  5313. string InstanceName;
  5314. [
  5315. read, WmiDataId(1),
  5316. Description("Specifies the size, in bytes, of the entire data packet, regardless of the amount of data requested") : amended]
  5317. uint16 wPacketLength; // packet size, in bytes
  5318. [
  5319. read, WmiDataId(2),
  5320. Description("Specifies the version of the structure") : amended]
  5321. uint16 wPacketVersion; // packet version
  5322. [read, WmiDataId(3),
  5323. BitValues{"SP_SERIALCOMM"} : amended,
  5324. BitMap{"0"},
  5325. Description("Specifies a bitmask indicating which services are implemented by this provider. The SP_SERIALCOMM value is always specified for communications providers, including modem providers.") : amended]
  5326. uint32 dwServiceMask; // services implemented
  5327. [read, WmiDataId(4),
  5328. Description("Reserved; do not use.") : amended]
  5329. uint32 dwReserved1; // reserved
  5330. [read, WmiDataId(5),
  5331. Description("Specifies the maximum size, in bytes, of the driver's internal output buffer. A value of zero indicates that no maximum value is imposed by the serial provider") : amended]
  5332. uint32 dwMaxTxQueue; // max Tx bufsize, in bytes
  5333. [read, WmiDataId(6),
  5334. Description("Specifies the maximum size, in bytes, of the driver's internal input buffer. A value of zero indicates that no maximum value is imposed by the serial provider") : amended]
  5335. uint32 dwMaxRxQueue; // max Rx bufsize, in bytes
  5336. [read, WmiDataId(7),
  5337. BitValues{"BAUD_075", "BAUD_110", "BAUD_134_5", "BAUD_150", "BAUD_300",
  5338. "BAUD_600", "BAUD_1200", "BAUD_1800", "BAUD_2400", "BAUD_4800",
  5339. "BAUD_7200", "BAUD_9600", "BAUD_14400", "BAUD_19200", "BAUD_38400",
  5340. "BAUD_56K", "BAUD_128K", "BAUD_115200", "BAUD_57600", "BAUD_USER"} : amended,
  5341. BitMap{"0", "1", "2", "3", "4",
  5342. "5", "6", "7", "8", "9",
  5343. "10", "11", "12", "13", "14",
  5344. "15", "16", "17", "18", "28" },
  5345. Description("Specifies the maximum allowable baud rate, in bits per second (bps). This member can be one of the following values: Value Meaning") : amended]
  5346. uint32 dwMaxBaud; // max baud rate, in bps
  5347. [read, WmiDataId(8),
  5348. ValueMap{"0x00000000", "0x00000001", "0x00000002",
  5349. "0x00000003", "0x00000004", "0x00000005", "0x00000006",
  5350. "0x00000021", "0x00000022", "0x00000100",
  5351. "0x00000101", "0x00000102", "0x00000103"},
  5352. Values{ "Unspecified", "RS-232 serial port", "Parallel port",
  5353. "RS-422 port", "RS-423 port","RS-449 port", "Modem device",
  5354. "FAX device", "Scanner device", "Unspecified network bridge",
  5355. "LAT protocol", "TCP/IP Telnet protocol", "X.25 standards"} : amended,
  5356. Description("Specifies the specific communications provider type") : amended]
  5357. uint32 dwProvSubType; // specific provider type
  5358. [read, WmiDataId(9),
  5359. BitValues{ "(data-terminal-ready)/DSR (data-set-ready) supported",
  5360. "(request-to-send)/CTS (clear-to-send) supported",
  5361. "(receive-line-signal-detect) supported",
  5362. "Parity checking supported",
  5363. "XON/XOFF flow control supported",
  5364. "Settable XON/XOFF supported",
  5365. "Total (elapsed) time-outs supported",
  5366. "Interval time-outs supported",
  5367. "Special character support provided",
  5368. "Special 16-bit mode supported"} : amended,
  5369. BitMap{"0", "1", "2", "3", "4",
  5370. "5", "6", "7", "8", "9"},
  5371. Description("Specifies a bitmask indicating the capabilities offered by the provider. This member can be one of the following values") : amended]
  5372. uint32 dwProvCapabilities; // capabilities supported
  5373. [read, WmiDataId(10),
  5374. BitValues{"Parity checking",
  5375. "Baud rate",
  5376. "Data bits",
  5377. "Stop bits",
  5378. "Handshaking (flow control)",
  5379. "Parity checking",
  5380. "(receive-line-signal-detect)"} : amended,
  5381. BitMap{"0", "1", "2", "3", "4",
  5382. "5", "6"},
  5383. Description("Specifies a bitmask indicating the communications parameter that can be changed") : amended]
  5384. uint32 dwSettableParams; // changable parameters
  5385. [read, WmiDataId(11),
  5386. BitValues{"BAUD_075", "BAUD_110", "BAUD_134_5", "BAUD_150", "BAUD_300",
  5387. "BAUD_600", "BAUD_1200", "BAUD_1800", "BAUD_2400", "BAUD_4800",
  5388. "BAUD_7200", "BAUD_9600", "BAUD_14400", "BAUD_19200", "BAUD_38400",
  5389. "BAUD_56K", "BAUD_128K", "BAUD_115200", "BAUD_57600", "BAUD_USER"} : amended,
  5390. BitMap{"0", "1", "2", "3", "4",
  5391. "5", "6", "7", "8", "9",
  5392. "10", "11", "12", "13", "14",
  5393. "15", "16", "17", "18", "28" },
  5394. Description("Specifies a bitmask indicating the baud rates that can be used") : amended]
  5395. uint32 dwSettableBaud; // allowable baud rates
  5396. [read, WmiDataId(12),
  5397. BitValues{"5 data bits",
  5398. "6 data bits",
  5399. "7 data bits",
  5400. "8 data bits",
  5401. "16 data bits",
  5402. "Special wide path through serial hardware lines"} : amended,
  5403. BitMap{"0", "1", "2", "3", "4", "5"},
  5404. Description("Specifies a bitmask indicating the number of data bits that can be set") : amended]
  5405. uint16 wSettableData; // allowable byte sizes
  5406. [read, WmiDataId(13),
  5407. BitValues{"1 stop bit",
  5408. "1.5 stop bits",
  5409. "2 stop bits",
  5410. "No parity",
  5411. "Odd parity",
  5412. "Even parity",
  5413. "Mark parity",
  5414. "Space parity"} : amended,
  5415. BitMap{"0", "1", "2", "8", "9", "10", "11", "12"},
  5416. Description("Specifies a bitmask indicating the stop bit and parity settings that can be selected.") : amended]
  5417. uint16 wSettableStopParity; // stop bits/parity allowed
  5418. [read, WmiDataId(14),
  5419. Description("Specifies the size, in bytes, of the driver's internal output buffer. A value of zero indicates that the value is unavailable.") : amended]
  5420. uint32 dwCurrentTxQueue; // Tx buffer size, in bytes
  5421. [read, WmiDataId(15),
  5422. Description("Specifies the size, in bytes, of the driver's internal input buffer. A value of zero indicates that the value is unavailable.") : amended]
  5423. uint32 dwCurrentRxQueue; // Rx buffer size, in bytes
  5424. [read, WmiDataId(16),
  5425. Description("Specifies provider-specific data.") : amended]
  5426. uint32 dwProvSpec1; // provider-specific data
  5427. [read, WmiDataId(17),
  5428. Description("Specifies provider-specific data.") : amended]
  5429. uint32 dwProvSpec2; // provider-specific data
  5430. [
  5431. read, WmiDataId(18),
  5432. Description("Number of bytes of provider specific data") : amended]
  5433. uint32 dwProvCharSize;
  5434. [
  5435. read, WmiDataId(19),
  5436. WmiSizeIs("dwProvCharSize"),
  5437. Description("Specifies provider-specific data. Applications should ignore this member unless they have detailed information about the format of the data required by the provider.") : amended]
  5438. uint8 wcProvChar[]; // provider-specific data
  5439. };
  5440. [abstract]
  5441. class MSParallel
  5442. {
  5443. };
  5444. [Dynamic, Provider("WMIProv"), WMI,
  5445. Description("The allocate and free counts track the port sharing of the parallel port. If the allocate count equals the free count then the port is idle. If the allocate count is greater than the free count (free count + 1) then some other driver in the system has acquired exclusive access to that port. If the allocate count stays constant at freecount+1 for an arbitrarily long period of time, then some driver may have illegally locked the port preventing other drivers from accessing the port.") : amended
  5446. ,
  5447. guid("{4BBB69EA-6853-11d2-8ECE-00C04F8EF481}"),
  5448. HeaderName("PARPORT_WMI_ALLOC_FREE_COUNTS"),
  5449. GuidName1("PARPORT_WMI_ALLOCATE_FREE_COUNTS_GUID"),
  5450. DisplayName("Parallel Port Alloc Free Counts") : amended
  5451. ]
  5452. class MSParallel_AllocFreeCounts : MSParallel
  5453. {
  5454. [key, read]
  5455. string InstanceName;
  5456. [read] boolean Active;
  5457. [DisplayName("Port Allocates") : amended,
  5458. WmiDataId(1),
  5459. Description("Port allocation count") : amended,
  5460. read]
  5461. uint32 PortAllocates;
  5462. [DisplayName("Port Frees") : amended,
  5463. WmiDataId(2),
  5464. Description("Port free count") : amended,
  5465. read]
  5466. uint32 PortFrees;
  5467. };
  5468. [Dynamic, Provider("WMIProv"), WMI,
  5469. Description("Bytes transferred for each mode for the device") : amended,
  5470. guid("{89FEF2D6-654B-11d2-9E15-00C04F8EF481}"),
  5471. GuidName1("PARALLEL_WMI_BYTES_TRANSFERRED_GUID"),
  5472. HeaderName("PARALLEL_WMI_LOG_INFO"),
  5473. DisplayName("Parallel Device Bytes Transferred") : amended
  5474. ]
  5475. class MSParallel_DeviceBytesTransferred : MSParallel
  5476. {
  5477. [key, read]
  5478. string InstanceName;
  5479. [read] boolean Active;
  5480. [DisplayName("Flags 1") : amended,
  5481. WmiDataId(1),
  5482. Description("Reserved") : amended,
  5483. read]
  5484. uint32 Flags1;
  5485. [DisplayName("Flags 2") : amended,
  5486. WmiDataId(2),
  5487. Description("Reserved") : amended,
  5488. read]
  5489. uint32 Flags2;
  5490. [DisplayName("spare") : amended,
  5491. WmiDataId(3),
  5492. Description("Reserved") : amended,
  5493. read]
  5494. uint32 spare[2];
  5495. [DisplayName("Spp Write Count") : amended,
  5496. WmiDataId(4),
  5497. Description("Bytes writtem using SPP mode") : amended,
  5498. read]
  5499. sint64 SppWriteCount;
  5500. [DisplayName("Nibble Read Count") : amended,
  5501. WmiDataId(5),
  5502. Description("Bytes writtem using nibble mode") : amended,
  5503. read]
  5504. sint64 NibbleReadCount;
  5505. [DisplayName("Bounded Ecp Write Count") : amended,
  5506. WmiDataId(6),
  5507. Description("Bytes writtem using bounded Ecp mode") : amended,
  5508. read]
  5509. sint64 BoundedEcpWriteCount;
  5510. [DisplayName("BoundedEcpReadCount") : amended,
  5511. WmiDataId(7),
  5512. Description("Bytes read using bounded Ecp mode") : amended,
  5513. read]
  5514. sint64 BoundedEcpReadCount;
  5515. [DisplayName("Hw Ecp Write Count") : amended,
  5516. WmiDataId(8),
  5517. Description("Bytes writtem using hardware Ecp mode") : amended,
  5518. read]
  5519. sint64 HwEcpWriteCount;
  5520. [DisplayName("Hw Ecp Read Count") : amended,
  5521. WmiDataId(9),
  5522. Description("Bytes read using hardware Ecp mode") : amended,
  5523. read]
  5524. sint64 HwEcpReadCount;
  5525. [DisplayName("Sw Ecp Write Count") : amended,
  5526. WmiDataId(10),
  5527. Description("Bytes writtem using software Ecp mode") : amended,
  5528. read]
  5529. sint64 SwEcpWriteCount;
  5530. [DisplayName("Sw Ecp Read Count") : amended,
  5531. WmiDataId(11),
  5532. Description("Bytes read using software Ecp mode") : amended,
  5533. read]
  5534. sint64 SwEcpReadCount;
  5535. [DisplayName("Hw Epp Write Count") : amended,
  5536. WmiDataId(12),
  5537. Description("Bytes writtem using hardware Epp mode") : amended,
  5538. read]
  5539. sint64 HwEppWriteCount;
  5540. [DisplayName("Hw Epp Read Count") : amended,
  5541. WmiDataId(13),
  5542. Description("Bytes read using hardware Epp mode") : amended,
  5543. read]
  5544. sint64 HwEppReadCount;
  5545. [DisplayName("Sw Epp Write Count") : amended,
  5546. WmiDataId(14),
  5547. Description("Bytes writtem using software Epp mode") : amended,
  5548. read]
  5549. sint64 SwEppWriteCount;
  5550. [DisplayName("Sw Epp Read Count") : amended,
  5551. WmiDataId(15),
  5552. Description("Bytes read using software Epp mode") : amended,
  5553. read]
  5554. sint64 SwEppReadCount;
  5555. [DisplayName("Byte Read Count") : amended,
  5556. WmiDataId(16),
  5557. Description("Bytes read using byte (bidirectional / PS/2) mode") : amended,
  5558. read]
  5559. sint64 ByteReadCount;
  5560. [DisplayName("Channel Nibble Read Count") : amended,
  5561. WmiDataId(17),
  5562. Description("Bytes read using channelized Nibble mode (IEEE 1284.3)") : amended,
  5563. read]
  5564. sint64 ChannelNibbleReadCount;
  5565. };
  5566. [abstract]
  5567. class MSRedbook
  5568. {
  5569. };
  5570. [Dynamic,
  5571. Provider("WMIProv"),
  5572. WMI,
  5573. Description("Digital Audio Filter Driver Information (redbook)") : amended,
  5574. GuidName1("GUID_REDBOOK_WMI_STD_DATA"),
  5575. GuidName2("MSRedbook_DriverInformationGuid"),
  5576. HeaderName("REDBOOK_WMI_STD_DATA"),
  5577. guid("{b90550e7-ae0a-11d1-a571-00c04fa34730}"),
  5578. DisplayName("Redbook Driver Information") : amended
  5579. ]
  5580. class MSRedbook_DriverInformation
  5581. {
  5582. [key, read]
  5583. string InstanceName;
  5584. [read]
  5585. boolean Active;
  5586. [WmiDataId(1),
  5587. DefineDataId("REDBOOK_WMI_NUMBER_OF_BUFFERS"),
  5588. read,
  5589. write,
  5590. Description("NumberOfBuffers*SectorsPerRead*2352 is the amount of memory used to reduce skipping." ) : amended,
  5591. DisplayName("Number Of Buffers") : amended
  5592. ]
  5593. uint32 NumberOfBuffers;
  5594. [WmiDataId(2),
  5595. DefineDataId("REDBOOK_WMI_SECTORS_PER_READ"),
  5596. read,
  5597. write,
  5598. Description("Sectors (2352 bytes each) per read.") : amended,
  5599. DisplayName("Sectors Per Read") : amended
  5600. ]
  5601. uint32 SectorsPerRead;
  5602. [WmiDataId(3),
  5603. DefineDataId("REDBOOK_WMI_SECTORS_PER_READ_MASK"),
  5604. read,
  5605. write,
  5606. Description("Bitwise mask of supported sectors per read for this drive. The lowest bit is one sector reads. If all bits are set, there are no restrictions.") : amended,
  5607. DisplayName("Sectors Per Read Mask") : amended
  5608. ]
  5609. uint32 SectorsPerReadMask;
  5610. [WmiDataId(4),
  5611. DefineDataId("REDBOOK_WMI_MAX_SECTORS_PER_READ"),
  5612. read,
  5613. write,
  5614. Description("Maximum sectors per read (depends on both adapter and drive).") : amended,
  5615. DisplayName("Maximum Sectors Per Read") : amended
  5616. ]
  5617. uint32 MaximumSectorsPerRead;
  5618. [WmiDataId(5),
  5619. DefineDataId("REDBOOK_WMI_PLAY_ENABLED"),
  5620. read,
  5621. write,
  5622. Description("PlayEnabled indicates the drive is currently using the RedBook filter.") : amended,
  5623. DisplayName("Play Enabled") : amended
  5624. ]
  5625. boolean PlayEnabled;
  5626. [WmiDataId(6),
  5627. DefineDataId("REDBOOK_WMI_CDDA_SUPPORTED"),
  5628. read,
  5629. write,
  5630. Description("CDDASupported indicates the drive supports digital audio for some sector sizes.") : amended,
  5631. DisplayName("CDDA Supported") : amended
  5632. ]
  5633. boolean CDDASupported;
  5634. [WmiDataId(7),
  5635. DefineDataId("REDBOOK_WMI_CDDA_ACCURATE"),
  5636. read,
  5637. write,
  5638. Description("CDDAAccurate indicates the drive acccurately reads digital audio. This ensures the highest quality audio") : amended,
  5639. DisplayName("CDDA Accurate") : amended
  5640. ]
  5641. boolean CDDAAccurate;
  5642. [WmiDataId(8),
  5643. read,
  5644. Description("Reserved for future use") : amended,
  5645. DisplayName("Reserved 1") : amended
  5646. ]
  5647. boolean Reserved1;
  5648. };
  5649. [Dynamic,
  5650. Provider("WMIProv"),
  5651. WMI,
  5652. Description("Digital Audio Filter Driver Performance Data (redbook)") : amended,
  5653. GuidName1("GUID_REDBOOK_WMI_PERF_DATA"),
  5654. GuidName2("MSRedbook_PerformanceGuid"),
  5655. HeaderName("REDBOOK_WMI_PERF_DATA"),
  5656. guid("{b90550e8-ae0a-11d1-a571-00c04fa34730}"),
  5657. DisplayName("Redbook Performance Information") : amended
  5658. ]
  5659. class MSRedbook_Performance
  5660. {
  5661. [key, read]
  5662. string InstanceName;
  5663. [read]
  5664. boolean Active;
  5665. [WmiDataId(1),
  5666. DefineDataId("REDBOOK_WMI_PERF_TIME_READING_DELAY"),
  5667. read,
  5668. Description("Seconds spent ready to read, but unused. (*1E-7)" ) : amended,
  5669. DisplayName("Time Read Delay") : amended
  5670. ]
  5671. sint64 TimeReadDelay;
  5672. [WmiDataId(2),
  5673. DefineDataId("REDBOOK_WMI_PERF_TIME_READING"),
  5674. read,
  5675. Description("Seconds spent reading data from source. (*1E-7)") : amended,
  5676. DisplayName("Time Reading") : amended
  5677. ]
  5678. sint64 TimeReading;
  5679. [WmiDataId(3),
  5680. DefineDataId("REDBOOK_WMI_PERF_TIME_STREAMING_DELAY"),
  5681. read,
  5682. Description("Seconds spent ready to stream, but unused. (*1E-7)") : amended,
  5683. DisplayName("Time Stream Delay") : amended
  5684. ]
  5685. sint64 TimeStreamDelay;
  5686. [WmiDataId(4),
  5687. DefineDataId("REDBOOK_WMI_PERF_TIME_STREAMING"),
  5688. read,
  5689. Description("Seconds spent streaming data. (*1E-7)") : amended,
  5690. DisplayName("Time Streaming") : amended
  5691. ]
  5692. sint64 TimeStreaming;
  5693. [WmiDataId(5),
  5694. DefineDataId("REDBOOK_WMI_PERF_DATA_PROCESSED"),
  5695. read,
  5696. Description("Number of bytes of data read and streamed.") : amended,
  5697. DisplayName("Data Processed") : amended
  5698. ]
  5699. sint64 DataProcessed;
  5700. [WmiDataId(6),
  5701. DefineDataId("REDBOOK_WMI_PERF_STREAM_PAUSED_COUNT"),
  5702. read,
  5703. Description("Number of times the stream has paused due to insufficient stream buffers.") : amended,
  5704. DisplayName("Stream Paused Count") : amended
  5705. ]
  5706. uint32 StreamPausedCount;
  5707. };
  5708. [WMI, Dynamic, Provider("WMIProv"),
  5709. guid("{e3dff7bd-3915-11d2-9103-00c04fb998a2}"),
  5710. WmiExpense(1),
  5711. Description("Enumerates Guids registered with WMI. The InstanceName is the Guid.") : amended]
  5712. class RegisteredGuids
  5713. {
  5714. [key, read]
  5715. string InstanceName;
  5716. [read]
  5717. boolean Active;
  5718. [DisplayName("GuidType") : amended,
  5719. read,
  5720. Description("Type of guid") : amended,
  5721. ValueMap{0, 1, 2, 3},
  5722. Value{"Trace Control Guid", "Trace Guid", "Data Guid", "Event Guid"} : amended,
  5723. WmiDataId(1)] uint32 GuidType;
  5724. [DisplayName("LoggerId") : amended,
  5725. read,
  5726. Description("If Trace guid and enabled, indicates the LoggerId to which this Guid is currently logging data") : amended,
  5727. WmiDataId(2)] uint32 LoggerId;
  5728. [DisplayName("EnableLevel") : amended,
  5729. read,
  5730. Description("If trace guid and If enabled, indicates the level of logging") : amended,
  5731. WmiDataId(3)] uint32 EnableLevel;
  5732. [DisplayName("EnableFlags") : amended,
  5733. read,
  5734. Description("If trace guid and enabled, indicates the flags currently used in logging") : amended,
  5735. WmiDataId(4)] uint32 EnableFlags;
  5736. [DisplayName("IsEnabled") : amended,
  5737. read,
  5738. Description("Indicates whether this Guid is enabled currently. For data guids this means if collection is enabled, For event guids this means if events are enabled. For Trace control guids this means the trace logging is enabled.") : amended,
  5739. WmiDataId(5)] boolean IsEnabled;
  5740. };
  5741. //*************************************************************
  5742. //*** Creates namespace for TRACE under \root\wmi
  5743. //*** EventTrace - is the root for all Trace Guids
  5744. //*** All Provider Control Guids will derive from EventTrace
  5745. //*** All Trace Data Guids will derive from their ControlGuid
  5746. //*************************************************************
  5747. [abstract]
  5748. class EventTrace
  5749. {
  5750. [HeaderDataId(1),
  5751. Description("Trace Event Size") : amended,
  5752. read]
  5753. uint16 EventSize;
  5754. [HeaderDataId(2),
  5755. Description("Reserved") : amended,
  5756. read]
  5757. uint16 ReservedHeaderField;
  5758. [HeaderDataId(3),
  5759. Description("Event Type") : amended,
  5760. read]
  5761. uint8 EventType;
  5762. [HeaderDataId(4),
  5763. Description("Trace Level") : amended,
  5764. read]
  5765. uint8 TraceLevel;
  5766. [HeaderDataId(5),
  5767. Description("Trace Version") : amended,
  5768. read]
  5769. uint16 TraceVersion;
  5770. [HeaderDataId(6),
  5771. Description("Thread Id") : amended,
  5772. PointerType,
  5773. read]
  5774. uint64 ThreadId;
  5775. [HeaderDataId(7),
  5776. Description("TimeStamp") : amended,
  5777. read]
  5778. uint64 TimeStamp;
  5779. [HeaderDataId(8),
  5780. Description("Event Guid") : amended,
  5781. read]
  5782. uint8 EventGuid[16];
  5783. [HeaderDataId(9),
  5784. Description("Kernel Time") : amended,
  5785. read]
  5786. uint32 KernelTime;
  5787. [HeaderDataId(10),
  5788. Description("User Time") : amended,
  5789. read]
  5790. uint32 UserTime;
  5791. [HeaderDataId(11),
  5792. Description("Instance Id") : amended,
  5793. read]
  5794. uint32 InstanceId;
  5795. [HeaderDataId(12),
  5796. Description("Parent Guid") : amended,
  5797. read]
  5798. uint8 ParentGuid[16];
  5799. [HeaderDataId(13),
  5800. Description("Parent Instance Id") : amended,
  5801. read]
  5802. uint32 ParentInstanceId;
  5803. [HeaderDataId(14),
  5804. Description("Pointer to Mof Data") : amended,
  5805. PointerType,
  5806. read]
  5807. uint32 MofData;
  5808. [HeaderDataId(15),
  5809. Description("Length of Mof Data") : amended,
  5810. read]
  5811. uint32 MofLength;
  5812. };
  5813. [Dynamic,
  5814. Description("Windows Kernel Trace"),
  5815. Guid("{9e814aad-3204-11d2-9a82-006008a86939}")
  5816. ]
  5817. class MSNT_SystemTrace:EventTrace
  5818. {
  5819. [Description ("Enable Flags") : amended,
  5820. ValueDescriptions{
  5821. "Process creations/deletions",
  5822. "Thread creations/deletions",
  5823. "image description",
  5824. "Disk input/output",
  5825. "File details",
  5826. "Page faults",
  5827. "Hard page faults",
  5828. "Network TCP/IP",
  5829. "Registry details",
  5830. "Debug print" } : amended,
  5831. DefineValues{
  5832. "EVENT_TRACE_FLAG_PROCESS",
  5833. "EVENT_TRACE_FLAG_THREAD",
  5834. "EVENT_TRACE_FLAG_IMAGE_LOAD",
  5835. "EVENT_TRACE_FLAG_DISK_IO",
  5836. "EVENT_TRACE_FLAG_DISK_FILE_IO",
  5837. "EVENT_TRACE_FLAG_MEMORY_PAGE_FAULTS",
  5838. "EVENT_TRACE_FLAG_MEMORY_HARD_FAULTS",
  5839. "EVENT_TRACE_FLAG_NETWORK_TCPIP",
  5840. "EVENT_TRACE_FLAG_REGISTRY",
  5841. "EVENT_TRACE_FLAG_DBGPRINT" },
  5842. Values{
  5843. "process",
  5844. "thread",
  5845. "img",
  5846. "disk",
  5847. "file",
  5848. "pf",
  5849. "hf",
  5850. "net",
  5851. "registry",
  5852. "dbgprint" },
  5853. ValueMap{
  5854. "0x00000001",
  5855. "0x00000002",
  5856. "0x00000004",
  5857. "0x00000100",
  5858. "0x00000200",
  5859. "0x00001000",
  5860. "0x00002000",
  5861. "0x00010000",
  5862. "0x00020000",
  5863. "0x00040000" }
  5864. ]
  5865. uint32 Flags;
  5866. };
  5867. [Dynamic,
  5868. Description("Event Trace Event") : amended,
  5869. Guid("{68fdd900-4a3e-11d1-84f4-0000f80464e3}"),
  5870. DisplayName("EventTrace") : amended
  5871. ]
  5872. class EventTraceEvent:MSNT_SystemTrace
  5873. {
  5874. };
  5875. [Dynamic,
  5876. Description("Event Trace Event") : amended,
  5877. EventType(0),
  5878. EventTypeName("Header") :amended
  5879. ]
  5880. class EventTrace_Header:EventTraceEvent
  5881. {
  5882. [WmiDataId(1),
  5883. Description("Buffer Size in Bytes") : amended,
  5884. read]
  5885. uint32 BufferSize;
  5886. [WmiDataId(2),
  5887. Description("Event Trace Version") : amended,
  5888. read]
  5889. uint32 Version;
  5890. [WmiDataId(3),
  5891. Description("Windows Build Number") : amended,
  5892. read]
  5893. uint32 ProviderVersion;
  5894. [WmiDataId(4),
  5895. Description("Number Of Processors") : amended,
  5896. read]
  5897. uint32 NumberOfProcessors;
  5898. [WmiDataId(5),
  5899. Description("Collection End Time") : amended,
  5900. read]
  5901. uint64 EndTime;
  5902. [WmiDataId(6),
  5903. Description("Timer Resolution") : amended,
  5904. read]
  5905. uint32 TimerResolution;
  5906. [WmiDataId(7),
  5907. Description("Maximum File Size in MBytes") : amended,
  5908. read]
  5909. uint32 MaxFileSize;
  5910. [WmiDataId(8),
  5911. Description("LogFileMode") : amended,
  5912. format("x"),
  5913. read]
  5914. uint32 LogFileMode;
  5915. [WmiDataId(9),
  5916. Description("Number of Buffers Written") : amended,
  5917. read]
  5918. uint32 BuffersWritten;
  5919. [WmiDataId(10),
  5920. Description("Buffer Number with earliest TimeStamp for a Cicular LogFile") : amended,
  5921. read]
  5922. uint32 StartBuffers;
  5923. [WmiDataId(11),
  5924. Description("Pointer Size in Bytes") : amended,
  5925. read]
  5926. uint32 PointerSize;
  5927. [WmiDataId(12),
  5928. Description("Number of Events Lost during collection") : amended,
  5929. read]
  5930. uint32 EventsLost;
  5931. [WmiDataId(13),
  5932. Description("CPU Speed in MHz") : amended,
  5933. read]
  5934. uint32 CPUSpeed;
  5935. [WmiDataId(14),
  5936. Description("Logger Name") : amended,
  5937. pointer,
  5938. read]
  5939. uint32 LoggerName;
  5940. [WmiDataId(15),
  5941. Description("LogFile Name") : amended,
  5942. pointer,
  5943. read]
  5944. uint32 LogFileName;
  5945. [WmiDataId(16),
  5946. Description("TimeZoneInformation") : amended,
  5947. extension("NoPrint"),
  5948. read]
  5949. uint8 TimeZoneInformation[176];
  5950. [WmiDataId(17),
  5951. Description("BootTime") : amended,
  5952. read]
  5953. uint64 BootTime;
  5954. [WmiDataId(18),
  5955. Description("Performance counter frequency in counts per second") : amended,
  5956. read]
  5957. uint64 PerfFreq;
  5958. [WmiDataId(19),
  5959. Description("StartTime") : amended,
  5960. read]
  5961. uint64 StartTime;
  5962. [WmiDataId(20),
  5963. Description("ReservedFlags") : amended,
  5964. format("x"),
  5965. read]
  5966. uint32 ReservedFlags;
  5967. [WmiDataId(21),
  5968. Description("Number of Buffers Lost during collection") : amended,
  5969. read]
  5970. uint32 BuffersLost;
  5971. };
  5972. [Dynamic,
  5973. Description("Process Create/Exit Event") : amended,
  5974. Guid("{3d6fa8d0-fe05-11d0-9dda-00c04fd7ba7c}"),
  5975. EventVersion(0),
  5976. DisplayName("Process") : amended
  5977. ]
  5978. class Process_V0:MSNT_SystemTrace
  5979. {
  5980. };
  5981. [Dynamic,
  5982. Description("Process Create/Exit Event") : amended,
  5983. EventType{1, 2, 3, 4},
  5984. EventTypeName{"Start", "End", "DCStart", "DCEnd"} : amended
  5985. ]
  5986. class Process_V0_TypeGroup1:Process_V0
  5987. {
  5988. [WmiDataId(1),
  5989. Description("Process ID") : amended,
  5990. pointer,
  5991. read]
  5992. uint32 ProcessId;
  5993. [WmiDataId(2),
  5994. Description("Parent Process ID") : amended,
  5995. pointer,
  5996. read]
  5997. uint32 ParentId;
  5998. [WmiDataId(3),
  5999. Description("User SID") : amended,
  6000. extension("Sid"),
  6001. read]
  6002. object UserSID;
  6003. [WmiDataId(4),
  6004. Description("ImageFileName") : amended,
  6005. StringTermination("NullTerminated"),
  6006. read]
  6007. string ImageFileName;
  6008. };
  6009. [Dynamic,
  6010. Description("Process Create/Exit Event") : amended,
  6011. Guid("{3d6fa8d0-fe05-11d0-9dda-00c04fd7ba7c}"),
  6012. EventVersion(1),
  6013. DisplayName("Process") : amended
  6014. ]
  6015. class Process:MSNT_SystemTrace
  6016. {
  6017. };
  6018. [Dynamic,
  6019. Description("Process Create/Exit Event") : amended,
  6020. EventType{1, 2, 3, 4},
  6021. EventTypeName{"Start", "End", "DCStart", "DCEnd"} : amended
  6022. ]
  6023. class Process_TypeGroup1:Process
  6024. {
  6025. [WmiDataId(1),
  6026. Description("PageDirectoryBase") : amended,
  6027. pointer,
  6028. read]
  6029. uint32 PageDirectoryBase;
  6030. [WmiDataId(2),
  6031. Description("ProcessId") : amended,
  6032. format("x"),
  6033. read]
  6034. uint32 ProcessId;
  6035. [WmiDataId(3),
  6036. Description("ParentId") : amended,
  6037. format("x"),
  6038. read]
  6039. uint32 ParentId;
  6040. [WmiDataId(4),
  6041. Description("SessionId") : amended,
  6042. read]
  6043. uint32 SessionId;
  6044. [WmiDataId(5),
  6045. Description("ExitStatus") : amended,
  6046. read]
  6047. sint32 ExitStatus;
  6048. [WmiDataId(6),
  6049. Description("UserSID") : amended,
  6050. extension("Sid"),
  6051. read]
  6052. object UserSID;
  6053. [WmiDataId(7),
  6054. Description("ImageFileName") : amended,
  6055. StringTermination("NullTerminated"),
  6056. read]
  6057. string ImageFileName;
  6058. };
  6059. [Dynamic,
  6060. Description("Thread Create/Exit Event") : amended,
  6061. Guid("{3d6fa8d1-fe05-11d0-9dda-00c04fd7ba7c}"),
  6062. EventVersion(0),
  6063. DisplayName("Thread") : amended
  6064. ]
  6065. class Thread_V0:MSNT_SystemTrace
  6066. {
  6067. };
  6068. [Dynamic,
  6069. Description("Thread Create/Exit Event") : amended,
  6070. EventType{1, 2, 3, 4},
  6071. EventTypeName{"Start", "End", "DCStart", "DCEnd"} : amended
  6072. ]
  6073. class Thread_V0_TypeGroup1:Thread_V0
  6074. {
  6075. [WmiDataId(1),
  6076. Description("ThreadId") : amended,
  6077. format("x"),
  6078. read]
  6079. uint32 TThreadId;
  6080. [WmiDataId(2),
  6081. Description("ProcessId") : amended,
  6082. format("x"),
  6083. read]
  6084. uint32 ProcessId;
  6085. };
  6086. [Dynamic,
  6087. Description("Thread Create/Exit Event") : amended,
  6088. Guid("{3d6fa8d1-fe05-11d0-9dda-00c04fd7ba7c}"),
  6089. EventVersion(1),
  6090. DisplayName("Thread") : amended
  6091. ]
  6092. class Thread:MSNT_SystemTrace
  6093. {
  6094. };
  6095. [Dynamic,
  6096. Description("Thread Create/Exit Event") : amended,
  6097. EventType{1, 3},
  6098. EventTypeName{"Start", "DCStart"} : amended
  6099. ]
  6100. class Thread_TypeGroup1:Thread
  6101. {
  6102. [WmiDataId(1),
  6103. Description("ProcessId") : amended,
  6104. format("x"),
  6105. read]
  6106. uint32 ProcessId;
  6107. [WmiDataId(2),
  6108. Description("ThreadId") : amended,
  6109. format("x"),
  6110. read]
  6111. uint32 TThreadId;
  6112. [WmiDataId(3),
  6113. Description("StackBase") : amended,
  6114. pointer,
  6115. read]
  6116. uint32 StackBase;
  6117. [WmiDataId(4),
  6118. Description("StackLimit") : amended,
  6119. pointer,
  6120. read]
  6121. uint32 StackLimit;
  6122. [WmiDataId(5),
  6123. Description("UserStackBase") : amended,
  6124. pointer,
  6125. read]
  6126. uint32 UserStackBase;
  6127. [WmiDataId(6),
  6128. Description("UserStackLimit") : amended,
  6129. pointer,
  6130. read]
  6131. uint32 UserStackLimit;
  6132. [WmiDataId(7),
  6133. Description("StartAddr") : amended,
  6134. pointer,
  6135. read]
  6136. uint32 StartAddr;
  6137. [WmiDataId(8),
  6138. Description("Win32StartAddr") : amended,
  6139. pointer,
  6140. read]
  6141. uint32 Win32StartAddr;
  6142. [WmiDataId(9),
  6143. Description("WaitMode") : amended,
  6144. format("c"),
  6145. read]
  6146. sint8 WaitMode;
  6147. };
  6148. [Dynamic,
  6149. Description("Thread Create/Exit Event") : amended,
  6150. EventType{2, 4},
  6151. EventTypeName{"End", "DCEnd"} : amended
  6152. ]
  6153. class Thread_TypeGroup2:Thread
  6154. {
  6155. [WmiDataId(1),
  6156. Description("ProcessId") : amended,
  6157. format("x"),
  6158. read]
  6159. uint32 ProcessId;
  6160. [WmiDataId(2),
  6161. Description("ThreadId") : amended,
  6162. format("x"),
  6163. read]
  6164. uint32 TThreadId;
  6165. };
  6166. [Dynamic,
  6167. Description("I/O Read/Write Event") : amended,
  6168. Guid("{3d6fa8d4-fe05-11d0-9dda-00c04fd7ba7c}"),
  6169. DisplayName("DiskIo") : amended
  6170. ]
  6171. class DiskIo:MSNT_SystemTrace
  6172. {
  6173. };
  6174. [Dynamic,
  6175. Description("I/O Read/Write Event") : amended,
  6176. EventType{10, 11},
  6177. EventTypeName{"Read", "Write"} : amended
  6178. ]
  6179. class DiskIo_TypeGroup1:DiskIo
  6180. {
  6181. [WmiDataId(1),
  6182. Description("DiskNumber") : amended,
  6183. read]
  6184. uint32 DiskNumber;
  6185. [WmiDataId(2),
  6186. Description("IrpFlags") : amended,
  6187. format("x"),
  6188. read]
  6189. uint32 IrpFlags;
  6190. [WmiDataId(3),
  6191. Description("TransferSize") : amended,
  6192. read]
  6193. uint32 TransferSize;
  6194. [WmiDataId(4),
  6195. Description("ResponseTime") : amended,
  6196. read]
  6197. uint32 ResponseTime;
  6198. [WmiDataId(5),
  6199. Description("ByteOffset") : amended,
  6200. read]
  6201. uint64 ByteOffset;
  6202. [WmiDataId(6),
  6203. Description("FileObject") : amended,
  6204. pointer,
  6205. read]
  6206. uint32 FileObject;
  6207. [WmiDataId(7),
  6208. Description("HighResResponseTime") : amended,
  6209. read]
  6210. uint64 HighResResponseTime;
  6211. };
  6212. [Dynamic,
  6213. Description("Registry") : amended,
  6214. Guid("{ae53722e-c863-11d2-8659-00c04fa321a1}"),
  6215. EventVersion(0),
  6216. DisplayName("Registry") : amended
  6217. ]
  6218. class Registry_V0:MSNT_SystemTrace
  6219. {
  6220. };
  6221. [Dynamic,
  6222. Description("Registry") : amended,
  6223. EventType{10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21},
  6224. EventTypeName{"Create", "Open", "Delete", "Query", "SetValue", "DeleteValue", "QueryValue", "EnumerateKey", "EnumerateValueKey", "QueryMultipleValue", "SetInformation", "Flush"} : amended
  6225. ]
  6226. class Registry_V0_TypeGroup1:Registry_V0
  6227. {
  6228. [WmiDataId(1),
  6229. Description("Status") : amended,
  6230. pointer,
  6231. read]
  6232. uint32 Status;
  6233. [WmiDataId(2),
  6234. Description("KeyHandle") : amended,
  6235. pointer,
  6236. read]
  6237. uint32 KeyHandle;
  6238. [WmiDataId(3),
  6239. Description("ElapsedTime") : amended,
  6240. read]
  6241. sint64 ElapsedTime;
  6242. [WmiDataId(4),
  6243. Description("KeyName") : amended,
  6244. StringTermination("NullTerminated"),
  6245. format("w"),
  6246. read]
  6247. string KeyName;
  6248. };
  6249. [Dynamic,
  6250. Description("Registry") : amended,
  6251. Guid("{ae53722e-c863-11d2-8659-00c04fa321a1}"),
  6252. EventVersion(1),
  6253. DisplayName("Registry") : amended
  6254. ]
  6255. class Registry:MSNT_SystemTrace
  6256. {
  6257. };
  6258. [Dynamic,
  6259. Description("Registry") : amended,
  6260. EventType{10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22},
  6261. EventTypeName{"Create", "Open", "Delete", "Query", "SetValue", "DeleteValue", "QueryValue", "EnumerateKey", "EnumerateValueKey", "QueryMultipleValue", "SetInformation", "Flush", "RunDown"} : amended
  6262. ]
  6263. class Registry_TypeGroup1:Registry
  6264. {
  6265. [WmiDataId(1),
  6266. Description("Status") : amended,
  6267. pointer,
  6268. read]
  6269. uint32 Status;
  6270. [WmiDataId(2),
  6271. Description("KeyHandle") : amended,
  6272. pointer,
  6273. read]
  6274. uint32 KeyHandle;
  6275. [WmiDataId(3),
  6276. Description("ElapsedTime") : amended,
  6277. read]
  6278. sint64 ElapsedTime;
  6279. [WmiDataId(4),
  6280. Description("Index") : amended,
  6281. read]
  6282. uint32 Index;
  6283. [WmiDataId(5),
  6284. Description("KeyName") : amended,
  6285. StringTermination("NullTerminated"),
  6286. format("w"),
  6287. read]
  6288. string KeyName;
  6289. };
  6290. [Dynamic,
  6291. Description("File Name") : amended,
  6292. Guid("{90cbdc39-4a3e-11d1-84f4-0000f80464e3}"),
  6293. EventVersion(0),
  6294. DisplayName("FileIo") : amended
  6295. ]
  6296. class FileIo_V0:MSNT_SystemTrace
  6297. {
  6298. };
  6299. [Dynamic,
  6300. Description("File Name") : amended,
  6301. EventType(0),
  6302. EventTypeName("Name") : amended
  6303. ]
  6304. class FileIo_V0_Name:FileIo_V0
  6305. {
  6306. [WmiDataId(1),
  6307. Description("FileObject") : amended,
  6308. pointer,
  6309. read]
  6310. uint32 FileObject;
  6311. [WmiDataId(2),
  6312. Description("FileName") : amended,
  6313. StringTermination("NullTerminated"),
  6314. format("w"),
  6315. read]
  6316. string FileName;
  6317. };
  6318. [Dynamic,
  6319. Description("File Name") : amended,
  6320. Guid("{90cbdc39-4a3e-11d1-84f4-0000f80464e3}"),
  6321. EventVersion(1),
  6322. DisplayName("FileIo") : amended
  6323. ]
  6324. class FileIo:MSNT_SystemTrace
  6325. {
  6326. };
  6327. [Dynamic,
  6328. Description("File Name") : amended,
  6329. EventType{0, 32},
  6330. EventTypeName{"Name", "FileCreate"} : amended
  6331. ]
  6332. class FileIo_Name:FileIo
  6333. {
  6334. [WmiDataId(1),
  6335. Description("FileObject") : amended,
  6336. pointer,
  6337. read]
  6338. uint32 FileObject;
  6339. [WmiDataId(2),
  6340. Description("FileName") : amended,
  6341. StringTermination("NullTerminated"),
  6342. format("w"),
  6343. read]
  6344. string FileName;
  6345. };
  6346. [Dynamic,
  6347. Description("TcpIp Send/Receive") : amended,
  6348. Guid("{9a280ac0-c8e0-11d1-84e2-00c04fb998a2}"),
  6349. EventVersion(0),
  6350. DisplayName("TcpIp") : amended
  6351. ]
  6352. class TcpIp_V0:MSNT_SystemTrace
  6353. {
  6354. };
  6355. [Dynamic,
  6356. Description("TcpIp Send/Receive") : amended,
  6357. EventType{10, 11, 12, 13, 14, 15},
  6358. EventTypeName{"Send", "Recv", "Connect", "Disconnect", "Retransmit", "Accept"} : amended
  6359. ]
  6360. class TcpIp_V0_TypeGroup1:TcpIp_V0
  6361. {
  6362. [WmiDataId(1),
  6363. Description("Remote IP Address") : amended,
  6364. extension("IPAddr"),
  6365. read]
  6366. object daddr;
  6367. [WmiDataId(2),
  6368. Description("Local IP Address") : amended,
  6369. extension("IPAddr"),
  6370. read]
  6371. object saddr;
  6372. [WmiDataId(3),
  6373. Description("Remote Port") : amended,
  6374. extension("Port"),
  6375. read]
  6376. object dport;
  6377. [WmiDataId(4),
  6378. Description("Local Port") : amended,
  6379. extension("Port"),
  6380. read]
  6381. object sport;
  6382. [WmiDataId(5),
  6383. Description("Transfer Size in Bytes") : amended,
  6384. read]
  6385. uint32 size;
  6386. [WmiDataId(6),
  6387. Description("Process ID") : amended,
  6388. read]
  6389. uint32 PID;
  6390. };
  6391. [Dynamic,
  6392. Description("TcpIp Send/Receive") : amended,
  6393. Guid("{9a280ac0-c8e0-11d1-84e2-00c04fb998a2}"),
  6394. EventVersion(1),
  6395. DisplayName("TcpIp") : amended
  6396. ]
  6397. class TcpIp:MSNT_SystemTrace
  6398. {
  6399. };
  6400. [Dynamic,
  6401. Description("TcpIp Send/Receive") : amended,
  6402. EventType{10, 11, 12, 13, 14, 15, 16},
  6403. EventTypeName{"Send", "Recv", "Connect", "Disconnect", "Retransmit", "Accept", "Reconnect"} : amended
  6404. ]
  6405. class TcpIp_TypeGroup1:TcpIp
  6406. {
  6407. [WmiDataId(1),
  6408. Description("Process ID") : amended,
  6409. read]
  6410. uint32 PID;
  6411. [WmiDataId(2),
  6412. Description("Transfer Size in Bytes") : amended,
  6413. read]
  6414. uint32 size;
  6415. [WmiDataId(3),
  6416. Description("Remote IP Address") : amended,
  6417. extension("IPAddr"),
  6418. read]
  6419. object daddr;
  6420. [WmiDataId(4),
  6421. Description("Local IP Address") : amended,
  6422. extension("IPAddr"),
  6423. read]
  6424. object saddr;
  6425. [WmiDataId(5),
  6426. Description("Remote Port") : amended,
  6427. extension("Port"),
  6428. read]
  6429. object dport;
  6430. [WmiDataId(6),
  6431. Description("Local Port") : amended,
  6432. extension("Port"),
  6433. read]
  6434. object sport;
  6435. };
  6436. [Dynamic,
  6437. Description("UcpIp Send/Receive") : amended,
  6438. Guid("{bf3a50c5-a9c9-4988-a005-2df0b7c80f80}"),
  6439. EventVersion(0),
  6440. DisplayName("UdpIp") : amended
  6441. ]
  6442. class UdpIp_V0:MSNT_SystemTrace
  6443. {
  6444. };
  6445. [Dynamic,
  6446. Description("UcpIp Send/Receive") : amended,
  6447. EventType{10, 11},
  6448. EventTypeName{"Send", "Recv"} : amended
  6449. ]
  6450. class UdpIp_V0_TypeGroup1:UdpIp_V0
  6451. {
  6452. [WmiDataId(1),
  6453. Description("Process ID") : amended,
  6454. pointer,
  6455. read]
  6456. uint32 context;
  6457. [WmiDataId(2),
  6458. Description("Local IP Address") : amended,
  6459. extension("IPAddr"),
  6460. read]
  6461. object saddr;
  6462. [WmiDataId(3),
  6463. Description("Local Port") : amended,
  6464. extension("Port"),
  6465. read]
  6466. object sport;
  6467. [WmiDataId(4),
  6468. Description("Transfer Size in Bytes") : amended,
  6469. read]
  6470. uint16 size;
  6471. [WmiDataId(5),
  6472. Description("Remote IP Address") : amended,
  6473. extension("IPAddr"),
  6474. read]
  6475. object daddr;
  6476. [WmiDataId(6),
  6477. Description("Remote Port") : amended,
  6478. extension("Port"),
  6479. read]
  6480. object dport;
  6481. [WmiDataId(7),
  6482. Description("Number of Bytes successfully sent") : amended,
  6483. read]
  6484. uint16 dsize;
  6485. };
  6486. [Dynamic,
  6487. Description("UdpIp Send/Receive") : amended,
  6488. Guid("{bf3a50c5-a9c9-4988-a005-2df0b7c80f80}"),
  6489. EventVersion(1),
  6490. DisplayName("UdpIp") : amended
  6491. ]
  6492. class UdpIp:MSNT_SystemTrace
  6493. {
  6494. };
  6495. [Dynamic,
  6496. Description("UdpIp Send/Receive") : amended,
  6497. EventType{10, 11},
  6498. EventTypeName{"Send", "Recv"} : amended
  6499. ]
  6500. class UdpIp_TypeGroup1:UdpIp
  6501. {
  6502. [WmiDataId(1),
  6503. Description("Process ID") : amended,
  6504. read]
  6505. uint32 PID;
  6506. [WmiDataId(2),
  6507. Description("Transfer Size in Bytes") : amended,
  6508. read]
  6509. uint32 size;
  6510. [WmiDataId(3),
  6511. Description("Remote IP Address") : amended,
  6512. extension("IPAddr"),
  6513. read]
  6514. object daddr;
  6515. [WmiDataId(4),
  6516. Description("Local IP Address") : amended,
  6517. extension("IPAddr"),
  6518. read]
  6519. object saddr;
  6520. [WmiDataId(5),
  6521. Description("Remote Port") : amended,
  6522. extension("Port"),
  6523. read]
  6524. object dport;
  6525. [WmiDataId(6),
  6526. Description("Local Port") : amended,
  6527. extension("Port"),
  6528. read]
  6529. object sport;
  6530. };
  6531. [Dynamic,
  6532. Description("Image Load") : amended,
  6533. Guid("{2cb15d1d-5fc1-11d2-abe1-00a0c911f518}"),
  6534. EventVersion(0),
  6535. DisplayName("Image") : amended
  6536. ]
  6537. class Image_V0:MSNT_SystemTrace
  6538. {
  6539. };
  6540. [Dynamic,
  6541. Description("Image Load") : amended,
  6542. EventType(10),
  6543. EventTypeName("Load") : amended
  6544. ]
  6545. class Image_V0_Load:Image_V0
  6546. {
  6547. [WmiDataId(1),
  6548. Description("BaseAddress") : amended,
  6549. pointer,
  6550. read]
  6551. uint32 BaseAddress;
  6552. [WmiDataId(2),
  6553. Description("ModuleSize") : amended,
  6554. read]
  6555. uint32 ModuleSize;
  6556. [WmiDataId(3),
  6557. Description("ImageFileName") : amended,
  6558. StringTermination("NullTerminated"),
  6559. format("w"),
  6560. read]
  6561. string ImageFileName;
  6562. };
  6563. [Dynamic,
  6564. Description("Image Load") : amended,
  6565. Guid("{2cb15d1d-5fc1-11d2-abe1-00a0c911f518}"),
  6566. EventVersion(1),
  6567. DisplayName("Image") : amended
  6568. ]
  6569. class Image:MSNT_SystemTrace
  6570. {
  6571. };
  6572. [Dynamic,
  6573. Description("Image Load") : amended,
  6574. EventType(10),
  6575. EventTypeName("Load") : amended
  6576. ]
  6577. class Image_Load:Image
  6578. {
  6579. [WmiDataId(1),
  6580. Description("ImageBase") : amended,
  6581. pointer,
  6582. read]
  6583. uint32 ImageBase;
  6584. [WmiDataId(2),
  6585. Description("ImageSize") : amended,
  6586. pointer,
  6587. read]
  6588. uint32 ImageSize;
  6589. [WmiDataId(3),
  6590. Description("ProcessId") : amended,
  6591. read]
  6592. uint32 ProcessId;
  6593. [WmiDataId(4),
  6594. Description("FileName") : amended,
  6595. StringTermination("NullTerminated"),
  6596. format("w"),
  6597. read]
  6598. string FileName;
  6599. };
  6600. [Dynamic,
  6601. Description("Page Fault Event") : amended,
  6602. Guid("{3d6fa8d3-fe05-11d0-9dda-00c04fd7ba7c}"),
  6603. DisplayName("PageFault") : amended
  6604. ]
  6605. class PageFault:MSNT_SystemTrace
  6606. {
  6607. };
  6608. [Dynamic,
  6609. Description("Page Fault Event") : amended,
  6610. EventType{10, 11, 12, 13, 14},
  6611. EventTypeName{"TransitionFault", "DemandZeroFault", "CopyOnWrite", "GuardPageFault", "HardPageFault"} : amended
  6612. ]
  6613. class PageFault_TransitionFault:PageFault
  6614. {
  6615. [WmiDataId(1),
  6616. Description("VirtualAddress") : amended,
  6617. pointer,
  6618. read]
  6619. uint32 VirtualAddress;
  6620. [WmiDataId(2),
  6621. Description("ProgramCounter") : amended,
  6622. pointer,
  6623. read]
  6624. uint32 ProgramCounter;
  6625. };
  6626. [Dynamic,
  6627. Description("System Configuration") : amended,
  6628. Guid("{01853a65-418f-4f36-aefc-dc0f1d2fd235}"),
  6629. DisplayName("SystemConfig") : amended
  6630. ]
  6631. class SystemConfig:MSNT_SystemTrace
  6632. {
  6633. };
  6634. [Dynamic,
  6635. Description("System Configuration") : amended,
  6636. EventType(10),
  6637. EventTypeName("CPU") : amended
  6638. ]
  6639. class SystemConfig_CPU:SystemConfig
  6640. {
  6641. [WmiDataId(1),
  6642. Description("MHz") : amended,
  6643. read]
  6644. uint32 MHz;
  6645. [WmiDataId(2),
  6646. Description("NumberOfProcessors") : amended,
  6647. read]
  6648. uint32 NumberOfProcessors;
  6649. [WmiDataId(3),
  6650. Description("MemSize") : amended,
  6651. read]
  6652. uint32 MemSize;
  6653. [WmiDataId(4),
  6654. Description("PageSize") : amended,
  6655. read]
  6656. uint32 PageSize;
  6657. [WmiDataId(5),
  6658. Description("AllocationGranularity") : amended,
  6659. read]
  6660. uint32 AllocationGranularity;
  6661. [WmiDataId(6),
  6662. Description("ComputerName") : amended,
  6663. read]
  6664. char16 ComputerName[256];
  6665. [WmiDataId(7),
  6666. Description("DomainName") : amended,
  6667. read]
  6668. char16 DomainName[132];
  6669. };
  6670. [Dynamic,
  6671. Description("System Configuration") : amended,
  6672. EventType(11),
  6673. EventTypeName("PhyDisk") : amended
  6674. ]
  6675. class SystemConfig_PhyDisk:SystemConfig
  6676. {
  6677. [WmiDataId(1),
  6678. Description("DiskNumber") : amended,
  6679. read]
  6680. uint32 DiskNumber;
  6681. [WmiDataId(2),
  6682. Description("BytesPerSector") : amended,
  6683. read]
  6684. uint32 BytesPerSector;
  6685. [WmiDataId(3),
  6686. Description("SectorsPerTrack") : amended,
  6687. read]
  6688. uint32 SectorsPerTrack;
  6689. [WmiDataId(4),
  6690. Description("TracksPerCylinder") : amended,
  6691. read]
  6692. uint32 TracksPerCylinder;
  6693. [WmiDataId(5),
  6694. Description("Cylinders") : amended,
  6695. read]
  6696. uint64 Cylinders;
  6697. [WmiDataId(6),
  6698. Description("SCSIPort") : amended,
  6699. read]
  6700. uint32 SCSIPort;
  6701. [WmiDataId(7),
  6702. Description("SCSIPath") : amended,
  6703. read]
  6704. uint32 SCSIPath;
  6705. [WmiDataId(8),
  6706. Description("SCSITarget") : amended,
  6707. read]
  6708. uint32 SCSITarget;
  6709. [WmiDataId(9),
  6710. Description("SCSILun") : amended,
  6711. read]
  6712. uint32 SCSILun;
  6713. [WmiDataId(10),
  6714. Description("Manufacturer") : amended,
  6715. read]
  6716. char16 Manufacturer[256];
  6717. [WmiDataId(11),
  6718. Description("PartitionCount") : amended,
  6719. read]
  6720. uint32 PartitionCount;
  6721. [WmiDataId(12),
  6722. Description("WriteCacheEnabled") : amended,
  6723. read]
  6724. boolean WriteCacheEnabled;
  6725. [WmiDataId(13),
  6726. Description("BootDriveLetter") : amended,
  6727. read]
  6728. char16 BootDriveLetter[3];
  6729. };
  6730. [Dynamic,
  6731. Description("System Configuration") : amended,
  6732. EventType(12),
  6733. EventTypeName("LogDisk") : amended
  6734. ]
  6735. class SystemConfig_LogDisk:SystemConfig
  6736. {
  6737. [WmiDataId(1),
  6738. Description("StartOffset") : amended,
  6739. read]
  6740. uint64 StartOffset;
  6741. [WmiDataId(2),
  6742. Description("PartitionSize") : amended,
  6743. read]
  6744. uint64 PartitionSize;
  6745. [WmiDataId(3),
  6746. Description("DiskNumber") : amended,
  6747. read]
  6748. uint32 DiskNumber;
  6749. [WmiDataId(4),
  6750. Description("Size") : amended,
  6751. read]
  6752. uint32 Size;
  6753. [WmiDataId(5),
  6754. Description("DriveType") : amended,
  6755. read]
  6756. uint32 DriveType;
  6757. [WmiDataId(6),
  6758. Description("DriveLetter") : amended,
  6759. read]
  6760. char16 DriveLetterString[4];
  6761. [WmiDataId(7),
  6762. Description("Pad") : amended,
  6763. read]
  6764. uint32 Pad;
  6765. [WmiDataId(8),
  6766. Description("PartitionNumber") : amended,
  6767. read]
  6768. uint32 PartitionNumber;
  6769. [WmiDataId(9),
  6770. Description("SectorsPerCluster") : amended,
  6771. read]
  6772. uint32 SectorsPerCluster;
  6773. [WmiDataId(10),
  6774. Description("BytesPerSector") : amended,
  6775. read]
  6776. uint32 BytesPerSector;
  6777. [WmiDataId(11),
  6778. Description("NumberOfFreeClusters") : amended,
  6779. read]
  6780. sint64 NumberOfFreeClusters;
  6781. [WmiDataId(12),
  6782. Description("TotalNumberOfClusters") : amended,
  6783. read]
  6784. sint64 TotalNumberOfClusters;
  6785. [WmiDataId(13),
  6786. Description("FileSystem") : amended,
  6787. read]
  6788. char16 FileSystem[16];
  6789. [WmiDataId(14),
  6790. Description("VolumeExtent") : amended,
  6791. read]
  6792. uint32 VolumeExt;
  6793. };
  6794. [Dynamic,
  6795. Description("System Configuration") : amended,
  6796. EventType(13),
  6797. EventTypeName("NIC") : amended
  6798. ]
  6799. class SystemConfig_NIC:SystemConfig
  6800. {
  6801. [WmiDataId(1),
  6802. Description("NICName") : amended,
  6803. read]
  6804. char16 NICName[256];
  6805. [WmiDataId(2),
  6806. Description("Index") : amended,
  6807. read]
  6808. uint32 Index;
  6809. [WmiDataId(3),
  6810. Description("PhysicalAddressLen") : amended,
  6811. read]
  6812. uint32 PhysicalAddrLen;
  6813. [WmiDataId(4),
  6814. Description("PhysicalAddress") : amended,
  6815. read]
  6816. char16 PhysicalAddr[8];
  6817. [WmiDataId(5),
  6818. Description("Size") : amended,
  6819. read]
  6820. uint32 Size;
  6821. [WmiDataId(6),
  6822. Description("IpAddress") : amended,
  6823. read]
  6824. sint32 IpAddress;
  6825. [WmiDataId(7),
  6826. Description("SubnetMask") : amended,
  6827. read]
  6828. sint32 SubnetMask;
  6829. [WmiDataId(8),
  6830. Description("DhcpServer") : amended,
  6831. read]
  6832. sint32 DhcpServer;
  6833. [WmiDataId(9),
  6834. Description("Gateway") : amended,
  6835. read]
  6836. sint32 Gateway;
  6837. [WmiDataId(10),
  6838. Description("PrimaryWinsServer") : amended,
  6839. read]
  6840. sint32 PrimaryWinsServer;
  6841. [WmiDataId(11),
  6842. Description("SecondaryWinsServer") : amended,
  6843. read]
  6844. sint32 SecondaryWinsServer;
  6845. [WmiDataId(12),
  6846. Description("DnsServer1") : amended,
  6847. read]
  6848. sint32 DnsServer1;
  6849. [WmiDataId(13),
  6850. Description("DnsServer2") : amended,
  6851. read]
  6852. sint32 DnsServer2;
  6853. [WmiDataId(14),
  6854. Description("DnsServer3") : amended,
  6855. read]
  6856. sint32 DnsServer3;
  6857. [WmiDataId(15),
  6858. Description("DnsServer4") : amended,
  6859. read]
  6860. sint32 DnsServer4;
  6861. [WmiDataId(16),
  6862. Description("Reserved; do not use.") : amended,
  6863. read]
  6864. uint32 Data;
  6865. };
  6866. [Dynamic,
  6867. Description("System Configuration") : amended,
  6868. EventType(14),
  6869. EventTypeName("Video") : amended
  6870. ]
  6871. class SystemConfig_Video:SystemConfig
  6872. {
  6873. [WmiDataId(1),
  6874. Description("MemorySize") : amended,
  6875. read]
  6876. uint32 MemorySize;
  6877. [WmiDataId(2),
  6878. Description("XResolution") : amended,
  6879. read]
  6880. uint32 XResolution;
  6881. [WmiDataId(3),
  6882. Description("YResolution") : amended,
  6883. read]
  6884. uint32 YResolution;
  6885. [WmiDataId(4),
  6886. Description("BitsPerPixel") : amended,
  6887. read]
  6888. uint32 BitsPerPixel;
  6889. [WmiDataId(5),
  6890. Description("VRefresh") : amended,
  6891. read]
  6892. uint32 VRefresh;
  6893. [WmiDataId(6),
  6894. Description("ChipType") : amended,
  6895. read]
  6896. char16 ChipType[256];
  6897. [WmiDataId(7),
  6898. Description("DACType") : amended,
  6899. read]
  6900. char16 DACType[256];
  6901. [WmiDataId(8),
  6902. Description("AdapterString") : amended,
  6903. read]
  6904. char16 AdapterString[256];
  6905. [WmiDataId(9),
  6906. Description("BiosString") : amended,
  6907. read]
  6908. char16 BiosString[256];
  6909. [WmiDataId(10),
  6910. Description("Device Name") : amended,
  6911. read]
  6912. char16 DeviceId[256];
  6913. [WmiDataId(11),
  6914. Description("StateFlags") : amended,
  6915. read]
  6916. uint32 StateFlags;
  6917. };
  6918. [Dynamic,
  6919. Description("System Configuration") : amended,
  6920. EventType(15),
  6921. EventTypeName("Services") : amended
  6922. ]
  6923. class SystemConfig_Services:SystemConfig
  6924. {
  6925. [WmiDataId(1),
  6926. Description("ServiceName") : amended,
  6927. read]
  6928. char16 ServiceName[34];
  6929. [WmiDataId(2),
  6930. Description("DisplayName") : amended,
  6931. read]
  6932. char16 DisplayName[256];
  6933. [WmiDataId(3),
  6934. Description("ProcessName") : amended,
  6935. read]
  6936. char16 ProcessName[34];
  6937. [WmiDataId(4),
  6938. Description("ProcessId") : amended,
  6939. read]
  6940. uint32 ProcessId;
  6941. };
  6942. [Dynamic,
  6943. Description("System Configuration") : amended,
  6944. EventType(16),
  6945. EventTypeName("Power") : amended
  6946. ]
  6947. class SystemConfig_Power:SystemConfig
  6948. {
  6949. [WmiDataId(1),
  6950. Description("S1") : amended,
  6951. read]
  6952. boolean S1;
  6953. [WmiDataId(2),
  6954. Description("S2") : amended,
  6955. read]
  6956. boolean S2;
  6957. [WmiDataId(3),
  6958. Description("S3") : amended,
  6959. read]
  6960. boolean S3;
  6961. [WmiDataId(4),
  6962. Description("S4") : amended,
  6963. read]
  6964. boolean S4;
  6965. [WmiDataId(5),
  6966. Description("S5") : amended,
  6967. read]
  6968. boolean S5;
  6969. [WmiDataId(6),
  6970. Description("Reserved; do not use.") : amended,
  6971. read]
  6972. uint8 Pad1;
  6973. [WmiDataId(7),
  6974. Description("Reserved; do not use.") : amended,
  6975. read]
  6976. uint8 Pad2;
  6977. [WmiDataId(8),
  6978. Description("Reserved; do not use.") : amended,
  6979. read]
  6980. uint8 Pad3;
  6981. };
  6982. //
  6983. // Tape
  6984. [abstract]
  6985. class MSTapeDriver
  6986. {
  6987. };
  6988. [Dynamic, Provider("WMIProv"),
  6989. WMI,
  6990. Description("Tape Drive Parameters") : amended,
  6991. guid("{B9A8CFD5-8D72-47a4-AC0E-284A3200F4FB}"),
  6992. HeaderName("WMI_TAPE_DRIVE_PARAMETERS"),
  6993. GuidName1("WMI_TAPE_DRIVE_PARAMETERS_GUID"),
  6994. DisplayName("Tape Drive Parameters") : amended
  6995. ]
  6996. class MSTapeDriveParam : MSTapeDriver
  6997. {
  6998. [key, read]
  6999. string InstanceName;
  7000. [read] boolean Active;
  7001. [DisplayName("Maximum Block Size") : amended,
  7002. WmiDataId(1),
  7003. Description("Maximum block size supported") : amended,
  7004. read]
  7005. uint32 MaximumBlockSize;
  7006. [DisplayName("Minimum Block Size") : amended,
  7007. WmiDataId(2),
  7008. Description("Minimum block size supported") : amended,
  7009. read]
  7010. uint32 MinimumBlockSize;
  7011. [DisplayName("Default Block Size") : amended,
  7012. WmiDataId(3),
  7013. Description("Default block size supported") : amended,
  7014. read]
  7015. uint32 DefaultBlockSize;
  7016. [DisplayName("Maximum Partition Count") : amended,
  7017. WmiDataId(4),
  7018. Description("Maximum number of partitions allowed.") : amended,
  7019. read]
  7020. uint32 MaximumPartitionCount;
  7021. [DisplayName("Compression Capable") : amended,
  7022. WmiDataId(5),
  7023. Description("TRUE if drive supports compression.") : amended,
  7024. read]
  7025. boolean CompressionCapable;
  7026. [WmiDataId(6),
  7027. DisplayName("Compression Enabled") : amended,
  7028. Description("TRUE if compression is enabled.") : amended,
  7029. read]
  7030. boolean CompressionEnabled;
  7031. [WmiDataId(7),
  7032. DisplayName("Report Setmarks") : amended,
  7033. Description("TRUE if drive reports setmarks") : amended,
  7034. read]
  7035. boolean ReportSetmarks;
  7036. [WmiDataId(8),
  7037. DisplayName("Hardware Error Correction") : amended,
  7038. Description("TRUE if drive supports hardware error correction") : amended,
  7039. read]
  7040. boolean HardwareErrorCorrection;
  7041. };
  7042. [Dynamic, Provider("WMIProv"),
  7043. WMI,
  7044. Description("Tape Media Capacity") : amended,
  7045. guid("{8C2147A4-FF29-4336-B8A4-227B54CC0966}"),
  7046. HeaderName("WMI_TAPE_MEDIA_PARAMETERS"),
  7047. GuidName1("WMI_TAPE_MEDIA_PARAMETERS_GUID"),
  7048. DisplayName("Tape Media Capacity") : amended
  7049. ]
  7050. class MSTapeMediaCapacity : MSTapeDriver
  7051. {
  7052. [key, read]
  7053. string InstanceName;
  7054. [read] boolean Active;
  7055. [DisplayName("Maximum Capacity") : amended,
  7056. WmiDataId(1),
  7057. Description("Maximum capacity of the media") : amended,
  7058. read]
  7059. uint64 MaximumCapacity;
  7060. [DisplayName("Available Capacity") : amended,
  7061. WmiDataId(2),
  7062. Description("Available capacity of the media") : amended,
  7063. read]
  7064. uint64 AvailableCapacity;
  7065. [DisplayName("Block Size") : amended,
  7066. WmiDataId(3),
  7067. Description("Current blocksize") : amended,
  7068. read]
  7069. uint32 BlockSize;
  7070. [DisplayName("Partition Count") : amended,
  7071. WmiDataId(4),
  7072. Description("Current number of partitions") : amended,
  7073. read]
  7074. uint32 PartitionCount;
  7075. [DisplayName("Media Write Protected") : amended,
  7076. WmiDataId(5),
  7077. Description("TRUE if media is write protected") : amended,
  7078. read]
  7079. boolean MediaWriteProtected;
  7080. };
  7081. [Dynamic, Provider("WMIProv"),
  7082. WMI,
  7083. Description("Tape Symbolic Name") : amended,
  7084. guid("{3FB828F7-F119-4066-B1E6-DB407CE9DE91}"),
  7085. HeaderName("WMI_TAPE_SYMBOLIC_NAME"),
  7086. GuidName1("WMI_TAPE_SYMBOLIC_NAME_GUID"),
  7087. DisplayName("Tape Symbolic Name") : amended
  7088. ]
  7089. class MSTapeSymbolicName : MSTapeDriver
  7090. {
  7091. [key, read]
  7092. string InstanceName;
  7093. [read] boolean Active;
  7094. [DisplayName("Tape symbolic name") : amended,
  7095. WmiDataId(1),
  7096. Description("Symbolic name such as Tape0") : amended,
  7097. read]
  7098. string TapeSymbolicName;
  7099. };
  7100. [Dynamic, Provider("WMIProv"),
  7101. WMI,
  7102. Description("Tape Drive Problem Warning") : amended,
  7103. guid("{BC4DD36C-FA66-4080-87A0-0C5922EB7887}"),
  7104. HeaderName("WMI_TAPE_PROBLEM_WARNING"),
  7105. GuidName1("WMI_TAPE_PROBLEM_WARNING_GUID"),
  7106. DisplayName("Tape Problem Event") : amended
  7107. ]
  7108. class MSTapeDriveProblemEvent : WmiEvent
  7109. {
  7110. [key, read]
  7111. string InstanceName;
  7112. [read] boolean Active;
  7113. [DisplayName("Drive Problem Type") : amended,
  7114. WmiDataId(1),
  7115. Description("Tape drive problem warning event") : amended,
  7116. read]
  7117. uint32 DriveProblemType;
  7118. [WmiDataId(2),
  7119. DisplayName("Tape Data") : amended,
  7120. Description("Tape drive problem data") : amended,
  7121. read]
  7122. uint8 TapeData[512];
  7123. };
  7124. [Dynamic, Provider("WMIProv"),
  7125. WMI,
  7126. Description("IO Read Write Errors") : amended,
  7127. guid("{58FD29F9-B516-40fd-871A-7EE76D5BB53E}"),
  7128. HeaderName("WMI_TAPE_PROBLEM_IO_ERROR"),
  7129. GuidName1("WMI_TAPE_PROBLEM_IO_ERROR_GUID"),
  7130. DisplayName("Tape Io Error") : amended
  7131. ]
  7132. class MSTapeProblemIoError : MSTapeDriver
  7133. {
  7134. [key, read]
  7135. string InstanceName;
  7136. [read] boolean Active;
  7137. [DisplayName("Read Corrected Without Delay") : amended,
  7138. WmiDataId(1),
  7139. Description("Read errors corrected without much delay") : amended,
  7140. read]
  7141. uint32 ReadCorrectedWithoutDelay;
  7142. [DisplayName("Read Corrected With Delay") : amended,
  7143. WmiDataId(2),
  7144. Description("Read errors corrected with substantial delay") : amended,
  7145. read]
  7146. uint32 ReadCorrectedWithDelay;
  7147. [DisplayName("Read Total Errors") : amended,
  7148. WmiDataId(3),
  7149. Description("Total number of Read errors") : amended,
  7150. read]
  7151. uint32 ReadTotalErrors;
  7152. [DisplayName("Read Total Corrected Errors") : amended,
  7153. WmiDataId(4),
  7154. Description("Total number of read errors that were corrected") : amended,
  7155. read]
  7156. uint32 ReadTotalCorrectedErrors;
  7157. [DisplayName("Read Total Uncorrected Errors") : amended,
  7158. WmiDataId(5),
  7159. Description("Total number of uncorrected read errors") : amended,
  7160. read]
  7161. uint32 ReadTotalUncorrectedErrors;
  7162. [DisplayName("Read Correction Algorithm Processed") : amended,
  7163. WmiDataId(6),
  7164. Description("Number of times correction algorithm was processed for read") : amended,
  7165. read]
  7166. uint32 ReadCorrectionAlgorithmProcessed;
  7167. [DisplayName("Write Corrected Without Delay") : amended,
  7168. WmiDataId(7),
  7169. Description("Write errors corrected without much delay") : amended,
  7170. read]
  7171. uint32 WriteCorrectedWithoutDelay;
  7172. [DisplayName("Write Corrected With Delay") : amended,
  7173. WmiDataId(8),
  7174. Description("Write errors corrected with substantial delay") : amended,
  7175. read]
  7176. uint32 WriteCorrectedWithDelay;
  7177. [DisplayName("Write Total Errors") : amended,
  7178. WmiDataId(9),
  7179. Description("Total number of Read errors") : amended,
  7180. read]
  7181. uint32 WriteTotalErrors;
  7182. [DisplayName("Write Total Corrected Errors") : amended,
  7183. WmiDataId(10),
  7184. Description("Total number of write errors that were corrected") : amended,
  7185. read]
  7186. uint32 WriteTotalCorrectedErrors;
  7187. [DisplayName("Write Total Uncorrected Errors") : amended,
  7188. WmiDataId(11),
  7189. Description("Total number of uncorrected write errors") : amended,
  7190. read]
  7191. uint32 WriteTotalUncorrectedErrors;
  7192. [DisplayName("Write Correction Algorithm Processed") : amended,
  7193. WmiDataId(12),
  7194. Description("Number of times correction algorithm was processed for write") : amended,
  7195. read]
  7196. uint32 WriteCorrectionAlgorithmProcessed;
  7197. [DisplayName("Non Medium Errors") : amended,
  7198. WmiDataId(13),
  7199. Description("Errors not related to medium") : amended,
  7200. read]
  7201. uint32 NonMediumErrors;
  7202. };
  7203. [Dynamic, Provider("WMIProv"),
  7204. WMI,
  7205. Description("Device Errors") : amended,
  7206. guid("{43EC6B13-10BB-4bf6-B716-1C1E2F10BB5F}"),
  7207. HeaderName("WMI_TAPE_PROBLEM_DEVICE_ERROR"),
  7208. GuidName1("WMI_TAPE_PROBLEM_DEVICE_ERROR_GUID"),
  7209. DisplayName("Tape Device Error") : amended
  7210. ]
  7211. class MSTapeProblemDeviceError : MSTapeDriver
  7212. {
  7213. [key, read]
  7214. string InstanceName;
  7215. [read] boolean Active;
  7216. [DisplayName("Read Warning") : amended,
  7217. WmiDataId(1),
  7218. Description("WARNING : Drive is experiencing read problem.") : amended,
  7219. read]
  7220. boolean ReadWarning;
  7221. [DisplayName("Write Warning") : amended,
  7222. WmiDataId(2),
  7223. Description("WARNING : Drive is experiencing write problem.") : amended,
  7224. read]
  7225. boolean WriteWarning;
  7226. [DisplayName("Hard Error") : amended,
  7227. WmiDataId(3),
  7228. Description("Drive hardware problem") : amended,
  7229. read]
  7230. boolean HardError;
  7231. [DisplayName("Read Failure") : amended,
  7232. WmiDataId(4),
  7233. Description("Critical Error : Too many read errors.") : amended,
  7234. read]
  7235. boolean ReadFailure;
  7236. [DisplayName("Write Failure") : amended,
  7237. WmiDataId(5),
  7238. Description("Critical Error : Too many write errors.") : amended,
  7239. read]
  7240. boolean WriteFailure;
  7241. [DisplayName("Unsupported Format") : amended,
  7242. WmiDataId(6),
  7243. Description("Tape format not supported") : amended,
  7244. read]
  7245. boolean UnsupportedFormat;
  7246. [DisplayName("Tape Snapped") : amended,
  7247. WmiDataId(7),
  7248. Description("Tape is snapped. Replace media") : amended,
  7249. read]
  7250. boolean TapeSnapped;
  7251. [DisplayName("Drive Requires Cleaning") : amended,
  7252. WmiDataId(8),
  7253. Description("Drive Requires Cleaning") : amended,
  7254. read]
  7255. boolean DriveRequiresCleaning;
  7256. [DisplayName("Time To Clean Drive") : amended,
  7257. WmiDataId(9),
  7258. Description("It's time to clean the drive") : amended,
  7259. read]
  7260. boolean TimetoCleanDrive;
  7261. [DisplayName("Drive Hardware Error") : amended,
  7262. WmiDataId(10),
  7263. Description("Hardware error. Check drive") : amended,
  7264. read]
  7265. boolean DriveHardwareError;
  7266. [DisplayName("Scsi Interface Error") : amended,
  7267. WmiDataId(11),
  7268. Description("Some error in cabling, or connection.") : amended,
  7269. read]
  7270. boolean ScsiInterfaceError;
  7271. [DisplayName("Media Life") : amended,
  7272. WmiDataId(12),
  7273. Description("Critical error: Media life expired.") : amended,
  7274. read]
  7275. boolean MediaLife;
  7276. };
  7277. //
  7278. // Medium Changer Libraries
  7279. [abstract]
  7280. class MSChangerDriver
  7281. {
  7282. };
  7283. [Dynamic, Provider("WMIProv"),
  7284. WMI,
  7285. Description("Changer Parameters") : amended,
  7286. guid("{24EB52AC-7C77-438b-AB61-D024DAB0C03A}"),
  7287. HeaderName("WMI_CHANGER_PARAMETERS"),
  7288. GuidName1("WMI_CHANGER_PARAMETERS_GUID"),
  7289. DisplayName("Changer Parameters") : amended
  7290. ]
  7291. class MSChangerParameters : MSChangerDriver
  7292. {
  7293. [key, read]
  7294. string InstanceName;
  7295. [read] boolean Active;
  7296. [DisplayName("Number Of Slots") : amended,
  7297. WmiDataId(1),
  7298. Description("Number of slots in the changer") : amended,
  7299. read]
  7300. uint32 NumberOfSlots;
  7301. [DisplayName("Number Of Drives") : amended,
  7302. WmiDataId(2),
  7303. Description("Number of drives in the changer") : amended,
  7304. read]
  7305. uint32 NumberOfDrives;
  7306. [DisplayName("Number Of IE Ports") : amended,
  7307. WmiDataId(3),
  7308. Description("Number of IEPorts in the changer") : amended,
  7309. read]
  7310. uint32 NumberOfIEPorts;
  7311. [DisplayName("Number Of Transports") : amended,
  7312. WmiDataId(4),
  7313. Description("Number of transport in the changer") : amended,
  7314. read]
  7315. uint32 NumberOfTransports;
  7316. [DisplayName("Number Of Doors") : amended,
  7317. WmiDataId(5),
  7318. Description("Number of doors in the changer") : amended,
  7319. read]
  7320. uint32 NumberOfDoors;
  7321. [DisplayName("Number Of Cleaner Slots") : amended,
  7322. WmiDataId(6),
  7323. Description("Number of slots for cleaner cartridge in the changer") : amended,
  7324. read]
  7325. uint32 NumberOfCleanerSlots;
  7326. [
  7327. DisplayName("Magazine Size") : amended,
  7328. WmiDataId(7),
  7329. Description("Magazine size if one exists") : amended,
  7330. read]
  7331. uint32 MagazineSize;
  7332. };
  7333. [Dynamic, Provider("WMIProv"),
  7334. WMI,
  7335. Description("Changer Problem Warning") : amended,
  7336. guid("{45DB06A5-20D5-4de3-A36C-3AB974600A4C}"),
  7337. HeaderName("WMI_CHANGER_PROBLEM_WARNING"),
  7338. GuidName1("WMI_CHANGER_PROBLEM_WARNING_GUID"),
  7339. DisplayName("Changer Problem Event") : amended
  7340. ]
  7341. class MSChangerProblemEvent : WmiEvent
  7342. {
  7343. [key, read]
  7344. string InstanceName;
  7345. [read] boolean Active;
  7346. [DisplayName("Changer Problem Type") : amended,
  7347. WmiDataId(1),
  7348. Description("Changer library problem warning type") : amended,
  7349. read]
  7350. uint32 ChangerProblemType;
  7351. [DisplayName("Changer Data") : amended,
  7352. WmiDataId(2),
  7353. Description("Changer problem data") : amended,
  7354. read]
  7355. uint8 ChangerData[512];
  7356. };
  7357. [Dynamic, Provider("WMIProv"),
  7358. WMI,
  7359. Description("Changer Errors") : amended,
  7360. guid("{56B396A8-0B95-42fe-BBCE-D36FDA904F8E}"),
  7361. HeaderName("WMI_CHANGER_PROBLEM_DEVICE_ERROR"),
  7362. GuidName1("WMI_CHANGER_PROBLEM_DEVICE_ERROR_GUID"),
  7363. DisplayName("Changer Device Error") : amended
  7364. ]
  7365. class MSChangerProblemDeviceError : MSChangerDriver
  7366. {
  7367. [key, read]
  7368. string InstanceName;
  7369. [read] boolean Active;
  7370. [DisplayName("Changer Problem Type") : amended,
  7371. WmiDataId(1),
  7372. Description("Changer library problem warning type") : amended,
  7373. read]
  7374. uint32 ChangerProblemType;
  7375. };
  7376. [abstract]
  7377. class MSDeviceUI
  7378. {
  7379. };
  7380. [WMI, Dynamic, Provider ("WMIProv"),
  7381. guid("{4504B1D4-C5EE-4df6-951F-16180E3DD815}"),
  7382. HeaderName("DEVICE_UI_FIRMWARE_REVISION"),
  7383. GuidName1("DEVICE_UI_FIRMWARE_REVISION_GUID"),
  7384. Description("Firmware Revision" ) : amended,
  7385. DisplayName("Device Firmware Revision") : amended
  7386. ]
  7387. class MSDeviceUI_FirmwareRevision : MSDeviceUI
  7388. {
  7389. boolean Active;
  7390. [key]
  7391. string InstanceName;
  7392. [DisplayName("Firmware Revision") : amended,
  7393. WmiDataId(1),
  7394. Description("Firmware Revision") : amended,
  7395. read]
  7396. string FirmwareRevision;
  7397. };
  7398. [WMI,
  7399. guid("{45068237-595D-4C7D-BD80-F84ADC0257F8}")
  7400. ]
  7401. class MSVerifierIrpLogEntry
  7402. {
  7403. [WmiDataId(1),
  7404. read,
  7405. DisplayInHex,
  7406. Description("Count")]
  7407. uint32 Count;
  7408. [WmiDataId(2),
  7409. read,
  7410. DisplayInHex,
  7411. Description("Major Function")]
  7412. uint8 Major;
  7413. [WmiDataId(3),
  7414. read,
  7415. DisplayInHex,
  7416. Description("Minor Function")]
  7417. uint8 Minor;
  7418. [WmiDataId(4),
  7419. read,
  7420. DisplayInHex,
  7421. Description("Flags")]
  7422. uint8 Flags;
  7423. [WmiDataId(5),
  7424. read,
  7425. DisplayInHex,
  7426. Description("Control")]
  7427. uint8 Control;
  7428. [WmiDataId(6),
  7429. read,
  7430. DisplayInHex,
  7431. Description("Arg1")]
  7432. uint64 Arg1;
  7433. [WmiDataId(7),
  7434. read,
  7435. DisplayInHex,
  7436. Description("Arg2")]
  7437. uint64 Arg2;
  7438. [WmiDataId(8),
  7439. read,
  7440. DisplayInHex,
  7441. Description("Arg3")]
  7442. uint64 Arg3;
  7443. [WmiDataId(9),
  7444. read,
  7445. DisplayInHex,
  7446. Description("Arg4")]
  7447. uint64 Arg4;
  7448. };
  7449. [WMI,Dynamic, Provider("WMIProv"),
  7450. Description("Verifier kernel information"),
  7451. guid("{1E2C2980-F7DB-46AA-820E-8734FCC21F4C}"),
  7452. locale("MS\\0x409")
  7453. ]
  7454. class MSVerifierIrpLogInformation
  7455. {
  7456. [key, read]
  7457. string InstanceName;
  7458. [read] boolean Active;
  7459. [WmiDataId(1),
  7460. read,
  7461. Description("DeviceType")
  7462. ] uint32 DeviceType;
  7463. [WmiDataId(2),
  7464. read
  7465. ] uint32 EntryCount;
  7466. [WmiDataId(3),
  7467. WmiSizeIs("EntryCount"),
  7468. read
  7469. ] MSVerifierIrpLogEntry Entries[];
  7470. };