?? drmmemory.h
字號:
/*
// $Header: /I76/I76_Common/I76_Reference/Playcore/Nav_Clips/AviDrm/libDrmDecrypt/DrmMemory.h 2 2/15/04 7:41p Lotan $
// Copyright (c) DivXNetworks, Inc. http://www.divxnetworks.com
// All rights reserved.
//
// This software is the confidential and proprietary information of DivxNetworks
// Inc. ("Confidential Information"). You shall not disclose such Confidential
// Information and shall use it only in accordance with the terms of the license
// agreement you entered into with DivXNetworks, Inc.
*/
/*
These functions and structures allow representation and manipulation
of the memory used by the ADP DRM.
*/
#ifndef DRMMEMORY_H_INCLUDE
#define DRMMEMORY_H_INCLUDE
#include "Config.h" // Global Configuration - do not remove!
#ifdef AVI_DRM_SUPPORT
#include "Playcore\Nav_Clips\AviDrm\LibDrmCommon\Portable.h" /* uint8_t, uint16_t */
#include "Playcore\Nav_Clips\AviDrm\LibDrmCommon\DrmSizes.h"
typedef struct OwnerSlotStruct
{
uint8_t guard[OWNER_GUARD_BYTES];
uint8_t key[KEY_SIZE_BYTES];
uint8_t userId[OWNER_USER_ID_BYTES];
} OwnerSlot;
typedef struct PlaySlotStruct
{
uint8_t serialNumber[SLOT_SERIAL_NUMBER_BYTES];
uint8_t counter;
} PlaySlot;
typedef struct DrmMemoryStruct
{
OwnerSlot owner;
PlaySlot slots[TOTAL_PLAY_SLOTS];
} DrmMemory;
typedef struct DrmPackedMemoryStruct
{
uint8_t packed[PACKED_ALLOCATION_BYTES];
} DrmPackedMemory;
#ifdef __cplusplus
extern "C" {
#endif
uint8_t packDrmMemory(DrmMemory memory, DrmPackedMemory *packedMemory);
uint8_t unpackDrmMemory(DrmPackedMemory packedMemory, DrmMemory *memory);
uint8_t packLogic(DrmMemory *memory, DrmPackedMemory *packedMemory, uint8_t direction);
uint8_t randomizeGuard(DrmMemory *memory);
uint8_t loadDrmMemory(DrmMemory *memory);
uint8_t saveDrmMemory(DrmMemory *memory);
#ifdef __cplusplus
};
#endif
#endif // AVI_DRM_SUPPORT
#endif DRMMEMORY_H_INCLUDE
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -