3
* Licensed Materials - Property of IBM
5
* trousers - An open source TCG Software Stack
7
* (C) Copyright International Business Machines Corp. 2004-2007
11
#ifndef _OBJ_ENCDATA_H_
12
#define _OBJ_ENCDATA_H_
14
#ifdef TSS_BUILD_ENCDATA_LIST
17
struct tr_encdata_obj {
18
TSS_HPOLICY usagePolicy;
19
UINT32 encryptedDataLength;
23
TPM_PCR_INFO_LONG infolong;
27
#ifdef TSS_BUILD_SEALX
33
void encdata_free(void *data);
34
TSS_BOOL obj_is_encdata(TSS_HOBJECT);
35
TSS_RESULT obj_encdata_set_policy(TSS_HKEY, TSS_HPOLICY);
36
TSS_RESULT obj_encdata_set_data(TSS_HENCDATA, UINT32, BYTE *);
37
TSS_RESULT obj_encdata_remove(TSS_HOBJECT, TSS_HCONTEXT);
38
TSS_RESULT obj_encdata_get_tsp_context(TSS_HENCDATA, TSS_HCONTEXT *);
39
TSS_RESULT obj_encdata_add(TSS_HCONTEXT, UINT32, TSS_HOBJECT *);
40
TSS_RESULT obj_encdata_get_data(TSS_HENCDATA, UINT32 *, BYTE **);
41
TSS_RESULT obj_encdata_get_pcr_selection(TSS_HENCDATA, TSS_FLAG, TSS_FLAG, UINT32 *, BYTE **);
42
TSS_RESULT obj_encdata_get_pcr_locality(TSS_HENCDATA, TSS_FLAG, UINT32 *);
43
TSS_RESULT obj_encdata_get_pcr_digest(TSS_HENCDATA, TSS_FLAG, TSS_FLAG, UINT32 *, BYTE **);
44
TSS_RESULT obj_encdata_set_pcr_info(TSS_HENCDATA, UINT32, BYTE *);
45
TSS_RESULT obj_encdata_get_policy(TSS_HENCDATA, UINT32, TSS_HPOLICY *);
46
void obj_encdata_remove_policy_refs(TSS_HPOLICY, TSS_HCONTEXT);
47
#ifdef TSS_BUILD_SEALX
48
TSS_RESULT obj_encdata_set_seal_protect_mode(TSS_HENCDATA, UINT32);
49
TSS_RESULT obj_encdata_get_seal_protect_mode(TSS_HENCDATA, UINT32 *);
53
#define ENCDATA_LIST_DECLARE struct obj_list encdata_list
54
#define ENCDATA_LIST_DECLARE_EXTERN extern struct obj_list encdata_list
55
#define ENCDATA_LIST_INIT() list_init(&encdata_list)
56
#define ENCDATA_LIST_CONNECT(a,b) obj_connectContext_list(&encdata_list, a, b)
57
#define ENCDATA_LIST_CLOSE(a) obj_list_close(&encdata_list, &encdata_free, a)
61
#define obj_is_encdata(a) FALSE
63
#define ENCDATA_LIST_DECLARE
64
#define ENCDATA_LIST_DECLARE_EXTERN
65
#define ENCDATA_LIST_INIT()
66
#define ENCDATA_LIST_CONNECT(a,b)
67
#define ENCDATA_LIST_CLOSE(a)