Leaked source code of windows server 2003
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

794 lines
31 KiB

  1. #include "iisprov.h"
  2. //
  3. // Initialize WMI_ASSOCIATION_TYPE_DATA
  4. //
  5. WMI_ASSOCIATION_TYPE WMI_ASSOCIATION_TYPE_DATA::s_ElementSetting =
  6. { L"Element", L"Setting", g_wszElementSettingAssocParent, g_wszExtElementSettingAssocParent };
  7. WMI_ASSOCIATION_TYPE WMI_ASSOCIATION_TYPE_DATA::s_Component =
  8. { L"GroupComponent", L"PartComponent", g_wszGroupPartAssocParent, g_wszExtGroupPartAssocParent };
  9. WMI_ASSOCIATION_TYPE WMI_ASSOCIATION_TYPE_DATA::s_AdminACL =
  10. { L"GroupComponent", L"PartComponent", g_wszGroupPartAssocParent, g_wszExtGroupPartAssocParent };
  11. WMI_ASSOCIATION_TYPE WMI_ASSOCIATION_TYPE_DATA::s_IPSecurity =
  12. { L"Element", L"Setting", g_wszElementSettingAssocParent, g_wszExtElementSettingAssocParent };
  13. //
  14. // Initialize METABASE_KEYTYPE_DATA
  15. //
  16. METABASE_KEYTYPE METABASE_KEYTYPE_DATA::s_IIsApplicationPool =
  17. {
  18. L"IIsApplicationPool", NULL, NULL
  19. };
  20. METABASE_KEYTYPE METABASE_KEYTYPE_DATA::s_IIsApplicationPools =
  21. {
  22. L"IIsApplicationPools", NULL, L"/LM/w3svc/AppPools"
  23. };
  24. METABASE_KEYTYPE METABASE_KEYTYPE_DATA::s_IIsCertMapper =
  25. {
  26. L"IIsCertMapper", NULL, NULL
  27. };
  28. METABASE_KEYTYPE METABASE_KEYTYPE_DATA::s_IIsCompressionScheme =
  29. {
  30. L"IIsCompressionScheme", NULL, NULL
  31. };
  32. METABASE_KEYTYPE METABASE_KEYTYPE_DATA::s_IIsCompressionSchemes =
  33. {
  34. L"IIsCompressionSchemes", NULL, L"/LM/w3svc/Filters/Compression/Parameters"
  35. };
  36. METABASE_KEYTYPE METABASE_KEYTYPE_DATA::s_IIsComputer =
  37. {
  38. L"IIsComputer", NULL, L"/LM"
  39. };
  40. METABASE_KEYTYPE METABASE_KEYTYPE_DATA::s_IIsCustomLogModule =
  41. {
  42. L"IIsCustomLogModule", NULL, NULL
  43. };
  44. METABASE_KEYTYPE METABASE_KEYTYPE_DATA::s_IIsFilter =
  45. {
  46. L"IIsFilter", NULL, NULL
  47. };
  48. METABASE_KEYTYPE METABASE_KEYTYPE_DATA::s_IIsFilters =
  49. {
  50. L"IIsFilters", NULL, L"/LM/w3svc/filters"
  51. };
  52. METABASE_KEYTYPE METABASE_KEYTYPE_DATA::s_IIsFtpInfo =
  53. {
  54. L"IIsFtpInfo", NULL, L"/LM/msftpsvc/info"
  55. };
  56. METABASE_KEYTYPE METABASE_KEYTYPE_DATA::s_IIsFtpServer =
  57. {
  58. L"IIsFtpServer", NULL, NULL
  59. };
  60. METABASE_KEYTYPE METABASE_KEYTYPE_DATA::s_IIsFtpService =
  61. {
  62. L"IIsFtpService", NULL, L"/LM/msftpsvc"
  63. };
  64. METABASE_KEYTYPE METABASE_KEYTYPE_DATA::s_IIsFtpVirtualDir =
  65. {
  66. L"IIsFtpVirtualDir", NULL, NULL
  67. };
  68. METABASE_KEYTYPE METABASE_KEYTYPE_DATA::s_IIsImapInfo =
  69. {
  70. L"IIsImapInfo", NULL, L"/LM/imapsvc/info"
  71. };
  72. METABASE_KEYTYPE METABASE_KEYTYPE_DATA::s_IIsImapService =
  73. {
  74. L"IIsImapService", NULL, L"/LM/imapsvc"
  75. };
  76. METABASE_KEYTYPE METABASE_KEYTYPE_DATA::s_IIsLogModule =
  77. {
  78. L"IIsLogModule", NULL, NULL
  79. };
  80. METABASE_KEYTYPE METABASE_KEYTYPE_DATA::s_IIsLogModules =
  81. {
  82. L"IIsLogModules", NULL, L"/LM/Logging"
  83. };
  84. METABASE_KEYTYPE METABASE_KEYTYPE_DATA::s_IIsMimeMap =
  85. {
  86. L"IIsMimeMap", NULL, NULL
  87. };
  88. METABASE_KEYTYPE METABASE_KEYTYPE_DATA::s_IIsNntpInfo =
  89. {
  90. L"IIsNntpInfo", NULL, L"/LM/nntpsvc/info"
  91. };
  92. METABASE_KEYTYPE METABASE_KEYTYPE_DATA::s_IIsNntpService =
  93. {
  94. L"IIsNntpService", NULL, L"/LM/nntpsvc"
  95. };
  96. METABASE_KEYTYPE METABASE_KEYTYPE_DATA::s_IIsObject =
  97. {
  98. L"IIsObject", NULL, NULL
  99. };
  100. METABASE_KEYTYPE METABASE_KEYTYPE_DATA::s_IIsPop3Info =
  101. {
  102. L"IIsPop3Info", NULL, L"/LM/pop3svc/info"
  103. };
  104. METABASE_KEYTYPE METABASE_KEYTYPE_DATA::s_IIsPop3Service =
  105. {
  106. L"IIsPop3Service", NULL, L"/LM/pop3svc"
  107. };
  108. METABASE_KEYTYPE METABASE_KEYTYPE_DATA::s_IIsSmtpInfo =
  109. {
  110. L"IIsSmtpInfo", NULL, L"/LM/smtpsvc/info"
  111. };
  112. METABASE_KEYTYPE METABASE_KEYTYPE_DATA::s_IIsSmtpService =
  113. {
  114. L"IIsSmtpService", NULL, L"/LM/smtpsvc"
  115. };
  116. METABASE_KEYTYPE METABASE_KEYTYPE_DATA::s_IIsWebDirectory =
  117. {
  118. L"IIsWebDirectory", NULL, NULL
  119. };
  120. METABASE_KEYTYPE METABASE_KEYTYPE_DATA::s_IIsWebFile =
  121. {
  122. L"IIsWebFile", NULL, NULL
  123. };
  124. METABASE_KEYTYPE METABASE_KEYTYPE_DATA::s_IIsWebInfo =
  125. {
  126. L"IIsWebInfo", NULL, L"/LM/w3svc/info"
  127. };
  128. METABASE_KEYTYPE METABASE_KEYTYPE_DATA::s_IIsWebServer =
  129. {
  130. L"IIsWebServer", NULL, NULL
  131. };
  132. METABASE_KEYTYPE METABASE_KEYTYPE_DATA::s_IIsWebService =
  133. {
  134. L"IIsWebService", NULL, L"/LM/w3svc"
  135. };
  136. METABASE_KEYTYPE METABASE_KEYTYPE_DATA::s_IIsWebVirtualDir =
  137. {
  138. L"IIsWebVirtualDir", NULL, NULL
  139. };
  140. //
  141. // These are special. They don't get put into the hashtable of keytypes
  142. //
  143. METABASE_KEYTYPE METABASE_KEYTYPE_DATA::s_TYPE_AdminACL = { NULL, NULL };
  144. METABASE_KEYTYPE METABASE_KEYTYPE_DATA::s_TYPE_AdminACE = { NULL, NULL };
  145. METABASE_KEYTYPE METABASE_KEYTYPE_DATA::s_TYPE_IPSecurity = { NULL, NULL };
  146. METABASE_KEYTYPE METABASE_KEYTYPE_DATA::s_NO_TYPE = { NULL, NULL };
  147. METABASE_KEYTYPE* METABASE_KEYTYPE_DATA::s_MetabaseKeyTypes[] =
  148. {
  149. &s_IIsApplicationPool,
  150. &s_IIsApplicationPools,
  151. &s_IIsCertMapper,
  152. &s_IIsCompressionScheme,
  153. &s_IIsCompressionSchemes,
  154. &s_IIsComputer,
  155. &s_IIsCustomLogModule,
  156. &s_IIsFilter,
  157. &s_IIsFilters,
  158. &s_IIsFtpInfo,
  159. &s_IIsFtpServer,
  160. &s_IIsFtpService,
  161. &s_IIsFtpVirtualDir,
  162. &s_IIsImapInfo,
  163. &s_IIsImapService,
  164. &s_IIsLogModule,
  165. &s_IIsLogModules,
  166. &s_IIsMimeMap,
  167. &s_IIsNntpInfo,
  168. &s_IIsNntpService,
  169. &s_IIsObject,
  170. &s_IIsPop3Info,
  171. &s_IIsPop3Service,
  172. &s_IIsSmtpInfo,
  173. &s_IIsSmtpService,
  174. &s_IIsWebDirectory,
  175. &s_IIsWebFile,
  176. &s_IIsWebInfo,
  177. &s_IIsWebServer,
  178. &s_IIsWebService,
  179. &s_IIsWebVirtualDir,
  180. &s_TYPE_AdminACL,
  181. &s_TYPE_AdminACE,
  182. &s_TYPE_IPSecurity,
  183. &s_NO_TYPE,
  184. NULL
  185. };
  186. ///
  187. // initialize METABASE_PROPERTY_DATA
  188. //
  189. METABASE_PROPERTY METABASE_PROPERTY_DATA::s_AppRoot =
  190. { L"AppRoot",MD_APP_ROOT, IIS_MD_UT_FILE, STRING_METADATA, NULL, METADATA_INHERIT, TRUE, NULL };
  191. METABASE_PROPERTY METABASE_PROPERTY_DATA::s_Path =
  192. { L"Path", MD_VR_PATH, IIS_MD_UT_FILE, STRING_METADATA, NULL, METADATA_INHERIT, FALSE, NULL };
  193. METABASE_PROPERTY METABASE_PROPERTY_DATA::s_ServerBindings =
  194. { L"ServerBindings",MD_SERVER_BINDINGS, IIS_MD_UT_SERVER, MULTISZ_METADATA, NULL, METADATA_NO_ATTRIBUTES, FALSE, NULL };
  195. METABASE_PROPERTY METABASE_PROPERTY_DATA::s_ApplicationDependencies =
  196. { L"ApplicationDependencies", MD_APP_DEPENDENCIES, IIS_MD_UT_SERVER, MULTISZ_METADATA, NULL, METADATA_NO_ATTRIBUTES, FALSE, NULL };
  197. METABASE_PROPERTY METABASE_PROPERTY_DATA::s_WebSvcExtRestrictionList =
  198. { L"WebSvcExtRestrictionList", MD_WEB_SVC_EXT_RESTRICTION_LIST, IIS_MD_UT_SERVER, MULTISZ_METADATA, NULL, METADATA_NO_ATTRIBUTES, FALSE, NULL };
  199. METABASE_PROPERTY METABASE_PROPERTY_DATA::s_ServerComment =
  200. { L"ServerComment",MD_SERVER_COMMENT, IIS_MD_UT_SERVER, STRING_METADATA, NULL, METADATA_INHERIT, FALSE, L"" };
  201. METABASE_PROPERTY METABASE_PROPERTY_DATA::s_KeyType =
  202. { L"", MD_KEY_TYPE, IIS_MD_UT_SERVER, STRING_METADATA, NULL, METADATA_NO_ATTRIBUTES, FALSE, L"IIsObject", 0 };
  203. METABASE_PROPERTY* METABASE_PROPERTY_DATA::s_MetabaseProperties[] =
  204. {
  205. &s_AppRoot,
  206. &s_Path,
  207. &s_ServerBindings,
  208. &s_ApplicationDependencies,
  209. &s_WebSvcExtRestrictionList,
  210. &s_ServerComment,
  211. &s_KeyType,
  212. NULL
  213. };
  214. //
  215. //initiailze WMI_METHOD_PARAM_DATA
  216. //
  217. WMI_METHOD_PARAM WMI_METHOD_PARAM_DATA::s_Description = { L"Description", CIM_STRING, PARAM_IN };
  218. WMI_METHOD_PARAM WMI_METHOD_PARAM_DATA::s_Extension = { L"Extension", CIM_STRING, PARAM_IN };
  219. WMI_METHOD_PARAM WMI_METHOD_PARAM_DATA::s_Extensions = { L"Extensions", CIM_STRING | VT_ARRAY, PARAM_OUT };
  220. WMI_METHOD_PARAM WMI_METHOD_PARAM_DATA::s_ExtensionFile = { L"ExtensionFile", CIM_STRING, PARAM_IN };
  221. WMI_METHOD_PARAM WMI_METHOD_PARAM_DATA::s_ExtensionFiles = { L"ExtensionFiles", CIM_STRING | VT_ARRAY, PARAM_OUT };
  222. WMI_METHOD_PARAM WMI_METHOD_PARAM_DATA::s_Application = { L"Application", CIM_STRING, PARAM_IN };
  223. WMI_METHOD_PARAM WMI_METHOD_PARAM_DATA::s_GroupID = { L"GroupID", CIM_STRING, PARAM_IN };
  224. WMI_METHOD_PARAM WMI_METHOD_PARAM_DATA::s_Applications = { L"Applications", CIM_STRING | VT_ARRAY, PARAM_OUT };
  225. WMI_METHOD_PARAM WMI_METHOD_PARAM_DATA::s_AppMode = { L"AppMode", CIM_SINT32, PARAM_IN };
  226. WMI_METHOD_PARAM WMI_METHOD_PARAM_DATA::s_BackupDateTimeOut = { L"BackupDateTimeOut", CIM_DATETIME, PARAM_OUT };
  227. WMI_METHOD_PARAM WMI_METHOD_PARAM_DATA::s_BackupFlags = { L"BackupFlags", CIM_SINT32, PARAM_IN };
  228. WMI_METHOD_PARAM WMI_METHOD_PARAM_DATA::s_BackupLocation = { L"BackupLocation", CIM_STRING, PARAM_IN };
  229. WMI_METHOD_PARAM WMI_METHOD_PARAM_DATA::s_BackupLocation_io = { L"BackupLocation", CIM_STRING, PARAM_INOUT };
  230. WMI_METHOD_PARAM WMI_METHOD_PARAM_DATA::s_BackupVersion = { L"BackupVersion", CIM_SINT32, PARAM_IN };
  231. WMI_METHOD_PARAM WMI_METHOD_PARAM_DATA::s_BackupVersionOut = { L"BackupVersionOut", CIM_SINT32, PARAM_OUT };
  232. WMI_METHOD_PARAM WMI_METHOD_PARAM_DATA::s_DestPath = { L"DestPath", CIM_STRING, PARAM_IN };
  233. WMI_METHOD_PARAM WMI_METHOD_PARAM_DATA::s_EnumIndex = { L"EnumIndex", CIM_SINT32, PARAM_IN};
  234. WMI_METHOD_PARAM WMI_METHOD_PARAM_DATA::s_FileName = { L"FileName", CIM_STRING, PARAM_IN };
  235. WMI_METHOD_PARAM WMI_METHOD_PARAM_DATA::s_HistoryTime = { L"HistoryTime", CIM_DATETIME, PARAM_OUT };
  236. WMI_METHOD_PARAM WMI_METHOD_PARAM_DATA::s_IEnabled = { L"IEnabled", CIM_BOOLEAN, PARAM_IN };
  237. WMI_METHOD_PARAM WMI_METHOD_PARAM_DATA::s_IEnabled_o = { L"IEnabled", CIM_BOOLEAN, PARAM_OUT };
  238. WMI_METHOD_PARAM WMI_METHOD_PARAM_DATA::s_IMethod = { L"IMethod", CIM_SINT32, PARAM_IN };
  239. WMI_METHOD_PARAM WMI_METHOD_PARAM_DATA::s_IndexIn = { L"IndexIn", CIM_SINT32, PARAM_IN };
  240. WMI_METHOD_PARAM WMI_METHOD_PARAM_DATA::s_InProcFlag = { L"InProcFlag", CIM_BOOLEAN, PARAM_IN };
  241. WMI_METHOD_PARAM WMI_METHOD_PARAM_DATA::s_AppPoolName = { L"AppPoolName", CIM_STRING, PARAM_IN };
  242. WMI_METHOD_PARAM WMI_METHOD_PARAM_DATA::s_bEnable = { L"bEnable", CIM_BOOLEAN, PARAM_IN };
  243. WMI_METHOD_PARAM WMI_METHOD_PARAM_DATA::s_bCanDelete = { L"bCanDelete", CIM_BOOLEAN, PARAM_IN };
  244. WMI_METHOD_PARAM WMI_METHOD_PARAM_DATA::s_bCreate = { L"bCreate", CIM_BOOLEAN, PARAM_IN };
  245. WMI_METHOD_PARAM WMI_METHOD_PARAM_DATA::s_MajorVersion = { L"MajorVersion", CIM_SINT32, PARAM_IN };
  246. WMI_METHOD_PARAM WMI_METHOD_PARAM_DATA::s_MajorVersion_o = { L"MajorVersion", CIM_SINT32, PARAM_OUT };
  247. WMI_METHOD_PARAM WMI_METHOD_PARAM_DATA::s_MDFlags = { L"MDFlags", CIM_SINT32, PARAM_IN };
  248. WMI_METHOD_PARAM WMI_METHOD_PARAM_DATA::s_MDHistoryLocation = { L"MDHistoryLocation", CIM_STRING, PARAM_IN };
  249. WMI_METHOD_PARAM WMI_METHOD_PARAM_DATA::s_MDHistoryLocation_io = { L"MDHistoryLocation", CIM_STRING, PARAM_INOUT };
  250. WMI_METHOD_PARAM WMI_METHOD_PARAM_DATA::s_MinorVersion = { L"MinorVersion", CIM_SINT32, PARAM_IN };
  251. WMI_METHOD_PARAM WMI_METHOD_PARAM_DATA::s_MinorVersion_o = { L"MinorVersion", CIM_SINT32, PARAM_OUT };
  252. WMI_METHOD_PARAM WMI_METHOD_PARAM_DATA::s_NtAcct = { L"NtAcct", CIM_STRING, PARAM_IN };
  253. WMI_METHOD_PARAM WMI_METHOD_PARAM_DATA::s_NtAcct_o = { L"NtAcct", CIM_STRING, PARAM_OUT };
  254. WMI_METHOD_PARAM WMI_METHOD_PARAM_DATA::s_NtPwd = { L"NtPwd", CIM_STRING, PARAM_IN };
  255. WMI_METHOD_PARAM WMI_METHOD_PARAM_DATA::s_NtPwd_o = { L"NtPwd", CIM_STRING, PARAM_OUT };
  256. WMI_METHOD_PARAM WMI_METHOD_PARAM_DATA::s_Password = { L"Password", CIM_STRING, PARAM_IN };
  257. WMI_METHOD_PARAM WMI_METHOD_PARAM_DATA::s_Passwd = { L"Passwd", CIM_STRING, PARAM_IN };
  258. WMI_METHOD_PARAM WMI_METHOD_PARAM_DATA::s_PathOfRootVirtualDir = { L"PathOfRootVirtualDir", CIM_STRING, PARAM_IN };
  259. WMI_METHOD_PARAM WMI_METHOD_PARAM_DATA::s_Recursive = { L"Recursive", CIM_BOOLEAN, PARAM_IN };
  260. WMI_METHOD_PARAM WMI_METHOD_PARAM_DATA::s_ServerComment = { L"ServerComment", CIM_STRING, PARAM_IN };
  261. WMI_METHOD_PARAM WMI_METHOD_PARAM_DATA::s_ServerBindings = { L"ServerBindings", VT_ARRAY | VT_UNKNOWN, PARAM_IN };
  262. WMI_METHOD_PARAM WMI_METHOD_PARAM_DATA::s_ServerId = { L"ServerId", CIM_SINT32, PARAM_IN };
  263. WMI_METHOD_PARAM WMI_METHOD_PARAM_DATA::s_SourcePath = { L"SourcePath", CIM_STRING, PARAM_IN };
  264. WMI_METHOD_PARAM WMI_METHOD_PARAM_DATA::s_strName = { L"strName", CIM_STRING, PARAM_IN };
  265. WMI_METHOD_PARAM WMI_METHOD_PARAM_DATA::s_strName_o = { L"strName", CIM_STRING, PARAM_OUT };
  266. WMI_METHOD_PARAM WMI_METHOD_PARAM_DATA::s_vCert = { L"vCert", CIM_STRING, PARAM_IN };
  267. WMI_METHOD_PARAM WMI_METHOD_PARAM_DATA::s_vCert_o = { L"vCert", CIM_STRING, PARAM_OUT };
  268. WMI_METHOD_PARAM WMI_METHOD_PARAM_DATA::s_vKey = { L"vKey", CIM_STRING, PARAM_IN };
  269. WMI_METHOD_PARAM* WMI_METHOD_PARAM_DATA::s_ServiceEnableApplication[] =
  270. {
  271. &s_Application,
  272. NULL
  273. };
  274. WMI_METHOD_PARAM* WMI_METHOD_PARAM_DATA::s_ServiceRemoveApplication[] =
  275. {
  276. &s_Application,
  277. NULL
  278. };
  279. WMI_METHOD_PARAM* WMI_METHOD_PARAM_DATA::s_ServiceListApplications[] =
  280. {
  281. &s_Applications,
  282. NULL
  283. };
  284. WMI_METHOD_PARAM* WMI_METHOD_PARAM_DATA::s_ServiceQueryGroupIDStatus[] =
  285. {
  286. &s_GroupID,
  287. &s_Applications,
  288. NULL
  289. };
  290. WMI_METHOD_PARAM* WMI_METHOD_PARAM_DATA::s_ServiceAddDependency[] =
  291. {
  292. &s_Application,
  293. &s_GroupID,
  294. NULL
  295. };
  296. WMI_METHOD_PARAM* WMI_METHOD_PARAM_DATA::s_ServiceRemoveDependency[] =
  297. {
  298. &s_Application,
  299. &s_GroupID,
  300. NULL
  301. };
  302. WMI_METHOD_PARAM* WMI_METHOD_PARAM_DATA::s_ServiceEnableWebServiceExtension[] =
  303. {
  304. &s_Extension,
  305. NULL
  306. };
  307. WMI_METHOD_PARAM* WMI_METHOD_PARAM_DATA::s_ServiceDisableWebServiceExtension[] =
  308. {
  309. &s_Extension,
  310. NULL
  311. };
  312. WMI_METHOD_PARAM* WMI_METHOD_PARAM_DATA::s_ServiceListWebServiceExtensions[] =
  313. {
  314. &s_Extensions,
  315. NULL
  316. };
  317. WMI_METHOD_PARAM* WMI_METHOD_PARAM_DATA::s_ServiceEnableExtensionFile[] =
  318. {
  319. &s_ExtensionFile,
  320. NULL
  321. };
  322. WMI_METHOD_PARAM* WMI_METHOD_PARAM_DATA::s_ServiceDisableExtensionFile[] =
  323. {
  324. &s_ExtensionFile,
  325. NULL
  326. };
  327. WMI_METHOD_PARAM* WMI_METHOD_PARAM_DATA::s_ServiceAddExtensionFile[] =
  328. {
  329. &s_ExtensionFile,
  330. &s_bEnable,
  331. &s_GroupID,
  332. &s_bCanDelete,
  333. &s_Description,
  334. NULL
  335. };
  336. WMI_METHOD_PARAM* WMI_METHOD_PARAM_DATA::s_ServiceDeleteExtensionFile[] =
  337. {
  338. &s_ExtensionFile,
  339. NULL
  340. };
  341. WMI_METHOD_PARAM* WMI_METHOD_PARAM_DATA::s_ServiceListExtensionFiles[] =
  342. {
  343. &s_ExtensionFiles,
  344. NULL
  345. };
  346. WMI_METHOD_PARAM* WMI_METHOD_PARAM_DATA::s_ServiceCreateNewServer[] =
  347. {
  348. &s_ServerComment,
  349. &s_ServerBindings,
  350. &s_PathOfRootVirtualDir,
  351. &s_ServerId,
  352. NULL
  353. };
  354. WMI_METHOD_PARAM* WMI_METHOD_PARAM_DATA::s_AppCreate[] =
  355. {
  356. &s_InProcFlag,
  357. NULL
  358. };
  359. WMI_METHOD_PARAM* WMI_METHOD_PARAM_DATA::s_AppCreate2[] =
  360. {
  361. &s_AppMode,
  362. NULL
  363. };
  364. WMI_METHOD_PARAM* WMI_METHOD_PARAM_DATA::s_AppCreate3[] =
  365. {
  366. &s_AppMode,
  367. &s_AppPoolName,
  368. &s_bCreate,
  369. NULL
  370. };
  371. WMI_METHOD_PARAM* WMI_METHOD_PARAM_DATA::s_AppDelete[] =
  372. {
  373. &s_Recursive,
  374. NULL
  375. };
  376. WMI_METHOD_PARAM* WMI_METHOD_PARAM_DATA::s_AppUnLoad[] =
  377. {
  378. &s_Recursive,
  379. NULL
  380. };
  381. WMI_METHOD_PARAM* WMI_METHOD_PARAM_DATA::s_AppEnable[] =
  382. {
  383. &s_Recursive,
  384. NULL
  385. };
  386. WMI_METHOD_PARAM* WMI_METHOD_PARAM_DATA::s_AppDisable[] =
  387. {
  388. &s_Recursive,
  389. NULL
  390. };
  391. WMI_METHOD_PARAM* WMI_METHOD_PARAM_DATA::s_BackupWithPasswd[] =
  392. {
  393. &s_BackupLocation,
  394. &s_BackupVersion,
  395. &s_BackupFlags,
  396. &s_Password,
  397. NULL
  398. };
  399. WMI_METHOD_PARAM* WMI_METHOD_PARAM_DATA::s_DeleteBackup[] =
  400. {
  401. &s_BackupLocation,
  402. &s_BackupVersion,
  403. NULL
  404. };
  405. WMI_METHOD_PARAM* WMI_METHOD_PARAM_DATA::s_EnumBackups[] =
  406. {
  407. &s_BackupLocation_io,
  408. &s_IndexIn,
  409. &s_BackupVersionOut,
  410. &s_BackupDateTimeOut,
  411. NULL
  412. };
  413. WMI_METHOD_PARAM* WMI_METHOD_PARAM_DATA::s_RestoreWithPasswd[] =
  414. {
  415. &s_BackupLocation,
  416. &s_BackupVersion,
  417. &s_BackupFlags,
  418. &s_Password,
  419. NULL
  420. };
  421. WMI_METHOD_PARAM* WMI_METHOD_PARAM_DATA::s_Export[] =
  422. {
  423. &s_Passwd,
  424. &s_FileName,
  425. &s_SourcePath,
  426. &s_MDFlags,
  427. NULL
  428. };
  429. WMI_METHOD_PARAM* WMI_METHOD_PARAM_DATA::s_Import[] =
  430. {
  431. &s_Passwd,
  432. &s_FileName,
  433. &s_SourcePath,
  434. &s_DestPath,
  435. &s_MDFlags,
  436. NULL
  437. };
  438. WMI_METHOD_PARAM* WMI_METHOD_PARAM_DATA::s_RestoreHistory[] =
  439. {
  440. &s_MDHistoryLocation,
  441. &s_MajorVersion,
  442. &s_MinorVersion,
  443. &s_MDFlags,
  444. NULL
  445. };
  446. WMI_METHOD_PARAM* WMI_METHOD_PARAM_DATA::s_EnumHistory[] =
  447. {
  448. &s_MDHistoryLocation_io,
  449. &s_MajorVersion_o,
  450. &s_MinorVersion_o,
  451. &s_HistoryTime,
  452. &s_EnumIndex,
  453. NULL
  454. };
  455. WMI_METHOD_PARAM* WMI_METHOD_PARAM_DATA::s_CreateMapping[] =
  456. {
  457. &s_vCert,
  458. &s_NtAcct,
  459. &s_NtPwd,
  460. &s_strName,
  461. &s_IEnabled,
  462. NULL
  463. };
  464. WMI_METHOD_PARAM* WMI_METHOD_PARAM_DATA::s_DeleteMapping[] =
  465. {
  466. &s_IMethod,
  467. &s_vKey,
  468. NULL
  469. };
  470. WMI_METHOD_PARAM* WMI_METHOD_PARAM_DATA::s_GetMapping[] =
  471. {
  472. &s_IMethod,
  473. &s_vKey,
  474. &s_vCert_o,
  475. &s_NtAcct_o,
  476. &s_NtPwd_o,
  477. &s_strName_o,
  478. &s_IEnabled_o,
  479. NULL
  480. };
  481. WMI_METHOD_PARAM* WMI_METHOD_PARAM_DATA::s_SetAcct[] =
  482. {
  483. &s_IMethod,
  484. &s_vKey,
  485. &s_NtAcct,
  486. NULL
  487. };
  488. WMI_METHOD_PARAM* WMI_METHOD_PARAM_DATA::s_SetEnabled[] =
  489. {
  490. &s_IMethod,
  491. &s_vKey,
  492. &s_IEnabled,
  493. NULL
  494. };
  495. WMI_METHOD_PARAM* WMI_METHOD_PARAM_DATA::s_SetName[] =
  496. {
  497. &s_IMethod,
  498. &s_vKey,
  499. &s_strName,
  500. NULL
  501. };
  502. WMI_METHOD_PARAM* WMI_METHOD_PARAM_DATA::s_SetPwd[] =
  503. {
  504. &s_IMethod,
  505. &s_vKey,
  506. &s_NtPwd,
  507. NULL
  508. };
  509. WMI_METHOD_PARAM* WMI_METHOD_PARAM_DATA::s_EnumAppsInPool[] =
  510. {
  511. &s_Applications,
  512. NULL
  513. };
  514. //
  515. //initialize WMI_METHOD_DATA
  516. //
  517. WMI_METHOD WMI_METHOD_DATA::s_ServiceListExtensionFiles = {L"ListExtensionFiles", 0, NULL, WMI_METHOD_PARAM_DATA::s_ServiceListExtensionFiles, L"Lists WebSvcExtRestrictionList property." };
  518. WMI_METHOD WMI_METHOD_DATA::s_ServiceAddExtensionFile = {L"AddExtensionFile", 0, NULL, WMI_METHOD_PARAM_DATA::s_ServiceAddExtensionFile, L"Modifies WebSvcExtRestrictionList property." };
  519. WMI_METHOD WMI_METHOD_DATA::s_ServiceDeleteExtensionFile = {L"DeleteExtensionFileRecord", 0, NULL, WMI_METHOD_PARAM_DATA::s_ServiceDeleteExtensionFile, L"Modifies WebSvcExtRestrictionList property." };
  520. WMI_METHOD WMI_METHOD_DATA::s_ServiceEnableExtensionFile = {L"EnableExtensionFile", 0, NULL, WMI_METHOD_PARAM_DATA::s_ServiceEnableExtensionFile, L"Modifies WebSvcExtRestrictionList property." };
  521. WMI_METHOD WMI_METHOD_DATA::s_ServiceDisableExtensionFile = {L"DisableExtensionFile", 0, NULL, WMI_METHOD_PARAM_DATA::s_ServiceDisableExtensionFile, L"Modifies WebSvcExtRestrictionList property." };
  522. WMI_METHOD WMI_METHOD_DATA::s_ServiceEnableWebServiceExtension = {L"EnableWebServiceExtension", 0, NULL, WMI_METHOD_PARAM_DATA::s_ServiceEnableWebServiceExtension, L"Modifies WebSvcExtRestrictionList property." };
  523. WMI_METHOD WMI_METHOD_DATA::s_ServiceDisableWebServiceExtension = {L"DisableWebServiceExtension", 0, NULL, WMI_METHOD_PARAM_DATA::s_ServiceDisableWebServiceExtension, L"Modifies WebSvcExtRestrictionList property." };
  524. WMI_METHOD WMI_METHOD_DATA::s_ServiceListWebServiceExtensions = {L"ListWebServiceExtensions", 0, NULL, WMI_METHOD_PARAM_DATA::s_ServiceListWebServiceExtensions, L"Lists WebSvcExtRestrictionList property." };
  525. WMI_METHOD WMI_METHOD_DATA::s_ServiceEnableApplication = {L"EnableApplication", 0, NULL, WMI_METHOD_PARAM_DATA::s_ServiceEnableApplication, L"Modifies ApplicationDependencies property." };
  526. WMI_METHOD WMI_METHOD_DATA::s_ServiceRemoveApplication = {L"RemoveApplication", 0, NULL, WMI_METHOD_PARAM_DATA::s_ServiceRemoveApplication, L"Modifies ApplicationDependencies property." };
  527. WMI_METHOD WMI_METHOD_DATA::s_ServiceListApplications = {L"ListApplications", 0, NULL, WMI_METHOD_PARAM_DATA::s_ServiceListApplications, L"Lists ApplicationDependencies property." };
  528. WMI_METHOD WMI_METHOD_DATA::s_ServiceQueryGroupIDStatus = {L"QueryGroupIDStatus", 0, NULL, WMI_METHOD_PARAM_DATA::s_ServiceQueryGroupIDStatus, L"Lists Applications that depends on the given GroupID." };
  529. WMI_METHOD WMI_METHOD_DATA::s_ServiceAddDependency = {L"AddDependency", 0, NULL, WMI_METHOD_PARAM_DATA::s_ServiceAddDependency, L"Modifies ApplicationDependencies property." };
  530. WMI_METHOD WMI_METHOD_DATA::s_ServiceRemoveDependency = {L"RemoveDependency", 0, NULL, WMI_METHOD_PARAM_DATA::s_ServiceRemoveDependency, L"Modifies ApplicationDependencies property." };
  531. WMI_METHOD WMI_METHOD_DATA::s_ServiceCreateNewServer = {L"CreateNewSite", 0, CIM_STRING, WMI_METHOD_PARAM_DATA::s_ServiceCreateNewServer, L"Creates a new site." };
  532. WMI_METHOD WMI_METHOD_DATA::s_GetCurrentMode = {L"GetCurrentMode", 0, CIM_SINT32, NULL, L"Returns what mode -- Full Isolation (= 1) or Shared Isolation (= 0) -- the W3SVC is running in." };
  533. WMI_METHOD WMI_METHOD_DATA::s_ServerStart = {L"Start", MD_SERVER_COMMAND_START, NULL, NULL, L"Starts the server." };
  534. WMI_METHOD WMI_METHOD_DATA::s_ServerStop = {L"Stop", MD_SERVER_COMMAND_STOP, NULL, NULL, L"Stops the server." };
  535. WMI_METHOD WMI_METHOD_DATA::s_ServerContinue = {L"Continue", MD_SERVER_COMMAND_CONTINUE, NULL, NULL, L"Continues the server." };
  536. WMI_METHOD WMI_METHOD_DATA::s_ServerPause = {L"Pause", MD_SERVER_COMMAND_PAUSE, NULL, NULL, L"Pauses the server." };
  537. WMI_METHOD WMI_METHOD_DATA::s_AppCreate = {L"AppCreate", 0, NULL, WMI_METHOD_PARAM_DATA::s_AppCreate, L"Creates an application at the specified metabase key(parameter is a Boolean)." };
  538. WMI_METHOD WMI_METHOD_DATA::s_AppCreate2 = {L"AppCreate2", 0, NULL, WMI_METHOD_PARAM_DATA::s_AppCreate2, L"Creates an application at the specified metabase key(parameter is a Long)." };
  539. WMI_METHOD WMI_METHOD_DATA::s_AppCreate3 = {L"AppCreate3", 0, NULL, WMI_METHOD_PARAM_DATA::s_AppCreate3, L"Creates an application at the specified metabase key." };
  540. WMI_METHOD WMI_METHOD_DATA::s_AppDelete = {L"AppDelete", 0, NULL, WMI_METHOD_PARAM_DATA::s_AppDelete, L"Deletes an application definition at the specified key (and its subkeys)." };
  541. WMI_METHOD WMI_METHOD_DATA::s_AppUnLoad = {L"AppUnLoad", 0, NULL, WMI_METHOD_PARAM_DATA::s_AppUnLoad, L"Unloads an application at the specified key (and its subkeys)." };
  542. WMI_METHOD WMI_METHOD_DATA::s_AppDisable = {L"AppDisable", 0, NULL, WMI_METHOD_PARAM_DATA::s_AppDisable, NULL };
  543. WMI_METHOD WMI_METHOD_DATA::s_AppEnable = {L"AppEnable", 0, NULL, WMI_METHOD_PARAM_DATA::s_AppEnable, NULL };
  544. WMI_METHOD WMI_METHOD_DATA::s_AppGetStatus = {L"AppGetStatus", 0, CIM_UINT32, NULL, NULL };
  545. WMI_METHOD WMI_METHOD_DATA::s_AspAppRestart = {L"AspAppRestart", 0, NULL, NULL, L"Restarts the ASP application that invoked it." };
  546. WMI_METHOD WMI_METHOD_DATA::s_SaveData = {L"SaveData", 0, NULL, NULL, L"Explicitly saves the metabase data to disk." };
  547. WMI_METHOD WMI_METHOD_DATA::s_BackupWithPasswd = {L"BackupWithPassword", 0, NULL, WMI_METHOD_PARAM_DATA::s_BackupWithPasswd, L"Saves the metabase to long-term storage." };
  548. WMI_METHOD WMI_METHOD_DATA::s_DeleteBackup = {L"DeleteBackup", 0, NULL, WMI_METHOD_PARAM_DATA::s_DeleteBackup, L"Deletes a metabase backup from long-term storage." };
  549. WMI_METHOD WMI_METHOD_DATA::s_EnumBackups = {L"EnumBackups", 0, NULL, WMI_METHOD_PARAM_DATA::s_EnumBackups, L"Enumerates metabase backups in long-term storage." };
  550. WMI_METHOD WMI_METHOD_DATA::s_RestoreWithPasswd = {L"RestoreWithPassword", 0, NULL, WMI_METHOD_PARAM_DATA::s_RestoreWithPasswd, L"Restores a metabase backup from long-term storage." };
  551. WMI_METHOD WMI_METHOD_DATA::s_Export = {L"Export", 0, NULL, WMI_METHOD_PARAM_DATA::s_Export, NULL };
  552. WMI_METHOD WMI_METHOD_DATA::s_Import = {L"Import", 0, NULL, WMI_METHOD_PARAM_DATA::s_Import, NULL };
  553. WMI_METHOD WMI_METHOD_DATA::s_RestoreHistory = {L"RestoreHistory", 0, NULL, WMI_METHOD_PARAM_DATA::s_RestoreHistory, NULL };
  554. WMI_METHOD WMI_METHOD_DATA::s_EnumHistory = {L"EnumHistory", 0, NULL, WMI_METHOD_PARAM_DATA::s_EnumHistory, NULL };
  555. WMI_METHOD WMI_METHOD_DATA::s_CreateMapping = {L"CreateMapping", 0, NULL, WMI_METHOD_PARAM_DATA::s_CreateMapping, L"Maps a certificate to a Windows account." };
  556. WMI_METHOD WMI_METHOD_DATA::s_DeleteMapping = {L"DeleteMapping", 0, NULL, WMI_METHOD_PARAM_DATA::s_DeleteMapping, L"Deletes an existing certificate mapping." };
  557. WMI_METHOD WMI_METHOD_DATA::s_GetMapping = {L"GetMapping", 0, NULL, WMI_METHOD_PARAM_DATA::s_GetMapping, L"Retrieves a certificate and the mapping data from an existing certificate mapping." };
  558. WMI_METHOD WMI_METHOD_DATA::s_SetAcct = {L"SetAcct", 0, NULL, WMI_METHOD_PARAM_DATA::s_SetAcct, L"Sets a new value for the Windows account string in an existing certificate mapping." };
  559. WMI_METHOD WMI_METHOD_DATA::s_SetEnabled = {L"SetEnabled", 0, NULL, WMI_METHOD_PARAM_DATA::s_SetEnabled, L"Enables or disables an existing certificate mapping." };
  560. WMI_METHOD WMI_METHOD_DATA::s_SetName = {L"SetName", 0, NULL, WMI_METHOD_PARAM_DATA::s_SetName, L"Sets a new value for the name string in an existing certificate mapping." };
  561. WMI_METHOD WMI_METHOD_DATA::s_SetPwd = {L"SetPwd", 0, NULL, WMI_METHOD_PARAM_DATA::s_SetPwd, L"Sets a new value for the Windows password string in an existing certificate mapping." };
  562. WMI_METHOD WMI_METHOD_DATA::s_RecycleAppPool = {L"Recycle", 0, NULL, NULL, L"Recycle an already enabled application pool on demand" };
  563. WMI_METHOD WMI_METHOD_DATA::s_EnumAppsInPool = {L"EnumAppsInPool", 0, NULL, WMI_METHOD_PARAM_DATA::s_EnumAppsInPool, L"Determine which applications are currently routed to the given application pool" };
  564. WMI_METHOD WMI_METHOD_DATA::s_Start = {L"Start", 0, NULL, NULL, L"Starts an application pool"};
  565. WMI_METHOD WMI_METHOD_DATA::s_Stop = {L"Stop", 0, NULL, NULL, L"Stops an application pool"};
  566. WMI_METHOD* WMI_METHOD_DATA::s_WebServiceMethods[] =
  567. {
  568. &s_ServiceListExtensionFiles,
  569. &s_ServiceAddExtensionFile,
  570. &s_ServiceDeleteExtensionFile,
  571. &s_ServiceEnableExtensionFile,
  572. &s_ServiceDisableExtensionFile,
  573. &s_ServiceEnableWebServiceExtension,
  574. &s_ServiceDisableWebServiceExtension,
  575. &s_ServiceListWebServiceExtensions,
  576. &s_ServiceEnableApplication,
  577. &s_ServiceRemoveApplication,
  578. &s_ServiceListApplications,
  579. &s_ServiceQueryGroupIDStatus,
  580. &s_ServiceAddDependency,
  581. &s_ServiceRemoveDependency,
  582. &s_ServiceCreateNewServer,
  583. &s_GetCurrentMode,
  584. NULL
  585. };
  586. WMI_METHOD* WMI_METHOD_DATA::s_ServiceMethods[] =
  587. {
  588. &s_ServiceCreateNewServer,
  589. NULL
  590. };
  591. WMI_METHOD* WMI_METHOD_DATA::s_ServerMethods[] =
  592. {
  593. &s_ServerStart,
  594. &s_ServerStop,
  595. &s_ServerContinue,
  596. &s_ServerPause,
  597. NULL
  598. };
  599. WMI_METHOD* WMI_METHOD_DATA::s_WebAppMethods[] =
  600. {
  601. &s_AppCreate,
  602. &s_AppCreate2,
  603. &s_AppCreate3,
  604. &s_AppDelete,
  605. &s_AppUnLoad,
  606. &s_AppDisable,
  607. &s_AppEnable,
  608. &s_AppGetStatus,
  609. &s_AspAppRestart,
  610. NULL
  611. };
  612. WMI_METHOD* WMI_METHOD_DATA::s_ComputerMethods[] =
  613. {
  614. &s_SaveData,
  615. &s_BackupWithPasswd,
  616. &s_DeleteBackup,
  617. &s_EnumBackups,
  618. &s_RestoreWithPasswd,
  619. &s_Export,
  620. &s_Import,
  621. &s_RestoreHistory,
  622. &s_EnumHistory,
  623. NULL
  624. };
  625. WMI_METHOD* WMI_METHOD_DATA::s_CertMapperMethods[] =
  626. {
  627. &s_CreateMapping,
  628. &s_DeleteMapping,
  629. &s_GetMapping,
  630. &s_SetAcct,
  631. &s_SetEnabled,
  632. &s_SetName,
  633. &s_SetPwd,
  634. NULL
  635. };
  636. WMI_METHOD* WMI_METHOD_DATA::s_AppPoolMethods[] =
  637. {
  638. &s_EnumAppsInPool,
  639. &s_RecycleAppPool,
  640. &s_Start,
  641. &s_Stop,
  642. NULL
  643. };
  644. //
  645. // initialize WMI_CLASS_DATA
  646. //
  647. //** Computer
  648. WMI_CLASS WMI_CLASS_DATA::s_Computer =
  649. {L"IIsComputer", L"", L"Name", NULL, &METABASE_KEYTYPE_DATA::s_IIsComputer, WMI_METHOD_DATA::s_ComputerMethods, SHIPPED_TO_MOF, L"CIM_ApplicationSystem", false, NULL};
  650. WMI_CLASS WMI_CLASS_DATA::s_ComputerSetting =
  651. {L"IIsComputerSetting", L"", L"Name", NULL, &METABASE_KEYTYPE_DATA::s_IIsComputer, NULL, SHIPPED_TO_MOF, g_wszSettingParent, false, NULL};
  652. //** FtpService
  653. WMI_CLASS WMI_CLASS_DATA::s_FtpService =
  654. {L"IIsFtpService", L"/LM", L"Name", NULL, &METABASE_KEYTYPE_DATA::s_IIsFtpService, WMI_METHOD_DATA::s_ServiceMethods, SHIPPED_TO_MOF, g_awszParentClassWithNamePK[eWin32_Service], false, NULL};
  655. //** FtpServer
  656. WMI_CLASS WMI_CLASS_DATA::s_FtpServer =
  657. {L"IIsFtpServer", L"/LM", L"Name", NULL, &METABASE_KEYTYPE_DATA::s_IIsFtpServer, WMI_METHOD_DATA::s_ServerMethods, SHIPPED_TO_MOF, g_wszElementParent, true, NULL};
  658. //** FtpVirtualDir
  659. WMI_CLASS WMI_CLASS_DATA::s_FtpVirtualDir =
  660. {L"IIsFtpVirtualDir",L"/LM",L"Name", NULL, &METABASE_KEYTYPE_DATA::s_IIsFtpVirtualDir, NULL, SHIPPED_TO_MOF, g_awszParentClassWithNamePK[eIIsDirectory], true, NULL};
  661. //** WebService
  662. WMI_CLASS WMI_CLASS_DATA::s_WebService =
  663. {L"IIsWebService", L"/LM", L"Name", NULL, &METABASE_KEYTYPE_DATA::s_IIsWebService, WMI_METHOD_DATA::s_WebServiceMethods, SHIPPED_TO_MOF, g_awszParentClassWithNamePK[eWin32_Service], false, NULL};
  664. //** WebFilter
  665. WMI_CLASS WMI_CLASS_DATA::s_WebFilter =
  666. {L"IIsFilter", L"/LM", L"Name", NULL, &METABASE_KEYTYPE_DATA::s_IIsFilter, NULL, SHIPPED_TO_MOF, g_wszElementParent, true, NULL};
  667. //** WebServer
  668. WMI_CLASS WMI_CLASS_DATA::s_WebServer =
  669. {L"IIsWebServer", L"/LM", L"Name", NULL, &METABASE_KEYTYPE_DATA::s_IIsWebServer, WMI_METHOD_DATA::s_ServerMethods, SHIPPED_TO_MOF, g_wszElementParent, true, NULL};
  670. //** Web CertMapper
  671. WMI_CLASS WMI_CLASS_DATA::s_WebCertMapper =
  672. {L"IIsCertMapper",L"/LM",L"Name", NULL, &METABASE_KEYTYPE_DATA::s_IIsCertMapper, WMI_METHOD_DATA::s_CertMapperMethods, SHIPPED_TO_MOF, g_wszElementParent, true, NULL};
  673. //** Web VirtualDir
  674. WMI_CLASS WMI_CLASS_DATA::s_WebVirtualDir =
  675. {L"IIsWebVirtualDir",L"/LM",L"Name", NULL, &METABASE_KEYTYPE_DATA::s_IIsWebVirtualDir, WMI_METHOD_DATA::s_WebAppMethods, SHIPPED_TO_MOF, g_awszParentClassWithNamePK[eIIsDirectory], true, NULL};
  676. //** Web Directory
  677. WMI_CLASS WMI_CLASS_DATA::s_WebDirectory =
  678. {L"IIsWebDirectory",L"/LM",L"Name", NULL, &METABASE_KEYTYPE_DATA::s_IIsWebDirectory, WMI_METHOD_DATA::s_WebAppMethods, SHIPPED_TO_MOF, g_awszParentClassWithNamePK[eIIsDirectory], true, NULL};
  679. //** Web File
  680. WMI_CLASS WMI_CLASS_DATA::s_WebFile =
  681. {L"IIsWebFile",L"/LM",L"Name", NULL, &METABASE_KEYTYPE_DATA::s_IIsWebFile, NULL, SHIPPED_TO_MOF, g_awszParentClassWithNamePK[eIIsDirectory], true, NULL};
  682. //** Application Pool
  683. WMI_CLASS WMI_CLASS_DATA::s_ApplicationPool =
  684. {L"IIsApplicationPool",L"/LM",L"Name",NULL, &METABASE_KEYTYPE_DATA::s_IIsApplicationPool, WMI_METHOD_DATA::s_AppPoolMethods, SHIPPED_TO_MOF, g_wszElementParent, true, NULL};
  685. //** AdminACL
  686. WMI_CLASS WMI_CLASS_DATA::s_AdminACL =
  687. {L"IIsAdminACL", L"/LM",L"Name", NULL, &METABASE_KEYTYPE_DATA::s_TYPE_AdminACL, NULL, SHIPPED_NOT_TO_MOF, g_wszElementParent, true, NULL};
  688. WMI_CLASS WMI_CLASS_DATA::s_ACE =
  689. {L"IIsACE", L"/LM",L"Name", NULL, &METABASE_KEYTYPE_DATA::s_TYPE_AdminACE, NULL, SHIPPED_NOT_TO_MOF, g_wszElementParent, true, NULL};
  690. //** IPSecurity
  691. WMI_CLASS WMI_CLASS_DATA::s_IPSecurity =
  692. {L"IIsIPSecuritySetting", L"/LM",L"Name", NULL, &METABASE_KEYTYPE_DATA::s_TYPE_IPSecurity, NULL, SHIPPED_NOT_TO_MOF, g_wszSettingParent, true, NULL};
  693. WMI_CLASS* WMI_CLASS_DATA:: s_WmiClasses[] =
  694. {
  695. &s_Computer,
  696. &s_ComputerSetting,
  697. &s_FtpService,
  698. &s_FtpServer,
  699. &s_FtpVirtualDir,
  700. &s_WebService,
  701. &s_WebFilter,
  702. &s_WebServer,
  703. &s_WebCertMapper,
  704. &s_WebVirtualDir,
  705. &s_WebDirectory,
  706. &s_WebFile,
  707. &s_ApplicationPool,
  708. &s_AdminACL,
  709. &s_ACE,
  710. &s_IPSecurity,
  711. NULL
  712. };
  713. //** Hard-coded Associations
  714. WMI_ASSOCIATION WMI_ASSOCIATION_DATA::s_AdminACLToACE =
  715. { L"IIsAdminACL_IIsACE", &WMI_CLASS_DATA::s_AdminACL, &WMI_CLASS_DATA::s_ACE, &WMI_ASSOCIATION_TYPE_DATA::s_AdminACL, 0, SHIPPED_TO_MOF, g_wszGroupPartAssocParent};
  716. WMI_ASSOCIATION* WMI_ASSOCIATION_DATA:: s_WmiAssociations[] =
  717. {
  718. &s_AdminACLToACE,
  719. NULL
  720. };