VirtualBox

source: vbox/trunk/src/libs/libtpms-0.9.0/src/tpm12/tpm_nvram_const.h@ 91612

最後變更 在這個檔案從91612是 91612,由 vboxsync 提交於 3 年 前

src/libs: Export libtpms-0.9.0, bugref:10078

檔案大小: 4.6 KB
 
1/********************************************************************************/
2/* */
3/* NVRAM Constants */
4/* Written by Ken Goldman */
5/* IBM Thomas J. Watson Research Center */
6/* $Id: tpm_nvram_const.h 4528 2011-03-29 22:16:28Z kgoldman $ */
7/* */
8/* (c) Copyright IBM Corporation 2006, 2010. */
9/* */
10/* All rights reserved. */
11/* */
12/* Redistribution and use in source and binary forms, with or without */
13/* modification, are permitted provided that the following conditions are */
14/* met: */
15/* */
16/* Redistributions of source code must retain the above copyright notice, */
17/* this list of conditions and the following disclaimer. */
18/* */
19/* Redistributions in binary form must reproduce the above copyright */
20/* notice, this list of conditions and the following disclaimer in the */
21/* documentation and/or other materials provided with the distribution. */
22/* */
23/* Neither the names of the IBM Corporation nor the names of its */
24/* contributors may be used to endorse or promote products derived from */
25/* this software without specific prior written permission. */
26/* */
27/* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS */
28/* "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT */
29/* LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR */
30/* A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT */
31/* HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, */
32/* SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT */
33/* LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, */
34/* DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY */
35/* THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT */
36/* (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE */
37/* OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */
38/********************************************************************************/
39
40#ifndef TPM_NVRAM_CONST_H
41#define TPM_NVRAM_CONST_H
42
43/*
44 These are implementation specific constants
45*/
46
47/*
48 TPMS_MAX defines the maximum number of TPM instances.
49*/
50
51#define TPMS_MAX 1
52
53/*
54 NVRAM storage directory path
55*/
56
57
58#ifdef TPM_NV_DISK
59/* TPM_NV_DISK uses the TPM_PATH environment variable */
60#endif
61
62/* Defines the maximum size of the NV defined space, the NV indexes created by TPM_NV_DefineSpace.
63
64 The PC Client requires 2048 bytes. There is at least (currently) 6 bytes of overhead, a tag and
65 a count.
66*/
67
68#ifndef TPM_MAX_NV_DEFINED_SIZE
69#define TPM_MAX_NV_DEFINED_SIZE 2100
70#endif
71
72/* TPM_MAX_NV_SPACE defines the maximum NV space for non-volatile state.
73
74 It does not include the area used for TPM_SaveState.
75
76 See TPM_OWNER_EVICT_KEY_HANDLES, TPM_MIN_COUNTERS, TPM_NUM_FAMILY_TABLE_ENTRY_MIN,
77 TPM_NUM_DELEGATE_TABLE_ENTRY_MIN, etc. and the platform specific requirements for NV defined
78 space.
79*/
80
81#ifndef TPM_MAX_NV_SPACE
82
83
84
85#ifdef TPM_NV_DISK
86#define TPM_MAX_NV_SPACE 100000 /* arbitrary value */
87#endif
88
89#endif /* TPM_MAX_NV_SPACE */
90
91#ifndef TPM_MAX_NV_SPACE
92#error "TPM_MAX_NV_SPACE is not defined"
93#endif
94
95/* TPM_MAX_SAVESTATE_SPACE defines the maximum NV space for TPM saved state.
96
97 It is used by TPM_SaveState
98
99 NOTE This macro is based on the maximum number of loaded keys and session. For example, 3 loaded
100 keys, 3 OSAP sessions, and 1 transport session consumes about 2500 bytes.
101
102 See TPM_KEY_HANDLES, TPM_NUM_PCR, TPM_MIN_AUTH_SESSIONS, TPM_MIN_TRANS_SESSIONS,
103 TPM_MIN_DAA_SESSIONS, TPM_MIN_SESSION_LIST, etc.
104*/
105
106#ifndef TPM_MAX_SAVESTATE_SPACE
107
108
109
110#ifdef TPM_NV_DISK
111#define TPM_MAX_SAVESTATE_SPACE 100000 /* arbitrary value */
112#endif
113
114#endif /* TPM_MAX_SAVESTATE_SPACE */
115
116#ifndef TPM_MAX_SAVESTATE_SPACE
117#error "TPM_MAX_SAVESTATE_SPACE is not defined"
118#endif
119
120/* TPM_MAX_VOLATILESTATE_SPACE defines the maximum NV space for TPM volatile state.
121
122 It is used for applications that save and restore the entire TPM volatile is a non-standard way.
123*/
124
125#ifndef TPM_MAX_VOLATILESTATE_SPACE
126
127
128#ifdef TPM_NV_DISK
129#define TPM_MAX_VOLATILESTATE_SPACE 524288 /* arbitrary value */
130#endif
131
132#endif /* TPM_MAX_VOLATILESTATE_SPACE */
133
134#ifndef TPM_MAX_VOLATILESTATE_SPACE
135#error "TPM_MAX_VOLATILESTATE_SPACE is not defined"
136#endif
137
138#endif
注意: 瀏覽 TracBrowser 來幫助您使用儲存庫瀏覽器

© 2025 Oracle Support Privacy / Do Not Sell My Info Terms of Use Trademark Policy Automated Access Etiquette