zigwin32/win32/data/rights_management.zig

908 lines
28 KiB
Zig

//! NOTE: this file is autogenerated, DO NOT MODIFY
//--------------------------------------------------------------------------------
// Section: Constants (67)
//--------------------------------------------------------------------------------
pub const DRMHANDLE_INVALID = @as(u32, 0);
pub const DRMENVHANDLE_INVALID = @as(u32, 0);
pub const DRMQUERYHANDLE_INVALID = @as(u32, 0);
pub const DRMHSESSION_INVALID = @as(u32, 0);
pub const DRMPUBHANDLE_INVALID = @as(u32, 0);
pub const DRM_AL_NONSILENT = @as(u32, 1);
pub const DRM_AL_NOPERSIST = @as(u32, 2);
pub const DRM_AL_CANCEL = @as(u32, 4);
pub const DRM_AL_FETCHNOADVISORY = @as(u32, 8);
pub const DRM_AL_NOUI = @as(u32, 16);
pub const DRM_ACTIVATE_MACHINE = @as(u32, 1);
pub const DRM_ACTIVATE_GROUPIDENTITY = @as(u32, 2);
pub const DRM_ACTIVATE_TEMPORARY = @as(u32, 4);
pub const DRM_ACTIVATE_CANCEL = @as(u32, 8);
pub const DRM_ACTIVATE_SILENT = @as(u32, 16);
pub const DRM_ACTIVATE_SHARED_GROUPIDENTITY = @as(u32, 32);
pub const DRM_ACTIVATE_DELAYED = @as(u32, 64);
pub const DRM_EL_MACHINE = @as(u32, 1);
pub const DRM_EL_GROUPIDENTITY = @as(u32, 2);
pub const DRM_EL_GROUPIDENTITY_NAME = @as(u32, 4);
pub const DRM_EL_GROUPIDENTITY_LID = @as(u32, 8);
pub const DRM_EL_SPECIFIED_GROUPIDENTITY = @as(u32, 16);
pub const DRM_EL_EUL = @as(u32, 32);
pub const DRM_EL_EUL_LID = @as(u32, 64);
pub const DRM_EL_CLIENTLICENSOR = @as(u32, 128);
pub const DRM_EL_CLIENTLICENSOR_LID = @as(u32, 256);
pub const DRM_EL_SPECIFIED_CLIENTLICENSOR = @as(u32, 512);
pub const DRM_EL_REVOCATIONLIST = @as(u32, 1024);
pub const DRM_EL_REVOCATIONLIST_LID = @as(u32, 2048);
pub const DRM_EL_EXPIRED = @as(u32, 4096);
pub const DRM_EL_ISSUERNAME = @as(u32, 8192);
pub const DRM_EL_ISSUANCELICENSE_TEMPLATE = @as(u32, 16384);
pub const DRM_EL_ISSUANCELICENSE_TEMPLATE_LID = @as(u32, 32768);
pub const DRM_ADD_LICENSE_NOPERSIST = @as(u32, 0);
pub const DRM_ADD_LICENSE_PERSIST = @as(u32, 1);
pub const DRM_SERVICE_TYPE_ACTIVATION = @as(u32, 1);
pub const DRM_SERVICE_TYPE_CERTIFICATION = @as(u32, 2);
pub const DRM_SERVICE_TYPE_PUBLISHING = @as(u32, 4);
pub const DRM_SERVICE_TYPE_CLIENTLICENSOR = @as(u32, 8);
pub const DRM_SERVICE_TYPE_SILENT = @as(u32, 16);
pub const DRM_SERVICE_LOCATION_INTERNET = @as(u32, 1);
pub const DRM_SERVICE_LOCATION_ENTERPRISE = @as(u32, 2);
pub const DRM_DEFAULTGROUPIDTYPE_WINDOWSAUTH = "WindowsAuthProvider";
pub const DRM_DEFAULTGROUPIDTYPE_PASSPORT = "PassportAuthProvider";
pub const DRM_SIGN_ONLINE = @as(u32, 1);
pub const DRM_SIGN_OFFLINE = @as(u32, 2);
pub const DRM_SIGN_CANCEL = @as(u32, 4);
pub const DRM_SERVER_ISSUANCELICENSE = @as(u32, 8);
pub const DRM_AUTO_GENERATE_KEY = @as(u32, 16);
pub const DRM_OWNER_LICENSE_NOPERSIST = @as(u32, 32);
pub const DRM_REUSE_KEY = @as(u32, 64);
pub const DRM_LOCKBOXTYPE_NONE = @as(u32, 0);
pub const DRM_LOCKBOXTYPE_WHITEBOX = @as(u32, 1);
pub const DRM_LOCKBOXTYPE_BLACKBOX = @as(u32, 2);
pub const DRM_LOCKBOXTYPE_DEFAULT = @as(u32, 2);
pub const DRM_AILT_NONSILENT = @as(u32, 1);
pub const DRM_AILT_OBTAIN_ALL = @as(u32, 2);
pub const DRM_AILT_CANCEL = @as(u32, 4);
pub const MSDRM_CLIENT_ZONE = @as(u32, 52992);
pub const MSDRM_POLICY_ZONE = @as(u32, 37632);
pub const DRMIDVERSION = @as(u32, 0);
pub const DRMBOUNDLICENSEPARAMSVERSION = @as(u32, 1);
pub const DRMBINDINGFLAGS_IGNORE_VALIDITY_INTERVALS = @as(u32, 1);
pub const DRMLICENSEACQDATAVERSION = @as(u32, 0);
pub const DRMACTSERVINFOVERSION = @as(u32, 0);
pub const DRMCLIENTSTRUCTVERSION = @as(u32, 1);
pub const DRMCALLBACKVERSION = @as(u32, 1);
//--------------------------------------------------------------------------------
// Section: Types (15)
//--------------------------------------------------------------------------------
pub const DRMID = extern struct {
uVersion: u32,
wszIDType: ?PWSTR,
wszID: ?PWSTR,
};
pub const DRMTIMETYPE = enum(i32) {
UTC = 0,
LOCAL = 1,
};
pub const DRMTIMETYPE_SYSTEMUTC = DRMTIMETYPE.UTC;
pub const DRMTIMETYPE_SYSTEMLOCAL = DRMTIMETYPE.LOCAL;
pub const DRMENCODINGTYPE = enum(i32) {
BASE64 = 0,
STRING = 1,
LONG = 2,
TIME = 3,
UINT = 4,
RAW = 5,
};
pub const DRMENCODINGTYPE_BASE64 = DRMENCODINGTYPE.BASE64;
pub const DRMENCODINGTYPE_STRING = DRMENCODINGTYPE.STRING;
pub const DRMENCODINGTYPE_LONG = DRMENCODINGTYPE.LONG;
pub const DRMENCODINGTYPE_TIME = DRMENCODINGTYPE.TIME;
pub const DRMENCODINGTYPE_UINT = DRMENCODINGTYPE.UINT;
pub const DRMENCODINGTYPE_RAW = DRMENCODINGTYPE.RAW;
pub const DRMATTESTTYPE = enum(i32) {
FULLENVIRONMENT = 0,
HASHONLY = 1,
};
pub const DRMATTESTTYPE_FULLENVIRONMENT = DRMATTESTTYPE.FULLENVIRONMENT;
pub const DRMATTESTTYPE_HASHONLY = DRMATTESTTYPE.HASHONLY;
pub const DRMSPECTYPE = enum(i32) {
UNKNOWN = 0,
FILENAME = 1,
};
pub const DRMSPECTYPE_UNKNOWN = DRMSPECTYPE.UNKNOWN;
pub const DRMSPECTYPE_FILENAME = DRMSPECTYPE.FILENAME;
pub const DRMSECURITYPROVIDERTYPE = enum(i32) {
P = 0,
};
pub const DRMSECURITYPROVIDERTYPE_SOFTWARESECREP = DRMSECURITYPROVIDERTYPE.P;
pub const DRMGLOBALOPTIONS = enum(i32) {
WINHTTP = 0,
SERVERSECURITYPROCESSOR = 1,
};
pub const DRMGLOBALOPTIONS_USE_WINHTTP = DRMGLOBALOPTIONS.WINHTTP;
pub const DRMGLOBALOPTIONS_USE_SERVERSECURITYPROCESSOR = DRMGLOBALOPTIONS.SERVERSECURITYPROCESSOR;
pub const DRMBOUNDLICENSEPARAMS = extern struct {
uVersion: u32,
hEnablingPrincipal: u32,
hSecureStore: u32,
wszRightsRequested: ?PWSTR,
wszRightsGroup: ?PWSTR,
idResource: DRMID,
cAuthenticatorCount: u32,
rghAuthenticators: ?*u32,
wszDefaultEnablingPrincipalCredentials: ?PWSTR,
dwFlags: u32,
};
pub const DRM_LICENSE_ACQ_DATA = extern struct {
uVersion: u32,
wszURL: ?PWSTR,
wszLocalFilename: ?PWSTR,
pbPostData: ?*u8,
dwPostDataSize: u32,
wszFriendlyName: ?PWSTR,
};
pub const DRM_ACTSERV_INFO = extern struct {
uVersion: u32,
wszPubKey: ?PWSTR,
wszURL: ?PWSTR,
};
pub const DRM_CLIENT_VERSION_INFO = extern struct {
uStructVersion: u32,
dwVersion: [4]u32,
wszHierarchy: [256]u16,
wszProductId: [256]u16,
wszProductDescription: [256]u16,
};
pub const DRM_STATUS_MSG = enum(i32) {
ACTIVATE_MACHINE = 0,
ACTIVATE_GROUPIDENTITY = 1,
ACQUIRE_LICENSE = 2,
ACQUIRE_ADVISORY = 3,
SIGN_ISSUANCE_LICENSE = 4,
ACQUIRE_CLIENTLICENSOR = 5,
ACQUIRE_ISSUANCE_LICENSE_TEMPLATE = 6,
};
pub const DRM_MSG_ACTIVATE_MACHINE = DRM_STATUS_MSG.ACTIVATE_MACHINE;
pub const DRM_MSG_ACTIVATE_GROUPIDENTITY = DRM_STATUS_MSG.ACTIVATE_GROUPIDENTITY;
pub const DRM_MSG_ACQUIRE_LICENSE = DRM_STATUS_MSG.ACQUIRE_LICENSE;
pub const DRM_MSG_ACQUIRE_ADVISORY = DRM_STATUS_MSG.ACQUIRE_ADVISORY;
pub const DRM_MSG_SIGN_ISSUANCE_LICENSE = DRM_STATUS_MSG.SIGN_ISSUANCE_LICENSE;
pub const DRM_MSG_ACQUIRE_CLIENTLICENSOR = DRM_STATUS_MSG.ACQUIRE_CLIENTLICENSOR;
pub const DRM_MSG_ACQUIRE_ISSUANCE_LICENSE_TEMPLATE = DRM_STATUS_MSG.ACQUIRE_ISSUANCE_LICENSE_TEMPLATE;
pub const DRM_USAGEPOLICY_TYPE = enum(i32) {
BYNAME = 0,
BYPUBLICKEY = 1,
BYDIGEST = 2,
OSEXCLUSION = 3,
};
pub const DRM_USAGEPOLICY_TYPE_BYNAME = DRM_USAGEPOLICY_TYPE.BYNAME;
pub const DRM_USAGEPOLICY_TYPE_BYPUBLICKEY = DRM_USAGEPOLICY_TYPE.BYPUBLICKEY;
pub const DRM_USAGEPOLICY_TYPE_BYDIGEST = DRM_USAGEPOLICY_TYPE.BYDIGEST;
pub const DRM_USAGEPOLICY_TYPE_OSEXCLUSION = DRM_USAGEPOLICY_TYPE.OSEXCLUSION;
pub const DRM_DISTRIBUTION_POINT_INFO = enum(i32) {
LICENSE_ACQUISITION = 0,
PUBLISHING = 1,
REFERRAL_INFO = 2,
};
pub const DRM_DISTRIBUTION_POINT_LICENSE_ACQUISITION = DRM_DISTRIBUTION_POINT_INFO.LICENSE_ACQUISITION;
pub const DRM_DISTRIBUTION_POINT_PUBLISHING = DRM_DISTRIBUTION_POINT_INFO.PUBLISHING;
pub const DRM_DISTRIBUTION_POINT_REFERRAL_INFO = DRM_DISTRIBUTION_POINT_INFO.REFERRAL_INFO;
pub const DRMCALLBACK = switch (@import("builtin").zig_backend) {
.stage1 => fn(
param0: DRM_STATUS_MSG,
param1: HRESULT,
param2: ?*anyopaque,
param3: ?*anyopaque,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
else => *const fn(
param0: DRM_STATUS_MSG,
param1: HRESULT,
param2: ?*anyopaque,
param3: ?*anyopaque,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
} ;
//--------------------------------------------------------------------------------
// Section: Functions (84)
//--------------------------------------------------------------------------------
pub extern "msdrm" fn DRMSetGlobalOptions(
eGlobalOptions: DRMGLOBALOPTIONS,
pvdata: ?*anyopaque,
dwlen: u32,
) callconv(@import("std").os.windows.WINAPI) HRESULT;
pub extern "msdrm" fn DRMGetClientVersion(
pDRMClientVersionInfo: ?*DRM_CLIENT_VERSION_INFO,
) callconv(@import("std").os.windows.WINAPI) HRESULT;
pub extern "msdrm" fn DRMInitEnvironment(
eSecurityProviderType: DRMSECURITYPROVIDERTYPE,
eSpecification: DRMSPECTYPE,
wszSecurityProvider: ?PWSTR,
wszManifestCredentials: ?PWSTR,
wszMachineCredentials: ?PWSTR,
phEnv: ?*u32,
phDefaultLibrary: ?*u32,
) callconv(@import("std").os.windows.WINAPI) HRESULT;
pub extern "msdrm" fn DRMLoadLibrary(
hEnv: u32,
eSpecification: DRMSPECTYPE,
wszLibraryProvider: ?PWSTR,
wszCredentials: ?PWSTR,
phLibrary: ?*u32,
) callconv(@import("std").os.windows.WINAPI) HRESULT;
pub extern "msdrm" fn DRMCreateEnablingPrincipal(
hEnv: u32,
hLibrary: u32,
wszObject: ?PWSTR,
pidPrincipal: ?*DRMID,
wszCredentials: ?PWSTR,
phEnablingPrincipal: ?*u32,
) callconv(@import("std").os.windows.WINAPI) HRESULT;
pub extern "msdrm" fn DRMCloseHandle(
handle: u32,
) callconv(@import("std").os.windows.WINAPI) HRESULT;
pub extern "msdrm" fn DRMCloseEnvironmentHandle(
hEnv: u32,
) callconv(@import("std").os.windows.WINAPI) HRESULT;
pub extern "msdrm" fn DRMDuplicateHandle(
hToCopy: u32,
phCopy: ?*u32,
) callconv(@import("std").os.windows.WINAPI) HRESULT;
pub extern "msdrm" fn DRMDuplicateEnvironmentHandle(
hToCopy: u32,
phCopy: ?*u32,
) callconv(@import("std").os.windows.WINAPI) HRESULT;
pub extern "msdrm" fn DRMRegisterRevocationList(
hEnv: u32,
wszRevocationList: ?PWSTR,
) callconv(@import("std").os.windows.WINAPI) HRESULT;
pub extern "msdrm" fn DRMCheckSecurity(
hEnv: u32,
cLevel: u32,
) callconv(@import("std").os.windows.WINAPI) HRESULT;
pub extern "msdrm" fn DRMRegisterContent(
fRegister: BOOL,
) callconv(@import("std").os.windows.WINAPI) HRESULT;
pub extern "msdrm" fn DRMEncrypt(
hCryptoProvider: u32,
iPosition: u32,
cNumInBytes: u32,
pbInData: ?*u8,
pcNumOutBytes: ?*u32,
pbOutData: ?*u8,
) callconv(@import("std").os.windows.WINAPI) HRESULT;
pub extern "msdrm" fn DRMDecrypt(
hCryptoProvider: u32,
iPosition: u32,
cNumInBytes: u32,
pbInData: ?*u8,
pcNumOutBytes: ?*u32,
pbOutData: ?*u8,
) callconv(@import("std").os.windows.WINAPI) HRESULT;
pub extern "msdrm" fn DRMCreateBoundLicense(
hEnv: u32,
pParams: ?*DRMBOUNDLICENSEPARAMS,
wszLicenseChain: ?PWSTR,
phBoundLicense: ?*u32,
phErrorLog: ?*u32,
) callconv(@import("std").os.windows.WINAPI) HRESULT;
pub extern "msdrm" fn DRMCreateEnablingBitsDecryptor(
hBoundLicense: u32,
wszRight: ?PWSTR,
hAuxLib: u32,
wszAuxPlug: ?PWSTR,
phDecryptor: ?*u32,
) callconv(@import("std").os.windows.WINAPI) HRESULT;
pub extern "msdrm" fn DRMCreateEnablingBitsEncryptor(
hBoundLicense: u32,
wszRight: ?PWSTR,
hAuxLib: u32,
wszAuxPlug: ?PWSTR,
phEncryptor: ?*u32,
) callconv(@import("std").os.windows.WINAPI) HRESULT;
pub extern "msdrm" fn DRMAttest(
hEnablingPrincipal: u32,
wszData: ?PWSTR,
eType: DRMATTESTTYPE,
pcAttestedBlob: ?*u32,
wszAttestedBlob: [*:0]u16,
) callconv(@import("std").os.windows.WINAPI) HRESULT;
pub extern "msdrm" fn DRMGetTime(
hEnv: u32,
eTimerIdType: DRMTIMETYPE,
poTimeObject: ?*SYSTEMTIME,
) callconv(@import("std").os.windows.WINAPI) HRESULT;
pub extern "msdrm" fn DRMGetInfo(
handle: u32,
wszAttribute: ?PWSTR,
peEncoding: ?*DRMENCODINGTYPE,
pcBuffer: ?*u32,
pbBuffer: ?*u8,
) callconv(@import("std").os.windows.WINAPI) HRESULT;
pub extern "msdrm" fn DRMGetEnvironmentInfo(
handle: u32,
wszAttribute: ?PWSTR,
peEncoding: ?*DRMENCODINGTYPE,
pcBuffer: ?*u32,
pbBuffer: ?*u8,
) callconv(@import("std").os.windows.WINAPI) HRESULT;
pub extern "msdrm" fn DRMGetProcAddress(
hLibrary: u32,
wszProcName: ?PWSTR,
ppfnProcAddress: ?*?FARPROC,
) callconv(@import("std").os.windows.WINAPI) HRESULT;
pub extern "msdrm" fn DRMGetBoundLicenseObjectCount(
hQueryRoot: u32,
wszSubObjectType: ?PWSTR,
pcSubObjects: ?*u32,
) callconv(@import("std").os.windows.WINAPI) HRESULT;
pub extern "msdrm" fn DRMGetBoundLicenseObject(
hQueryRoot: u32,
wszSubObjectType: ?PWSTR,
iWhich: u32,
phSubObject: ?*u32,
) callconv(@import("std").os.windows.WINAPI) HRESULT;
pub extern "msdrm" fn DRMGetBoundLicenseAttributeCount(
hQueryRoot: u32,
wszAttribute: ?PWSTR,
pcAttributes: ?*u32,
) callconv(@import("std").os.windows.WINAPI) HRESULT;
pub extern "msdrm" fn DRMGetBoundLicenseAttribute(
hQueryRoot: u32,
wszAttribute: ?PWSTR,
iWhich: u32,
peEncoding: ?*DRMENCODINGTYPE,
pcBuffer: ?*u32,
pbBuffer: ?*u8,
) callconv(@import("std").os.windows.WINAPI) HRESULT;
pub extern "msdrm" fn DRMCreateClientSession(
pfnCallback: ?DRMCALLBACK,
uCallbackVersion: u32,
wszGroupIDProviderType: ?PWSTR,
wszGroupID: ?PWSTR,
phClient: ?*u32,
) callconv(@import("std").os.windows.WINAPI) HRESULT;
pub extern "msdrm" fn DRMIsActivated(
hClient: u32,
uFlags: u32,
pActServInfo: ?*DRM_ACTSERV_INFO,
) callconv(@import("std").os.windows.WINAPI) HRESULT;
pub extern "msdrm" fn DRMActivate(
hClient: u32,
uFlags: u32,
uLangID: u32,
pActServInfo: ?*DRM_ACTSERV_INFO,
pvContext: ?*anyopaque,
hParentWnd: ?HWND,
) callconv(@import("std").os.windows.WINAPI) HRESULT;
pub extern "msdrm" fn DRMGetServiceLocation(
hClient: u32,
uServiceType: u32,
uServiceLocation: u32,
wszIssuanceLicense: ?PWSTR,
puServiceURLLength: ?*u32,
wszServiceURL: ?[*:0]u16,
) callconv(@import("std").os.windows.WINAPI) HRESULT;
pub extern "msdrm" fn DRMCreateLicenseStorageSession(
hEnv: u32,
hDefaultLibrary: u32,
hClient: u32,
uFlags: u32,
wszIssuanceLicense: ?PWSTR,
phLicenseStorage: ?*u32,
) callconv(@import("std").os.windows.WINAPI) HRESULT;
pub extern "msdrm" fn DRMAddLicense(
hLicenseStorage: u32,
uFlags: u32,
wszLicense: ?PWSTR,
) callconv(@import("std").os.windows.WINAPI) HRESULT;
pub extern "msdrm" fn DRMAcquireAdvisories(
hLicenseStorage: u32,
wszLicense: ?PWSTR,
wszURL: ?PWSTR,
pvContext: ?*anyopaque,
) callconv(@import("std").os.windows.WINAPI) HRESULT;
pub extern "msdrm" fn DRMEnumerateLicense(
hSession: u32,
uFlags: u32,
uIndex: u32,
pfSharedFlag: ?*BOOL,
puCertificateDataLen: ?*u32,
wszCertificateData: ?[*:0]u16,
) callconv(@import("std").os.windows.WINAPI) HRESULT;
pub extern "msdrm" fn DRMAcquireLicense(
hSession: u32,
uFlags: u32,
wszGroupIdentityCredential: ?PWSTR,
wszRequestedRights: ?PWSTR,
wszCustomData: ?PWSTR,
wszURL: ?PWSTR,
pvContext: ?*anyopaque,
) callconv(@import("std").os.windows.WINAPI) HRESULT;
pub extern "msdrm" fn DRMDeleteLicense(
hSession: u32,
wszLicenseId: ?PWSTR,
) callconv(@import("std").os.windows.WINAPI) HRESULT;
pub extern "msdrm" fn DRMCloseSession(
hSession: u32,
) callconv(@import("std").os.windows.WINAPI) HRESULT;
pub extern "msdrm" fn DRMDuplicateSession(
hSessionIn: u32,
phSessionOut: ?*u32,
) callconv(@import("std").os.windows.WINAPI) HRESULT;
pub extern "msdrm" fn DRMGetSecurityProvider(
uFlags: u32,
puTypeLen: ?*u32,
wszType: ?[*:0]u16,
puPathLen: ?*u32,
wszPath: ?[*:0]u16,
) callconv(@import("std").os.windows.WINAPI) HRESULT;
pub extern "msdrm" fn DRMEncode(
wszAlgID: ?PWSTR,
uDataLen: u32,
pbDecodedData: ?*u8,
puEncodedStringLen: ?*u32,
wszEncodedString: ?[*:0]u16,
) callconv(@import("std").os.windows.WINAPI) HRESULT;
pub extern "msdrm" fn DRMDecode(
wszAlgID: ?PWSTR,
wszEncodedString: ?PWSTR,
puDecodedDataLen: ?*u32,
pbDecodedData: ?*u8,
) callconv(@import("std").os.windows.WINAPI) HRESULT;
pub extern "msdrm" fn DRMConstructCertificateChain(
cCertificates: u32,
rgwszCertificates: [*]?PWSTR,
pcChain: ?*u32,
wszChain: ?[*:0]u16,
) callconv(@import("std").os.windows.WINAPI) HRESULT;
pub extern "msdrm" fn DRMParseUnboundLicense(
wszCertificate: ?PWSTR,
phQueryRoot: ?*u32,
) callconv(@import("std").os.windows.WINAPI) HRESULT;
pub extern "msdrm" fn DRMCloseQueryHandle(
hQuery: u32,
) callconv(@import("std").os.windows.WINAPI) HRESULT;
pub extern "msdrm" fn DRMGetUnboundLicenseObjectCount(
hQueryRoot: u32,
wszSubObjectType: ?PWSTR,
pcSubObjects: ?*u32,
) callconv(@import("std").os.windows.WINAPI) HRESULT;
pub extern "msdrm" fn DRMGetUnboundLicenseObject(
hQueryRoot: u32,
wszSubObjectType: ?PWSTR,
iIndex: u32,
phSubQuery: ?*u32,
) callconv(@import("std").os.windows.WINAPI) HRESULT;
pub extern "msdrm" fn DRMGetUnboundLicenseAttributeCount(
hQueryRoot: u32,
wszAttributeType: ?PWSTR,
pcAttributes: ?*u32,
) callconv(@import("std").os.windows.WINAPI) HRESULT;
pub extern "msdrm" fn DRMGetUnboundLicenseAttribute(
hQueryRoot: u32,
wszAttributeType: ?PWSTR,
iWhich: u32,
peEncoding: ?*DRMENCODINGTYPE,
pcBuffer: ?*u32,
pbBuffer: ?*u8,
) callconv(@import("std").os.windows.WINAPI) HRESULT;
pub extern "msdrm" fn DRMGetCertificateChainCount(
wszChain: ?PWSTR,
pcCertCount: ?*u32,
) callconv(@import("std").os.windows.WINAPI) HRESULT;
pub extern "msdrm" fn DRMDeconstructCertificateChain(
wszChain: ?PWSTR,
iWhich: u32,
pcCert: ?*u32,
wszCert: ?[*:0]u16,
) callconv(@import("std").os.windows.WINAPI) HRESULT;
pub extern "msdrm" fn DRMVerify(
wszData: ?PWSTR,
pcAttestedData: ?*u32,
wszAttestedData: ?[*:0]u16,
peType: ?*DRMATTESTTYPE,
pcPrincipal: ?*u32,
wszPrincipal: ?[*:0]u16,
pcManifest: ?*u32,
wszManifest: ?[*:0]u16,
) callconv(@import("std").os.windows.WINAPI) HRESULT;
pub extern "msdrm" fn DRMCreateUser(
wszUserName: ?PWSTR,
wszUserId: ?PWSTR,
wszUserIdType: ?PWSTR,
phUser: ?*u32,
) callconv(@import("std").os.windows.WINAPI) HRESULT;
pub extern "msdrm" fn DRMCreateRight(
wszRightName: ?PWSTR,
pstFrom: ?*SYSTEMTIME,
pstUntil: ?*SYSTEMTIME,
cExtendedInfo: u32,
pwszExtendedInfoName: ?[*]?PWSTR,
pwszExtendedInfoValue: ?[*]?PWSTR,
phRight: ?*u32,
) callconv(@import("std").os.windows.WINAPI) HRESULT;
pub extern "msdrm" fn DRMCreateIssuanceLicense(
pstTimeFrom: ?*SYSTEMTIME,
pstTimeUntil: ?*SYSTEMTIME,
wszReferralInfoName: ?PWSTR,
wszReferralInfoURL: ?PWSTR,
hOwner: u32,
wszIssuanceLicense: ?PWSTR,
hBoundLicense: u32,
phIssuanceLicense: ?*u32,
) callconv(@import("std").os.windows.WINAPI) HRESULT;
pub extern "msdrm" fn DRMAddRightWithUser(
hIssuanceLicense: u32,
hRight: u32,
hUser: u32,
) callconv(@import("std").os.windows.WINAPI) HRESULT;
pub extern "msdrm" fn DRMClearAllRights(
hIssuanceLicense: u32,
) callconv(@import("std").os.windows.WINAPI) HRESULT;
pub extern "msdrm" fn DRMSetMetaData(
hIssuanceLicense: u32,
wszContentId: ?PWSTR,
wszContentIdType: ?PWSTR,
wszSKUId: ?PWSTR,
wszSKUIdType: ?PWSTR,
wszContentType: ?PWSTR,
wszContentName: ?PWSTR,
) callconv(@import("std").os.windows.WINAPI) HRESULT;
pub extern "msdrm" fn DRMSetUsagePolicy(
hIssuanceLicense: u32,
eUsagePolicyType: DRM_USAGEPOLICY_TYPE,
fDelete: BOOL,
fExclusion: BOOL,
wszName: ?PWSTR,
wszMinVersion: ?PWSTR,
wszMaxVersion: ?PWSTR,
wszPublicKey: ?PWSTR,
wszDigestAlgorithm: ?PWSTR,
pbDigest: ?*u8,
cbDigest: u32,
) callconv(@import("std").os.windows.WINAPI) HRESULT;
pub extern "msdrm" fn DRMSetRevocationPoint(
hIssuanceLicense: u32,
fDelete: BOOL,
wszId: ?PWSTR,
wszIdType: ?PWSTR,
wszURL: ?PWSTR,
pstFrequency: ?*SYSTEMTIME,
wszName: ?PWSTR,
wszPublicKey: ?PWSTR,
) callconv(@import("std").os.windows.WINAPI) HRESULT;
pub extern "msdrm" fn DRMSetApplicationSpecificData(
hIssuanceLicense: u32,
fDelete: BOOL,
wszName: ?PWSTR,
wszValue: ?PWSTR,
) callconv(@import("std").os.windows.WINAPI) HRESULT;
pub extern "msdrm" fn DRMSetNameAndDescription(
hIssuanceLicense: u32,
fDelete: BOOL,
lcid: u32,
wszName: ?PWSTR,
wszDescription: ?PWSTR,
) callconv(@import("std").os.windows.WINAPI) HRESULT;
pub extern "msdrm" fn DRMSetIntervalTime(
hIssuanceLicense: u32,
cDays: u32,
) callconv(@import("std").os.windows.WINAPI) HRESULT;
pub extern "msdrm" fn DRMGetIssuanceLicenseTemplate(
hIssuanceLicense: u32,
puIssuanceLicenseTemplateLength: ?*u32,
wszIssuanceLicenseTemplate: ?[*:0]u16,
) callconv(@import("std").os.windows.WINAPI) HRESULT;
pub extern "msdrm" fn DRMGetSignedIssuanceLicense(
hEnv: u32,
hIssuanceLicense: u32,
uFlags: u32,
pbSymKey: ?*u8,
cbSymKey: u32,
wszSymKeyType: ?PWSTR,
wszClientLicensorCertificate: ?PWSTR,
pfnCallback: ?DRMCALLBACK,
wszURL: ?PWSTR,
pvContext: ?*anyopaque,
) callconv(@import("std").os.windows.WINAPI) HRESULT;
// TODO: this type is limited to platform 'windows6.1'
pub extern "msdrm" fn DRMGetSignedIssuanceLicenseEx(
hEnv: u32,
hIssuanceLicense: u32,
uFlags: u32,
// TODO: what to do with BytesParamIndex 4?
pbSymKey: ?*u8,
cbSymKey: u32,
wszSymKeyType: ?PWSTR,
pvReserved: ?*anyopaque,
hEnablingPrincipal: u32,
hBoundLicenseCLC: u32,
pfnCallback: ?DRMCALLBACK,
pvContext: ?*anyopaque,
) callconv(@import("std").os.windows.WINAPI) HRESULT;
pub extern "msdrm" fn DRMClosePubHandle(
hPub: u32,
) callconv(@import("std").os.windows.WINAPI) HRESULT;
pub extern "msdrm" fn DRMDuplicatePubHandle(
hPubIn: u32,
phPubOut: ?*u32,
) callconv(@import("std").os.windows.WINAPI) HRESULT;
pub extern "msdrm" fn DRMGetUserInfo(
hUser: u32,
puUserNameLength: ?*u32,
wszUserName: ?[*:0]u16,
puUserIdLength: ?*u32,
wszUserId: ?[*:0]u16,
puUserIdTypeLength: ?*u32,
wszUserIdType: ?[*:0]u16,
) callconv(@import("std").os.windows.WINAPI) HRESULT;
pub extern "msdrm" fn DRMGetRightInfo(
hRight: u32,
puRightNameLength: ?*u32,
wszRightName: ?[*:0]u16,
pstFrom: ?*SYSTEMTIME,
pstUntil: ?*SYSTEMTIME,
) callconv(@import("std").os.windows.WINAPI) HRESULT;
pub extern "msdrm" fn DRMGetRightExtendedInfo(
hRight: u32,
uIndex: u32,
puExtendedInfoNameLength: ?*u32,
wszExtendedInfoName: ?[*:0]u16,
puExtendedInfoValueLength: ?*u32,
wszExtendedInfoValue: ?[*:0]u16,
) callconv(@import("std").os.windows.WINAPI) HRESULT;
pub extern "msdrm" fn DRMGetUsers(
hIssuanceLicense: u32,
uIndex: u32,
phUser: ?*u32,
) callconv(@import("std").os.windows.WINAPI) HRESULT;
pub extern "msdrm" fn DRMGetUserRights(
hIssuanceLicense: u32,
hUser: u32,
uIndex: u32,
phRight: ?*u32,
) callconv(@import("std").os.windows.WINAPI) HRESULT;
pub extern "msdrm" fn DRMGetMetaData(
hIssuanceLicense: u32,
puContentIdLength: ?*u32,
wszContentId: ?[*:0]u16,
puContentIdTypeLength: ?*u32,
wszContentIdType: ?[*:0]u16,
puSKUIdLength: ?*u32,
wszSKUId: ?[*:0]u16,
puSKUIdTypeLength: ?*u32,
wszSKUIdType: ?[*:0]u16,
puContentTypeLength: ?*u32,
wszContentType: ?[*:0]u16,
puContentNameLength: ?*u32,
wszContentName: ?[*:0]u16,
) callconv(@import("std").os.windows.WINAPI) HRESULT;
pub extern "msdrm" fn DRMGetApplicationSpecificData(
hIssuanceLicense: u32,
uIndex: u32,
puNameLength: ?*u32,
wszName: ?[*:0]u16,
puValueLength: ?*u32,
wszValue: ?[*:0]u16,
) callconv(@import("std").os.windows.WINAPI) HRESULT;
pub extern "msdrm" fn DRMGetIssuanceLicenseInfo(
hIssuanceLicense: u32,
pstTimeFrom: ?*SYSTEMTIME,
pstTimeUntil: ?*SYSTEMTIME,
uFlags: u32,
puDistributionPointNameLength: ?*u32,
wszDistributionPointName: ?[*:0]u16,
puDistributionPointURLLength: ?*u32,
wszDistributionPointURL: ?[*:0]u16,
phOwner: ?*u32,
pfOfficial: ?*BOOL,
) callconv(@import("std").os.windows.WINAPI) HRESULT;
pub extern "msdrm" fn DRMGetRevocationPoint(
hIssuanceLicense: u32,
puIdLength: ?*u32,
wszId: ?[*:0]u16,
puIdTypeLength: ?*u32,
wszIdType: ?[*:0]u16,
puURLLength: ?*u32,
wszRL: ?[*:0]u16,
pstFrequency: ?*SYSTEMTIME,
puNameLength: ?*u32,
wszName: ?[*:0]u16,
puPublicKeyLength: ?*u32,
wszPublicKey: ?[*:0]u16,
) callconv(@import("std").os.windows.WINAPI) HRESULT;
pub extern "msdrm" fn DRMGetUsagePolicy(
hIssuanceLicense: u32,
uIndex: u32,
peUsagePolicyType: ?*DRM_USAGEPOLICY_TYPE,
pfExclusion: ?*BOOL,
puNameLength: ?*u32,
wszName: ?[*:0]u16,
puMinVersionLength: ?*u32,
wszMinVersion: ?[*:0]u16,
puMaxVersionLength: ?*u32,
wszMaxVersion: ?[*:0]u16,
puPublicKeyLength: ?*u32,
wszPublicKey: ?[*:0]u16,
puDigestAlgorithmLength: ?*u32,
wszDigestAlgorithm: ?[*:0]u16,
pcbDigest: ?*u32,
pbDigest: ?*u8,
) callconv(@import("std").os.windows.WINAPI) HRESULT;
pub extern "msdrm" fn DRMGetNameAndDescription(
hIssuanceLicense: u32,
uIndex: u32,
pulcid: ?*u32,
puNameLength: ?*u32,
wszName: ?[*:0]u16,
puDescriptionLength: ?*u32,
wszDescription: ?[*:0]u16,
) callconv(@import("std").os.windows.WINAPI) HRESULT;
pub extern "msdrm" fn DRMGetOwnerLicense(
hIssuanceLicense: u32,
puOwnerLicenseLength: ?*u32,
wszOwnerLicense: ?[*:0]u16,
) callconv(@import("std").os.windows.WINAPI) HRESULT;
pub extern "msdrm" fn DRMGetIntervalTime(
hIssuanceLicense: u32,
pcDays: ?*u32,
) callconv(@import("std").os.windows.WINAPI) HRESULT;
pub extern "msdrm" fn DRMRepair(
) callconv(@import("std").os.windows.WINAPI) HRESULT;
// TODO: this type is limited to platform 'windows6.0.6000'
pub extern "msdrm" fn DRMRegisterProtectedWindow(
hEnv: u32,
hwnd: ?HWND,
) callconv(@import("std").os.windows.WINAPI) HRESULT;
// TODO: this type is limited to platform 'windows6.0.6000'
pub extern "msdrm" fn DRMIsWindowProtected(
hwnd: ?HWND,
pfProtected: ?*BOOL,
) callconv(@import("std").os.windows.WINAPI) HRESULT;
// TODO: this type is limited to platform 'windows6.0.6000'
pub extern "msdrm" fn DRMAcquireIssuanceLicenseTemplate(
hClient: u32,
uFlags: u32,
pvReserved: ?*anyopaque,
cTemplates: u32,
pwszTemplateIds: ?[*]?PWSTR,
wszUrl: ?PWSTR,
pvContext: ?*anyopaque,
) callconv(@import("std").os.windows.WINAPI) HRESULT;
//--------------------------------------------------------------------------------
// Section: Unicode Aliases (0)
//--------------------------------------------------------------------------------
const thismodule = @This();
pub usingnamespace switch (@import("../zig.zig").unicode_mode) {
.ansi => struct {
},
.wide => struct {
},
.unspecified => if (@import("builtin").is_test) struct {
} else struct {
},
};
//--------------------------------------------------------------------------------
// Section: Imports (6)
//--------------------------------------------------------------------------------
const BOOL = @import("../foundation.zig").BOOL;
const FARPROC = @import("../foundation.zig").FARPROC;
const HRESULT = @import("../foundation.zig").HRESULT;
const HWND = @import("../foundation.zig").HWND;
const PWSTR = @import("../foundation.zig").PWSTR;
const SYSTEMTIME = @import("../foundation.zig").SYSTEMTIME;
test {
// The following '_ = <FuncPtrType>' lines are a workaround for https://github.com/ziglang/zig/issues/4476
if (@hasDecl(@This(), "DRMCALLBACK")) { _ = DRMCALLBACK; }
@setEvalBranchQuota(
comptime @import("std").meta.declarations(@This()).len * 3
);
// reference all the pub declarations
if (!@import("builtin").is_test) return;
inline for (comptime @import("std").meta.declarations(@This())) |decl| {
_ = @field(@This(), decl.name);
}
}