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
16struct 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
26struct 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