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
8  *
9  */
10 
11 #ifndef _TCS_CONTEXT_H_
12 #define _TCS_CONTEXT_H_
13 
14 #include "threads.h"
15 
16 struct keys_loaded
17 {
18 	TCS_KEY_HANDLE key_handle;
19 	struct keys_loaded *next;
20 };
21 
22 #define TSS_CONTEXT_FLAG_TRANSPORT_EXCLUSIVE	0x1
23 #define TSS_CONTEXT_FLAG_TRANSPORT_ENCRYPTED	0x2
24 #define TSS_CONTEXT_FLAG_TRANSPORT_ENABLED	0x4
25 
26 struct tcs_context {
27 	TSS_FLAG flags;
28 	TPM_TRANSHANDLE transHandle;
29 	TCS_CONTEXT_HANDLE handle;
30 	COND_VAR cond; /* used in waiting for an auth ctx to become available */
31 	struct keys_loaded *keys;
32 	struct tcs_context *next;
33 };
34 
35 #endif
36 
37