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.

219 lines
9.9 KiB

  1. // P3Admin.idl : IDL source for P3Admin.dll
  2. //
  3. // This file will be processed by the MIDL tool to
  4. // produce the type library (P3Admin.tlb) and marshalling code.
  5. import "oaidl.idl";
  6. import "ocidl.idl";
  7. import "..\..\shared\pop3auth\pop3auth.idl";
  8. [
  9. object,
  10. uuid(EFDDC814-C177-4A0E-B997-5D76018326A7),
  11. dual,
  12. helpstring("IP3User Interface"),
  13. pointer_default(unique)
  14. ]
  15. interface IP3User : IDispatch
  16. {
  17. [propget, id(1), helpstring("property Lock")] HRESULT Lock([out, retval] BOOL *pVal);
  18. [propput, id(1), helpstring("property Lock")] HRESULT Lock([in] BOOL newVal);
  19. [propget, id(2), helpstring("property MessageCount")] HRESULT MessageCount([out, retval] long *pVal);
  20. [propget, id(3), helpstring("property MessageDiskUsage")] HRESULT MessageDiskUsage([out] long *plFactor, [out, retval] long *pVal);
  21. [propget, id(4), helpstring("property Name")] HRESULT Name([out, retval] BSTR *pVal);
  22. [propget, id(5), helpstring("property EmailName")] HRESULT EmailName([out, retval] BSTR *pVal);
  23. [id(6), helpstring("method GetMessageDiskUsage")] HRESULT GetMessageDiskUsage([out] VARIANT *pvFactor, [out] VARIANT *pvValue);
  24. [id(7), helpstring("method CreateQuotaFile")] HRESULT CreateQuotaFile([in] BSTR bstrMachineName, [in] BSTR bstrUserName);
  25. [propget, id(8), helpstring("property ClientConfigDesc")] HRESULT ClientConfigDesc([out, retval] BSTR *pVal);
  26. [propget, id(9), helpstring("property SAMName")] HRESULT SAMName([out, retval] BSTR *pVal);
  27. };
  28. [
  29. object,
  30. uuid(67F74F11-C5FB-4BBE-9AC6-86534B08745F),
  31. dual,
  32. helpstring("IP3Users Interface"),
  33. pointer_default(unique)
  34. ]
  35. interface IP3Users : IDispatch
  36. {
  37. [propget, id(DISPID_NEWENUM), helpstring("property _NewEnum")] HRESULT _NewEnum([out, retval] IEnumVARIANT* *ppIEnumVARIANT);
  38. [propget, id(1), helpstring("property Count")] HRESULT Count([out, retval] long *pVal);
  39. [propget, id(2), helpstring("property Item")] HRESULT Item([in] VARIANT vIndex, [out, retval] IP3User **ppIUser);
  40. [id(3), helpstring("method Add")] HRESULT Add([in] BSTR bstrUserName);
  41. [id(4), helpstring("method Remove")] HRESULT Remove([in] BSTR bstrUserName);
  42. [id(5), helpstring("method AddEx")] HRESULT AddEx([in] BSTR bstrUserName, [in] BSTR bstrPassword);
  43. [id(6), helpstring("method RemoveEx")] HRESULT RemoveEx([in] BSTR bstrUserName);
  44. };
  45. [
  46. object,
  47. uuid(01C343C8-64BE-463E-BEFD-1A8CF2EDD2C7),
  48. dual,
  49. helpstring("IP3Domain Interface"),
  50. pointer_default(unique)
  51. ]
  52. interface IP3Domain : IDispatch
  53. {
  54. [propget, id(1), helpstring("property Users")] HRESULT Users([out, retval] IP3Users* *ppIP3Users);
  55. [propget, id(2), helpstring("property Lock")] HRESULT Lock([out, retval] BOOL *pVal);
  56. [propput, id(2), helpstring("property Lock")] HRESULT Lock([in] BOOL newVal);
  57. [propget, id(3), helpstring("property MessageCount")] HRESULT MessageCount([out, retval] long *pVal);
  58. [propget, id(4), helpstring("property MessageDiskUsage")] HRESULT MessageDiskUsage([out] long *plFactor, [out, retval] long *pVal);
  59. [propget, id(5), helpstring("property Name")] HRESULT Name([out, retval] BSTR *pVal);
  60. [id(6), helpstring("method GetMessageDiskUsage")] HRESULT GetMessageDiskUsage([out] VARIANT *pvFactor, [out] VARIANT *pvValue);
  61. };
  62. [
  63. object,
  64. uuid(AD604138-18C1-4DC5-A9F0-4A440AB45DA5),
  65. dual,
  66. helpstring("IP3Domains Interface"),
  67. pointer_default(unique)
  68. ]
  69. interface IP3Domains : IDispatch
  70. {
  71. [propget, id(DISPID_NEWENUM), helpstring("property _NewEnum")] HRESULT _NewEnum([out, retval] IEnumVARIANT* *ppIEnumVARIANT);
  72. [propget, id(1), helpstring("property Count")] HRESULT Count([out, retval] long *pVal);
  73. [propget, id(2), helpstring("property Item")] HRESULT Item([in] VARIANT vIndex, [out, retval] IP3Domain* *ppIP3Domain);
  74. [id(3), helpstring("method Add")] HRESULT Add([in] BSTR bstrDomainName);
  75. [id(4), helpstring("method Remove")] HRESULT Remove([in] BSTR bstrDomainName);
  76. [id(5), helpstring("method SearchForMailbox")] HRESULT SearchForMailbox([in] BSTR bstrUserName, [out] BSTR *pbstrDomainName);
  77. };
  78. [
  79. object,
  80. uuid(EA6F3C46-469A-4D9B-87B0-86D4C323FBA1),
  81. dual,
  82. helpstring("IP3Service Interface"),
  83. pointer_default(unique)
  84. ]
  85. interface IP3Service : IDispatch
  86. {
  87. [propget, id(1), helpstring("property ThreadCountPerCPU")] HRESULT ThreadCountPerCPU([out, retval] long *pVal);
  88. [propput, id(1), helpstring("property ThreadCountPerCPU")] HRESULT ThreadCountPerCPU([in] long newVal);
  89. [propget, id(2), helpstring("property SocketsMax")] HRESULT SocketsMax([out, retval] long *pVal);
  90. [propget, id(3), helpstring("property SocketsMin")] HRESULT SocketsMin([out, retval] long *pVal);
  91. [propget, id(4), helpstring("property SocketsThreshold")] HRESULT SocketsThreshold([out, retval] long *pVal);
  92. [id(5), helpstring("method SetSockets")] HRESULT SetSockets([in] long lMax, [in] long lMin, [in] long lThreshold, [in] long lBacklog);
  93. [propget, id(6), helpstring("property SocketsBacklog")] HRESULT SocketsBacklog([out, retval] long *pVal);
  94. [propget, id(7), helpstring("property Port")] HRESULT Port([out, retval] long *pVal);
  95. [propput, id(7), helpstring("property Port")] HRESULT Port([in] long newVal);
  96. [propget, id(8), helpstring("property SPARequired")] HRESULT SPARequired([out, retval] BOOL *pVal);
  97. [propput, id(8), helpstring("property SPARequired")] HRESULT SPARequired([in] BOOL newVal);
  98. [propget, id(9), helpstring("property POP3ServiceStatus")] HRESULT POP3ServiceStatus([out, retval] long *pVal);
  99. [id(10), helpstring("method StartPOP3Service")] HRESULT StartPOP3Service();
  100. [id(11), helpstring("method StopPOP3Service")] HRESULT StopPOP3Service();
  101. [id(12), helpstring("method PausePOP3Service")] HRESULT PausePOP3Service();
  102. [id(13), helpstring("method ResumePOP3Service")] HRESULT ResumePOP3Service();
  103. [propget, id(14), helpstring("property SMTPServiceStatus")] HRESULT SMTPServiceStatus([out, retval] long *pVal);
  104. [id(15), helpstring("method StartSMTPService")] HRESULT StartSMTPService();
  105. [id(16), helpstring("method StopSMTPService")] HRESULT StopSMTPService();
  106. [id(17), helpstring("method PauseSMTPService")] HRESULT PauseSMTPService();
  107. [id(18), helpstring("method ResumeSMTPService")] HRESULT ResumeSMTPService();
  108. [propget, id(19), helpstring("property IISAdminServiceStatus")] HRESULT IISAdminServiceStatus([out, retval] long *pVal);
  109. [id(20), helpstring("method StartIISAdminService")] HRESULT StartIISAdminService();
  110. [id(21), helpstring("method StopIISAdminService")] HRESULT StopIISAdminService();
  111. [id(22), helpstring("method PauseIISAdminService")] HRESULT PauseIISAdminService();
  112. [id(23), helpstring("method ResumeIISAdminService")] HRESULT ResumeIISAdminService();
  113. [propget, id(24), helpstring("property W3ServiceStatus")] HRESULT W3ServiceStatus([out, retval] long *pVal);
  114. [id(25), helpstring("method StartW3Service")] HRESULT StartW3Service();
  115. [id(26), helpstring("method StopW3Service")] HRESULT StopW3Service();
  116. [id(27), helpstring("method PauseW3Service")] HRESULT PauseW3Service();
  117. [id(28), helpstring("method ResumeW3Service")] HRESULT ResumeW3Service();
  118. };
  119. [
  120. object,
  121. uuid(FA7B7F6D-87E7-44F0-9294-153714B0D9CC),
  122. dual,
  123. helpstring("IP3Config Interface"),
  124. pointer_default(unique)
  125. ]
  126. interface IP3Config : IDispatch
  127. {
  128. [id(1), helpstring("method IISConfig")] HRESULT IISConfig([in] BOOL bRegister);
  129. [propget, id(2), helpstring("property Service")] HRESULT Service([out, retval] IP3Service* *ppIService);
  130. [propget, id(3), helpstring("property Domains")] HRESULT Domains([out, retval] IP3Domains* *ppIDomains);
  131. [propget, id(4), helpstring("property LoggingLevel")] HRESULT LoggingLevel([out, retval] long *pVal);
  132. [propput, id(4), helpstring("property LoggingLevel")] HRESULT LoggingLevel([in] long newVal);
  133. [propget, id(5), helpstring("property MailRoot")] HRESULT MailRoot([out, retval] BSTR *pVal);
  134. [propput, id(5), helpstring("property MailRoot")] HRESULT MailRoot([in] BSTR newVal);
  135. [propget, id(6), helpstring("property Authentication")] HRESULT Authentication([out, retval] IAuthMethods* *ppIAuthMethods);
  136. [propget, id(7), helpstring("property MachineName")] HRESULT MachineName([out, retval] BSTR *pVal);
  137. [propput, id(7), helpstring("property MachineName")] HRESULT MachineName([in] BSTR newVal);
  138. [id(8), helpstring("method GetFormattedMessage")] HRESULT GetFormattedMessage([in] long lError, [out] VARIANT *pVal);
  139. [propget, id(9), helpstring("property ConfirmAddUser")] HRESULT ConfirmAddUser([out, retval] BOOL *pVal);
  140. [propput, id(9), helpstring("property ConfirmAddUser")] HRESULT ConfirmAddUser([in] BOOL newVal);
  141. };
  142. [
  143. uuid(62248572-2E5A-4747-98FD-8E3626E3CB13),
  144. version(1.0),
  145. helpstring("P3Admin 1.0 Type Library")
  146. ]
  147. library P3ADMINLib
  148. {
  149. importlib("stdole32.tlb");
  150. importlib("stdole2.tlb");
  151. [
  152. uuid(27AAC95F-CCC1-46F8-B4BC-E592252755A9),
  153. helpstring("P3Config Class")
  154. ]
  155. coclass P3Config
  156. {
  157. [default] interface IP3Config;
  158. };
  159. [
  160. uuid(3C26DBFB-0C9E-46E7-9DB4-34F0DBF06C98),
  161. helpstring("P3Domains Class")
  162. ]
  163. coclass P3Domains
  164. {
  165. [default] interface IP3Domains;
  166. };
  167. [
  168. uuid(76E18025-DE1C-4FFB-A379-F9785E31287D),
  169. helpstring("P3Domain Class")
  170. ]
  171. coclass P3Domain
  172. {
  173. [default] interface IP3Domain;
  174. };
  175. [
  176. uuid(725E9D04-FD47-4DA2-BE5F-9FCC133351B1),
  177. helpstring("P3Users Class")
  178. ]
  179. coclass P3Users
  180. {
  181. [default] interface IP3Users;
  182. };
  183. [
  184. uuid(BD180BA8-CA05-4364-9CDD-44DB27CF40B8),
  185. helpstring("P3Service Class")
  186. ]
  187. coclass P3Service
  188. {
  189. [default] interface IP3Service;
  190. };
  191. [
  192. uuid(4BB57E54-E2A7-452B-BE9E-66BDEC0B1D1A),
  193. helpstring("P3DomainEnum Class")
  194. ]
  195. coclass P3DomainEnum
  196. {
  197. [default] interface IEnumVARIANT;
  198. };
  199. [
  200. uuid(22659E85-FA75-438C-8B31-093B6C29C060),
  201. helpstring("P3User Class")
  202. ]
  203. coclass P3User
  204. {
  205. [default] interface IP3User;
  206. };
  207. [
  208. uuid(8CB44364-D42D-4B98-8AD0-FF7AFCF68050),
  209. helpstring("P3UserEnum Class")
  210. ]
  211. coclass P3UserEnum
  212. {
  213. [default] interface IEnumVARIANT;
  214. };
  215. };