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

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