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.

300 lines
9.2 KiB

  1. /* this ALWAYS GENERATED file contains the definitions for the interfaces */
  2. /* File created by MIDL compiler version 5.01.0164 */
  3. /* at Wed Aug 08 01:15:17 2001
  4. */
  5. /* Compiler settings for .\drmexternals.idl:
  6. Oicf (OptLev=i2), W1, Zp8, env=Win32, ms_ext, c_ext
  7. error checks: allocation ref bounds_check enum stub_data
  8. */
  9. //@@MIDL_FILE_HEADING( )
  10. /* verify that the <rpcndr.h> version is high enough to compile this file*/
  11. #ifndef __REQUIRED_RPCNDR_H_VERSION__
  12. #define __REQUIRED_RPCNDR_H_VERSION__ 440
  13. #endif
  14. #include "rpc.h"
  15. #include "rpcndr.h"
  16. #ifndef __RPCNDR_H_VERSION__
  17. #error this stub requires an updated version of <rpcndr.h>
  18. #endif // __RPCNDR_H_VERSION__
  19. #ifndef COM_NO_WINDOWS_H
  20. #include "windows.h"
  21. #include "ole2.h"
  22. #endif /*COM_NO_WINDOWS_H*/
  23. #ifndef __drmexternals_h__
  24. #define __drmexternals_h__
  25. #ifdef __cplusplus
  26. extern "C"{
  27. #endif
  28. /* Forward Declarations */
  29. #ifndef __IDRMStatusCallback_FWD_DEFINED__
  30. #define __IDRMStatusCallback_FWD_DEFINED__
  31. typedef interface IDRMStatusCallback IDRMStatusCallback;
  32. #endif /* __IDRMStatusCallback_FWD_DEFINED__ */
  33. /* header files for imported files */
  34. #include "oaidl.h"
  35. void __RPC_FAR * __RPC_USER MIDL_user_allocate(size_t);
  36. void __RPC_USER MIDL_user_free( void __RPC_FAR * );
  37. /* interface __MIDL_itf_drmexternals_0000 */
  38. /* [local] */
  39. static const WCHAR *g_wszWMDRM_RIGHT_PLAYBACK = L"Play";
  40. static const WCHAR *g_wszWMDRM_RIGHT_COPY_TO_CD = L"Print.redbook";
  41. static const WCHAR *g_wszWMDRM_RIGHT_COPY_TO_SDMI_DEVICE = L"Transfer.SDMI";
  42. static const WCHAR *g_wszWMDRM_RIGHT_COPY_TO_NON_SDMI_DEVICE = L"Transfer.NONSDMI";
  43. static const WCHAR *g_wszWMDRM_RIGHT_BACKUP = L"Backup";
  44. static const WCHAR *g_wszWMDRM_ActionAllowed = L"ActionAllowed.";
  45. static const WCHAR *g_wszWMDRM_LicenseState = L"LicenseStateData.";
  46. static const WCHAR *g_wszWMDRM_DRMHeader = L"DRMHeader.";
  47. static const WCHAR *g_wszWMDRM_IsDRM = L"IsDRM";
  48. static const WCHAR *g_wszWMDRM_IsDRMCached = L"IsDRMCached";
  49. static const WCHAR *g_wszWMDRM_ActionAllowed_Playback = L"ActionAllowed.Play";
  50. static const WCHAR *g_wszWMDRM_ActionAllowed_CopyToCD = L"ActionAllowed.Print.redbook";
  51. static const WCHAR *g_wszWMDRM_ActionAllowed_CopyToSDMIDevice = L"ActionAllowed.Transfer.SDMI";
  52. static const WCHAR *g_wszWMDRM_ActionAllowed_CopyToNonSDMIDevice = L"ActionAllowed.Transfer.NONSDMI";
  53. static const WCHAR *g_wszWMDRM_ActionAllowed_Backup = L"ActionAllowed.Backup";
  54. static const WCHAR *g_wszWMDRM_LicenseState_Playback = L"LicenseStateData.Play";
  55. static const WCHAR *g_wszWMDRM_LicenseState_CopyToCD = L"LicenseStateData.Print.redbook";
  56. static const WCHAR *g_wszWMDRM_LicenseState_CopyToSDMIDevice = L"LicenseStateData.Transfer.SDMI";
  57. static const WCHAR *g_wszWMDRM_LicenseState_CopyToNonSDMIDevice = L"LicenseStateData.Transfer.NONSDMI";
  58. typedef
  59. enum DRM_LICENSE_STATE_CATEGORY
  60. { WM_DRM_LICENSE_STATE_NORIGHT = 0,
  61. WM_DRM_LICENSE_STATE_UNLIM = WM_DRM_LICENSE_STATE_NORIGHT + 1,
  62. WM_DRM_LICENSE_STATE_COUNT = WM_DRM_LICENSE_STATE_UNLIM + 1,
  63. WM_DRM_LICENSE_STATE_FROM = WM_DRM_LICENSE_STATE_COUNT + 1,
  64. WM_DRM_LICENSE_STATE_UNTIL = WM_DRM_LICENSE_STATE_FROM + 1,
  65. WM_DRM_LICENSE_STATE_FROM_UNTIL = WM_DRM_LICENSE_STATE_UNTIL + 1,
  66. WM_DRM_LICENSE_STATE_COUNT_FROM = WM_DRM_LICENSE_STATE_FROM_UNTIL + 1,
  67. WM_DRM_LICENSE_STATE_COUNT_UNTIL = WM_DRM_LICENSE_STATE_COUNT_FROM + 1,
  68. WM_DRM_LICENSE_STATE_COUNT_FROM_UNTIL = WM_DRM_LICENSE_STATE_COUNT_UNTIL + 1,
  69. WM_DRM_LICENSE_STATE_EXPIRATION_AFTER_FIRSTUSE = WM_DRM_LICENSE_STATE_COUNT_FROM_UNTIL + 1
  70. } DRM_LICENSE_STATE_CATEGORY;
  71. typedef struct _DRM_LICENSE_STATE_DATA
  72. {
  73. DWORD dwStreamId;
  74. DRM_LICENSE_STATE_CATEGORY dwCategory;
  75. DWORD dwNumCounts;
  76. DWORD dwCount[ 4 ];
  77. DWORD dwNumDates;
  78. FILETIME datetime[ 4 ];
  79. DWORD dwVague;
  80. } DRM_LICENSE_STATE_DATA;
  81. typedef
  82. enum DRM_HTTP_STATUS
  83. { HTTP_NOTINITIATED = 0,
  84. HTTP_CONNECTING = HTTP_NOTINITIATED + 1,
  85. HTTP_REQUESTING = HTTP_CONNECTING + 1,
  86. HTTP_RECEIVING = HTTP_REQUESTING + 1,
  87. HTTP_COMPLETED = HTTP_RECEIVING + 1
  88. } DRM_HTTP_STATUS;
  89. typedef
  90. enum DRM_INDIVIDUALIZATION_STATUS
  91. { INDI_UNDEFINED = 0,
  92. INDI_BEGIN = 0x1,
  93. INDI_SUCCEED = 0x2,
  94. INDI_FAIL = 0x4,
  95. INDI_CANCEL = 0x8,
  96. INDI_DOWNLOAD = 0x10,
  97. INDI_INSTALL = 0x20
  98. } DRM_INDIVIDUALIZATION_STATUS;
  99. typedef struct _WMIndividualizeStatus
  100. {
  101. HRESULT hr;
  102. DRM_INDIVIDUALIZATION_STATUS enIndiStatus;
  103. LPSTR pszIndiRespUrl;
  104. DWORD dwHTTPRequest;
  105. DRM_HTTP_STATUS enHTTPStatus;
  106. DWORD dwHTTPReadProgress;
  107. DWORD dwHTTPReadTotal;
  108. } WM_INDIVIDUALIZE_STATUS;
  109. typedef struct _WMGetLicenseData
  110. {
  111. DWORD dwSize;
  112. HRESULT hr;
  113. WCHAR __RPC_FAR *wszURL;
  114. WCHAR __RPC_FAR *wszLocalFilename;
  115. BYTE __RPC_FAR *pbPostData;
  116. DWORD dwPostDataSize;
  117. } WM_GET_LICENSE_DATA;
  118. typedef
  119. enum MSDRM_STATUS
  120. { DRM_ERROR = 0,
  121. DRM_INFORMATION = 1,
  122. DRM_BACKUPRESTORE_BEGIN = 2,
  123. DRM_BACKUPRESTORE_END = 3,
  124. DRM_BACKUPRESTORE_CONNECTING = 4,
  125. DRM_BACKUPRESTORE_DISCONNECTING = 5,
  126. DRM_ERROR_WITHURL = 6,
  127. DRM_RESTRICTED_LICENSE = 7,
  128. DRM_NEEDS_INDIVIDUALIZATION = 8
  129. } MSDRM_STATUS;
  130. typedef
  131. enum DRM_ATTR_DATATYPE
  132. { DRM_TYPE_DWORD = 0,
  133. DRM_TYPE_STRING = 1,
  134. DRM_TYPE_BINARY = 2,
  135. DRM_TYPE_BOOL = 3,
  136. DRM_TYPE_QWORD = 4,
  137. DRM_TYPE_WORD = 5,
  138. DRM_TYPE_GUID = 6
  139. } DRM_ATTR_DATATYPE;
  140. #define DRM_BACKUP_OVERWRITE ((DWORD) 0x00000001)
  141. #define DRM_RESTORE_INDIVIDUALIZE ((DWORD) 0x00000002)
  142. extern RPC_IF_HANDLE __MIDL_itf_drmexternals_0000_v0_0_c_ifspec;
  143. extern RPC_IF_HANDLE __MIDL_itf_drmexternals_0000_v0_0_s_ifspec;
  144. #ifndef __IDRMStatusCallback_INTERFACE_DEFINED__
  145. #define __IDRMStatusCallback_INTERFACE_DEFINED__
  146. /* interface IDRMStatusCallback */
  147. /* [local][unique][helpstring][uuid][object] */
  148. EXTERN_C const IID IID_IDRMStatusCallback;
  149. #if defined(__cplusplus) && !defined(CINTERFACE)
  150. MIDL_INTERFACE("08548704-75B1-4982-9B26-FB385DEE741D")
  151. IDRMStatusCallback : public IUnknown
  152. {
  153. public:
  154. virtual HRESULT STDMETHODCALLTYPE OnStatus(
  155. /* [in] */ MSDRM_STATUS Status,
  156. /* [in] */ HRESULT hr,
  157. /* [in] */ DRM_ATTR_DATATYPE dwType,
  158. /* [in] */ BYTE __RPC_FAR *pValue,
  159. /* [in] */ void __RPC_FAR *pvContext) = 0;
  160. };
  161. #else /* C style interface */
  162. typedef struct IDRMStatusCallbackVtbl
  163. {
  164. BEGIN_INTERFACE
  165. HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )(
  166. IDRMStatusCallback __RPC_FAR * This,
  167. /* [in] */ REFIID riid,
  168. /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
  169. ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )(
  170. IDRMStatusCallback __RPC_FAR * This);
  171. ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )(
  172. IDRMStatusCallback __RPC_FAR * This);
  173. HRESULT ( STDMETHODCALLTYPE __RPC_FAR *OnStatus )(
  174. IDRMStatusCallback __RPC_FAR * This,
  175. /* [in] */ MSDRM_STATUS Status,
  176. /* [in] */ HRESULT hr,
  177. /* [in] */ DRM_ATTR_DATATYPE dwType,
  178. /* [in] */ BYTE __RPC_FAR *pValue,
  179. /* [in] */ void __RPC_FAR *pvContext);
  180. END_INTERFACE
  181. } IDRMStatusCallbackVtbl;
  182. interface IDRMStatusCallback
  183. {
  184. CONST_VTBL struct IDRMStatusCallbackVtbl __RPC_FAR *lpVtbl;
  185. };
  186. #ifdef COBJMACROS
  187. #define IDRMStatusCallback_QueryInterface(This,riid,ppvObject) \
  188. (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  189. #define IDRMStatusCallback_AddRef(This) \
  190. (This)->lpVtbl -> AddRef(This)
  191. #define IDRMStatusCallback_Release(This) \
  192. (This)->lpVtbl -> Release(This)
  193. #define IDRMStatusCallback_OnStatus(This,Status,hr,dwType,pValue,pvContext) \
  194. (This)->lpVtbl -> OnStatus(This,Status,hr,dwType,pValue,pvContext)
  195. #endif /* COBJMACROS */
  196. #endif /* C style interface */
  197. HRESULT STDMETHODCALLTYPE IDRMStatusCallback_OnStatus_Proxy(
  198. IDRMStatusCallback __RPC_FAR * This,
  199. /* [in] */ MSDRM_STATUS Status,
  200. /* [in] */ HRESULT hr,
  201. /* [in] */ DRM_ATTR_DATATYPE dwType,
  202. /* [in] */ BYTE __RPC_FAR *pValue,
  203. /* [in] */ void __RPC_FAR *pvContext);
  204. void __RPC_STUB IDRMStatusCallback_OnStatus_Stub(
  205. IRpcStubBuffer *This,
  206. IRpcChannelBuffer *_pRpcChannelBuffer,
  207. PRPC_MESSAGE _pRpcMessage,
  208. DWORD *_pdwStubPhase);
  209. #endif /* __IDRMStatusCallback_INTERFACE_DEFINED__ */
  210. /* interface __MIDL_itf_drmexternals_0110 */
  211. /* [local] */
  212. #define DRM_ENCRYPT_CONTENT_ASFv1 0x1001
  213. #define DRM_ENCRYPT_CONTENT_ASFv2 0x1002
  214. typedef struct _DRMBUF
  215. {
  216. unsigned long len;
  217. char __RPC_FAR *buf;
  218. } DRMBUF;
  219. typedef struct _DRMBUF __RPC_FAR *PDRMBUF;
  220. extern RPC_IF_HANDLE __MIDL_itf_drmexternals_0110_v0_0_c_ifspec;
  221. extern RPC_IF_HANDLE __MIDL_itf_drmexternals_0110_v0_0_s_ifspec;
  222. /* Additional Prototypes for ALL interfaces */
  223. /* end of Additional Prototypes */
  224. #ifdef __cplusplus
  225. }
  226. #endif
  227. #endif