ISCPSecureQuery3::GetRightsOnClearChannel method (mswmdm.h)

The GetRightsOnClearChannel method retrieves rights information for the current piece of content on a clear channel.

Syntax

HRESULT GetRightsOnClearChannel(
  [in]  BYTE                *pData,
  [in]  DWORD               dwSize,
  [in]  BYTE                *pbSPSessionKey,
  [in]  DWORD               dwSessionKeyLen,
  [in]  IMDSPStorageGlobals *pStgGlobals,
  [in]  IWMDMProgress3      *pProgressCallback,
  [out] PWMDMRIGHTS         *ppRights,
  [out] UINT                *pnRightsCount
);

Parameters

[in] pData

Pointer to data object.

[in] dwSize

Number of bytes of data in the pData buffer.

[in] pbSPSessionKey

Pointer to an array of bytes containing the session key for securing communication with the service provider to which pStgGlobals points.

[in] dwSessionKeyLen

Length of the byte array to which pbSPSessionKey points.

[in] pStgGlobals

Pointer to an IWMDMStorageGlobals interface on the root storage of the media or device to or from which the file is being transferred.

[in] pProgressCallback

Pointer to an IWMDMProgress3 interface.

[out] ppRights

Pointer to an array of WMDMRIGHTS structures containing the rights information for this object. The array is allocated by this method and must be freed using CoTaskMemFree.

[out] pnRightsCount

Number of WMDMRIGHTS structures in the ppRights array.

Return value

If the method succeeds, it returns S_OK. If the method fails, it returns an HRESULT error code.

Return code Description
WMDM_E_CALL_OUT_OF_SEQUENCE
This method was called out of sequence. ISCPSecureQuery::GetDataDemands and then ISCPSecureQuery::ExamineData must be called, in that order.
WMDM_E_MAC_CHECK_FAILED
The message authentication code is not valid.
WMDM_E_NORIGHTS
The caller does not have the rights required to perform the requested operation.
E_INVALIDARG
A parameter is invalid or is a NULL pointer.
E_FAIL
An unspecified error occurred.

Remarks

This method is identical to ISCPSecureQuery::GetRights except that the parameters passed to this method are not encrypted. Consequently this method is more efficient.

Requirements

Requirement Value
Target Platform Windows
Header mswmdm.h
Library Mssachlp.lib

See also

ISCPSecureQuery3 Interface

ISCPSecureQuery::GetRights

IWMDMStorageGlobals Interface

WMDMRIGHTS