Home | History | Annotate | Line # | Download | only in include
      1 
      2 /*
      3  * Licensed Materials - Property of IBM
      4  *
      5  * trousers - An open source TCG Software Stack
      6  *
      7  * (C) Copyright International Business Machines Corp. 2004-2007
      8  *
      9  */
     10 
     11 #ifndef _OBJ_DAAARAKEY_H_
     12 #define _OBJ_DAAARAKEY_H_
     13 
     14 #ifdef TSS_BUILD_DAA
     15 
     16 /* structures */
     17 struct tr_daaarakey_obj {
     18 	UINT32 session_handle;
     19 	TPM_HANDLE tpm_handle;
     20 };
     21 
     22 /* prototypes */
     23 void       daaarakey_free(void *data);
     24 TSS_RESULT obj_daaarakey_add(TSS_HCONTEXT tspContext, TSS_HOBJECT *phObject);
     25 TSS_RESULT obj_daaarakey_remove(TSS_HDAA_ISSUER_KEY, TSS_HCONTEXT);
     26 TSS_BOOL   obj_is_daaarakey(TSS_HDAA_ISSUER_KEY);
     27 TSS_RESULT obj_daaarakey_get_tsp_context(TSS_HDAA_ISSUER_KEY, TSS_HCONTEXT *);
     28 TSS_RESULT obj_daaarakey_get_handle_tpm(TSS_HDAA_ISSUER_KEY, TPM_HANDLE *);
     29 TSS_RESULT obj_daaarakey_set_handle_tpm(TSS_HDAA_ISSUER_KEY, TPM_HANDLE);
     30 TSS_RESULT obj_daaarakey_get_session_handle(TSS_HDAA_ISSUER_KEY, UINT32 *);
     31 TSS_RESULT obj_daaarakey_set_session_handle(TSS_HDAA_ISSUER_KEY, UINT32);
     32 
     33 #define DAAARAKEY_LIST_DECLARE		struct obj_list daaarakey_list
     34 #define DAAARAKEY_LIST_DECLARE_EXTERN	extern struct obj_list daaarakey_list
     35 #define DAAARAKEY_LIST_INIT()		tspi_list_init(&daaarakey_list)
     36 #define DAAARAKEY_LIST_CONNECT(a,b)	obj_connectContext_list(&daaarakey_list, a, b)
     37 #define DAAARAKEY_LIST_CLOSE(a)		obj_list_close(&daaarakey_list, &daaarakey_free, a)
     38 
     39 #else
     40 
     41 #define obj_is_daaarakey(a)	FALSE
     42 
     43 #define DAAARAKEY_LIST_DECLARE
     44 #define DAAARAKEY_LIST_DECLARE_EXTERN
     45 #define DAAARAKEY_LIST_INIT()
     46 #define DAAARAKEY_LIST_CONNECT(a,b)
     47 #define DAAARAKEY_LIST_CLOSE(a)
     48 
     49 #endif
     50 
     51 #endif
     52