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_DAAISSUERKEY_H_
     12 #define _OBJ_DAAISSUERKEY_H_
     13 
     14 #ifdef TSS_BUILD_DAA
     15 
     16 /* structures */
     17 struct tr_daaissuerkey_obj {
     18 	UINT32 session_handle;
     19 	TPM_HANDLE tpm_handle;
     20 };
     21 
     22 /* prototypes */
     23 void       daaissuerkey_free(void *data);
     24 TSS_RESULT obj_daaissuerkey_add(TSS_HCONTEXT tspContext, TSS_HOBJECT *phObject);
     25 TSS_RESULT obj_daaissuerkey_remove(TSS_HDAA_ISSUER_KEY, TSS_HCONTEXT);
     26 TSS_BOOL   obj_is_daaissuerkey(TSS_HDAA_ISSUER_KEY);
     27 TSS_RESULT obj_daaissuerkey_get_tsp_context(TSS_HDAA_ISSUER_KEY, TSS_HCONTEXT *);
     28 TSS_RESULT obj_daaissuerkey_get_handle_tpm(TSS_HDAA_ISSUER_KEY, TPM_HANDLE *);
     29 TSS_RESULT obj_daaissuerkey_set_handle_tpm(TSS_HDAA_ISSUER_KEY, TPM_HANDLE);
     30 TSS_RESULT obj_daaissuerkey_get_session_handle(TSS_HDAA_ISSUER_KEY, UINT32 *);
     31 TSS_RESULT obj_daaissuerkey_set_session_handle(TSS_HDAA_ISSUER_KEY, UINT32);
     32 
     33 #define DAAISSUERKEY_LIST_DECLARE		struct obj_list daaissuerkey_list
     34 #define DAAISSUERKEY_LIST_DECLARE_EXTERN	extern struct obj_list daaissuerkey_list
     35 #define DAAISSUERKEY_LIST_INIT()		tspi_list_init(&daaissuerkey_list)
     36 #define DAAISSUERKEY_LIST_CONNECT(a,b)		obj_connectContext_list(&daaissuerkey_list, a, b)
     37 #define DAAISSUERKEY_LIST_CLOSE(a)		obj_list_close(&daaissuerkey_list, \
     38 							       &daaissuerkey_free, a)
     39 
     40 #else
     41 
     42 #define obj_is_daaissuerkey(a)	FALSE
     43 
     44 #define DAAISSUERKEY_LIST_DECLARE
     45 #define DAAISSUERKEY_LIST_DECLARE_EXTERN
     46 #define DAAISSUERKEY_LIST_INIT()
     47 #define DAAISSUERKEY_LIST_CONNECT(a,b)
     48 #define DAAISSUERKEY_LIST_CLOSE(a)
     49 
     50 #endif
     51 
     52 #endif
     53