source: Daodan/MSYS2/mingw32/i686-w64-mingw32/include/msdrmdefs.h

Last change on this file was 1166, checked in by rossy, 3 years ago

Daodan: Replace MinGW build env with an up-to-date MSYS2 env

File size: 2.7 KB
Line 
1/**
2 * This file has no copyright assigned and is placed in the Public Domain.
3 * This file is part of the mingw-w64 runtime package.
4 * No warranty is given; refer to the file DISCLAIMER.PD within this package.
5 */
6#ifndef _INC_MSDRMDEFS
7#define _INC_MSDRMDEFS
8
9typedef ULONG DRMHANDLE;
10typedef ULONG DRMPUBHANDLE;
11typedef ULONG DRMHSESSION;
12typedef ULONG DRMENVHANDLE;
13typedef ULONG DRMQUERYHANDLE;
14
15typedef enum _DRM_STATUS_MSG {
16 DRM_MSG_ACTIVATE_MACHINE = 0,
17 DRM_MSG_ACTIVATE_GROUPIDENTITY,
18 DRM_MSG_ACQUIRE_LICENSE,
19 DRM_MSG_ACQUIRE_ISSUANCE_LICENSE_TEMPLATE,
20 DRM_MSG_ACQUIRE_ADVISORY,
21 DRM_MSG_SIGN_ISSUANCE_LICENSE,
22 DRM_MSG_ACQUIRE_CLIENTLICENSOR
23} DRM_STATUS_MSG;
24
25typedef enum _DRMGLOBALOPTIONS {
26 DRMGLOBALOPTIONS_USE_WINHTTP = 0x00,
27 DRMGLOBALOPTIONS_USE_SERVERSECURITYPROCESSOR = 0x01
28} DRMGLOBALOPTIONS;
29
30typedef enum _DRM_DISTRIBUTION_POINT_INFO {
31 DRM_DISTRIBUTION_POINT_LICENSE_ACQUISITION = 0,
32 DRM_DISTRIBUTION_POINT_PUBLISHING,
33 DRM_DISTRIBUTION_POINT_REFERRAL_INFO
34} DRM_DISTRIBUTION_POINT_INFO;
35
36typedef enum _DRM_USAGEPOLICY_TYPE {
37 DRM_USAGEPOLICY_TYPE_BYNAME = 0,
38 DRM_USAGEPOLICY_TYPE_BYPUBLICKEY,
39 DRM_USAGEPOLICY_TYPE_BYDIGEST,
40 DRM_USAGEPOLICY_TYPE_OSEXCLUSION
41} DRM_USAGEPOLICY_TYPE;
42
43typedef enum _DRMATTESTTYPE {
44 DRMATTESTTYPE_FULLENVIRONMENT = 0,
45 DRMATTESTTYPE_HASHONLY
46} DRMATTESTTYPE;
47
48typedef enum _DRMENCODINGTYPE {
49 DRMENCODINGTYPE_BASE64 = 0,
50 DRMENCODINGTYPE_STRING,
51 DRMENCODINGTYPE_LONG,
52 DRMENCODINGTYPE_TIME,
53 DRMENCODINGTYPE_UINT,
54 DRMENCODINGTYPE_RAW
55} DRMENCODINGTYPE;
56
57typedef enum _DRMSECURITYPROVIDERTYPE {
58 DRMSECURITYPROVIDERTYPE_SOFTWARESECREP = 0
59} DRMSECURITYPROVIDERTYPE;
60
61typedef enum _DRMSPECTYPE {
62 DRMSPECTYPE_UNKNOWN,
63 DRMSPECTYPE_FILENAME
64} DRMSPECTYPE;
65
66typedef enum _DRMTIMETYPE {
67 DRMTIMETYPE_SYSTEMUTC = 0,
68 DRMTIMETYPE_SYSTEMLOCAL
69} DRMTIMETYPE;
70
71typedef struct _DRM_ACTSERV_INFO {
72 UINT uVersion;
73 PWSTR wszPubKey;
74 PWSTR wszURL;
75} DRM_ACTSERV_INFO;
76
77typedef struct _DRM_CLIENT_VERSION_INFO {
78 UINT uStructVersion;
79 DWORD dwVersion[4];
80 WCHAR wszHierarchy[256];
81 WCHAR wszProductID[256];
82 WCHAR wszProductDescription[256];
83} DRM_CLIENT_VERSION_INFO;
84
85typedef struct _DRMID {
86 UINT uVersion;
87 WCHAR *wszIDType;
88 WCHAR *wszID;
89} DRMID;
90
91typedef struct _DRMBOUNDLICENSEPARAMS {
92 UINT uVersion;
93 DRMHANDLE hEnablingPrincipal;
94 DRMHANDLE hSecureStore;
95 PWSTR wszRightsRequested;
96 PWSTR wszRightsGroup;
97 DRMID idResource;
98 UINT cAuthenticatorCount;
99 DRMHANDLE *rghAuthenticators;
100 PWSTR wszDefaultEnablingPrincipalCredentials;
101 DWORD dwFlags;
102} DRMBOUNDLICENSEPARAMS;
103
104typedef HRESULT (__stdcall *DRMCALLBACK)(
105 DRM_STATUS_MSG msg,
106 HRESULT hr,
107 VOID *pvParam,
108 VOID *pvContext
109);
110
111#endif /*_INC_MSDRMDEFS*/
Note: See TracBrowser for help on using the repository browser.