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.

333 lines
7.4 KiB

  1. //+--------------------------------------------------------------------------
  2. //
  3. // Microsoft Windows
  4. // Copyright (C) Microsoft Corporation, 1996 - 1999
  5. //
  6. // File: certenc.idl
  7. //
  8. // Contents: IDL source for certenc.dll
  9. //
  10. //---------------------------------------------------------------------------
  11. // This file will be processed by the MIDL tool to produce the type library
  12. // (certenc.tlb) and marshalling code.
  13. import "wtypes.idl";
  14. //+--------------------------------------------------------------------------
  15. // ICertEncodeStringArray class -- local COM interface
  16. //+--------------------------------------------------------------------------
  17. [
  18. object,
  19. uuid(12a88820-7494-11d0-8816-00a0c903b83c),
  20. dual,
  21. helpstring("ICertEncodeStringArray Interface"),
  22. pointer_default(unique)
  23. ]
  24. interface ICertEncodeStringArray: IDispatch
  25. {
  26. import "oaidl.idl";
  27. HRESULT Decode(
  28. [in] BSTR const strBinary);
  29. HRESULT GetStringType(
  30. [out, retval] LONG *pStringType);
  31. HRESULT GetCount(
  32. [out, retval] LONG *pCount);
  33. HRESULT GetValue(
  34. [in] LONG Index,
  35. [out, retval] BSTR *pstr);
  36. HRESULT Reset(
  37. [in] LONG Count,
  38. [in] LONG StringType);
  39. HRESULT SetValue(
  40. [in] LONG Index,
  41. [in] BSTR const str);
  42. HRESULT Encode(
  43. [out, retval] BSTR *pstrBinary);
  44. };
  45. //+--------------------------------------------------------------------------
  46. // ICertEncodeLongArray class -- local COM interface
  47. //+--------------------------------------------------------------------------
  48. [
  49. object,
  50. uuid(15e2f230-a0a2-11d0-8821-00a0c903b83c),
  51. dual,
  52. helpstring("ICertEncodeLongArray Interface"),
  53. pointer_default(unique)
  54. ]
  55. interface ICertEncodeLongArray: IDispatch
  56. {
  57. import "oaidl.idl";
  58. HRESULT Decode(
  59. [in] BSTR const strBinary);
  60. HRESULT GetCount(
  61. [out, retval] LONG *pCount);
  62. HRESULT GetValue(
  63. [in] LONG Index,
  64. [out, retval] LONG *pValue);
  65. HRESULT Reset(
  66. [in] LONG Count);
  67. HRESULT SetValue(
  68. [in] LONG Index,
  69. [in] LONG Value);
  70. HRESULT Encode(
  71. [out, retval] BSTR *pstrBinary);
  72. };
  73. //+--------------------------------------------------------------------------
  74. // ICertEncodeDateArray class -- local COM interface
  75. //+--------------------------------------------------------------------------
  76. [
  77. object,
  78. uuid(2f9469a0-a470-11d0-8821-00a0c903b83c),
  79. dual,
  80. helpstring("ICertEncodeDateArray Interface"),
  81. pointer_default(unique)
  82. ]
  83. interface ICertEncodeDateArray: IDispatch
  84. {
  85. import "oaidl.idl";
  86. HRESULT Decode(
  87. [in] BSTR const strBinary);
  88. HRESULT GetCount(
  89. [out, retval] LONG *pCount);
  90. HRESULT GetValue(
  91. [in] LONG Index,
  92. [out, retval] DATE *pValue);
  93. HRESULT Reset(
  94. [in] LONG Count);
  95. HRESULT SetValue(
  96. [in] LONG Index,
  97. [in] DATE Value);
  98. HRESULT Encode(
  99. [out, retval] BSTR *pstrBinary);
  100. };
  101. //+--------------------------------------------------------------------------
  102. // ICertEncodeCRLDistInfo class -- local COM interface
  103. //+--------------------------------------------------------------------------
  104. [
  105. object,
  106. uuid(01958640-bbff-11d0-8825-00a0c903b83c),
  107. dual,
  108. helpstring("ICertEncodeCRLDistInfo Interface"),
  109. pointer_default(unique)
  110. ]
  111. interface ICertEncodeCRLDistInfo: IDispatch
  112. {
  113. import "oaidl.idl";
  114. HRESULT Decode(
  115. [in] BSTR const strBinary);
  116. HRESULT GetDistPointCount(
  117. [out, retval] LONG *pDistPointCount);
  118. HRESULT GetNameCount(
  119. [in] LONG DistPointIndex,
  120. [out, retval] LONG *pNameCount);
  121. HRESULT GetNameChoice(
  122. [in] LONG DistPointIndex,
  123. [in] LONG NameIndex,
  124. [out, retval] LONG *pNameChoice);
  125. HRESULT GetName(
  126. [in] LONG DistPointIndex,
  127. [in] LONG NameIndex,
  128. [out, retval] BSTR *pstrName);
  129. HRESULT Reset(
  130. [in] LONG DistPointCount);
  131. HRESULT SetNameCount(
  132. [in] LONG DistPointIndex,
  133. [in] LONG NameCount);
  134. HRESULT SetNameEntry(
  135. [in] LONG DistPointIndex,
  136. [in] LONG NameIndex,
  137. [in] LONG NameChoice,
  138. [in] BSTR const strName);
  139. HRESULT Encode(
  140. [out, retval] BSTR *pstrBinary);
  141. };
  142. //+--------------------------------------------------------------------------
  143. // ICertEncodeAltName class -- local COM interface
  144. //+--------------------------------------------------------------------------
  145. const LONG EAN_NAMEOBJECTID = 0x80000000;
  146. [
  147. object,
  148. uuid(1c9a8c70-1271-11d1-9bd4-00c04fb683fa),
  149. dual,
  150. helpstring("ICertEncodeAltName Interface"),
  151. pointer_default(unique)
  152. ]
  153. interface ICertEncodeAltName: IDispatch
  154. {
  155. import "oaidl.idl";
  156. HRESULT Decode(
  157. [in] BSTR const strBinary);
  158. HRESULT GetNameCount(
  159. [out, retval] LONG *pNameCount);
  160. HRESULT GetNameChoice(
  161. [in] LONG NameIndex,
  162. [out, retval] LONG *pNameChoice);
  163. HRESULT GetName(
  164. [in] LONG NameIndex, // NameIndex | EAN_*
  165. [out, retval] BSTR *pstrName);
  166. HRESULT Reset(
  167. [in] LONG NameCount);
  168. HRESULT SetNameEntry(
  169. [in] LONG NameIndex, // NameIndex | EAN_*
  170. [in] LONG NameChoice,
  171. [in] BSTR const strName);
  172. HRESULT Encode(
  173. [out, retval] BSTR *pstrBinary);
  174. };
  175. //+--------------------------------------------------------------------------
  176. // ICertEncodeBitString class -- local COM interface
  177. //+--------------------------------------------------------------------------
  178. [
  179. object,
  180. uuid(6db525be-1278-11d1-9bd4-00c04fb683fa),
  181. dual,
  182. helpstring("ICertEncodeBitString Interface"),
  183. pointer_default(unique)
  184. ]
  185. interface ICertEncodeBitString: IDispatch
  186. {
  187. import "oaidl.idl";
  188. HRESULT Decode(
  189. [in] BSTR const strBinary);
  190. HRESULT GetBitCount(
  191. [out, retval] LONG *pBitCount);
  192. HRESULT GetBitString(
  193. [out, retval] BSTR *pstrBitString);
  194. HRESULT Encode(
  195. [in] LONG BitCount,
  196. [in] BSTR strBitString,
  197. [out, retval] BSTR *pstrBinary);
  198. };
  199. //+--------------------------------------------------------------------------
  200. // certenc Type library
  201. //+--------------------------------------------------------------------------
  202. [
  203. uuid(13199c00-7494-11d0-8816-00a0c903b83c),
  204. version(1.0),
  205. helpstring("CertEnc 1.0 Type Library")
  206. ]
  207. library CERTENCODELib
  208. {
  209. importlib("stdole2.tlb");
  210. [
  211. uuid(19a76fe0-7494-11d0-8816-00a0c903b83c),
  212. helpstring("CertEncodeStringArray Class")
  213. ]
  214. coclass CCertEncodeStringArray
  215. {
  216. [default] interface ICertEncodeStringArray;
  217. };
  218. [
  219. uuid(4e0680a0-a0a2-11d0-8821-00a0c903b83c),
  220. helpstring("CertEncodeLongArray Class")
  221. ]
  222. coclass CCertEncodeLongArray
  223. {
  224. [default] interface ICertEncodeLongArray;
  225. };
  226. [
  227. uuid(301f77b0-a470-11d0-8821-00a0c903b83c),
  228. helpstring("CertEncodeDateArray Class")
  229. ]
  230. coclass CCertEncodeDateArray
  231. {
  232. [default] interface ICertEncodeDateArray;
  233. };
  234. [
  235. uuid(01fa60a0-bbff-11d0-8825-00a0c903b83c),
  236. helpstring("CertEncodeCRLDistInfo Class")
  237. ]
  238. coclass CCertEncodeCRLDistInfo
  239. {
  240. [default] interface ICertEncodeCRLDistInfo;
  241. };
  242. [
  243. uuid(1cfc4cda-1271-11d1-9bd4-00c04fb683fa),
  244. helpstring("CertEncodeAltName Class")
  245. ]
  246. coclass CCertEncodeAltName
  247. {
  248. [default] interface ICertEncodeAltName;
  249. };
  250. [
  251. uuid(6d6b3cd8-1278-11d1-9bd4-00c04fb683fa),
  252. helpstring("CertEncodeBitString Class")
  253. ]
  254. coclass CCertEncodeBitString
  255. {
  256. [default] interface ICertEncodeBitString;
  257. };
  258. };