Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(13)

Side by Side Diff: tpm/tpm_emulator.h

Issue 660204: Upgrade to tpm-emulator version 0.7. (Closed)
Patch Set: Created 10 years, 9 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
« no previous file with comments | « tpm/tpm_deprecated.c ('k') | tpm/tpm_emulator_extern.h » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 /* Software-Based Trusted Platform Module (TPM) Emulator for Linux 1 /* Software-based Trusted Platform Module (TPM) Emulator
2 * Copyright (C) 2004 Mario Strasser <mast@gmx.net>, 2 * Copyright (C) 2004-2010 Mario Strasser <mast@gmx.net>
3 * 3 *
4 * This module is free software; you can redistribute it and/or modify 4 * This module is free software; you can redistribute it and/or modify
5 * it under the terms of the GNU General Public License as published 5 * it under the terms of the GNU General Public License as published
6 * by the Free Software Foundation; either version 2 of the License, 6 * by the Free Software Foundation; either version 2 of the License,
7 * or (at your option) any later version. 7 * or (at your option) any later version.
8 * 8 *
9 * This module is distributed in the hope that it will be useful, 9 * This module is distributed in the hope that it will be useful,
10 * but WITHOUT ANY WARRANTY; without even the implied warranty of 10 * but WITHOUT ANY WARRANTY; without even the implied warranty of
11 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 11 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
12 * GNU General Public License for more details. 12 * GNU General Public License for more details.
13 * 13 *
14 * $Id$ 14 * $Id: tpm_emulator.h 426 2010-02-22 17:11:58Z mast $
15 */ 15 */
16 16
17 #ifndef _TPM_EMULATOR_H_ 17 #ifndef _TPM_EMULATOR_H_
18 #define _TPM_EMULATOR_H_ 18 #define _TPM_EMULATOR_H_
19 19
20 #include "config.h" 20 #include "config.h"
21 #include "tpm_emulator_extern.h" 21 #include "tpm_emulator_extern.h"
22 22
23 #define TPM_CMD_BUF_SIZE 4096
24
25 #define TPM_MANUFACTURER 0x4554485A /* 'ETHZ' */ 23 #define TPM_MANUFACTURER 0x4554485A /* 'ETHZ' */
26 24
27 /** 25 /**
26 * configuration flags
27 */
28 #define TPM_CONF_STRONG_PERSISTENCE 0x01
29 #define TPM_CONF_GENERATE_EK 0x02
30 #define TPM_CONF_GENERATE_SEED_DAA 0x04
31 #define TPM_CONF_USE_INTERNAL_PRNG 0x08
32 #define TPM_CONF_ALLOW_PRNG_STATE_SETTING 0x10
33 #define TPM_CONF_KEEP_PUBEK_READABLE 0x20
34
35 /**
28 * tpm_emulator_init - initialises and starts the TPM emulator 36 * tpm_emulator_init - initialises and starts the TPM emulator
29 * @startup: [in] startup mode 37 * @startup: [in] startup mode
38 * @conf: [in] tpm configuration flags
30 */ 39 */
31 void tpm_emulator_init(uint32_t startup); 40 void tpm_emulator_init(uint32_t startup, uint32_t conf);
32 41
33 /** 42 /**
34 * tpm_emulator_shutdown - shuts the TPM emulator down 43 * tpm_emulator_shutdown - shuts the TPM emulator down
35 */ 44 */
36 void tpm_emulator_shutdown(void); 45 void tpm_emulator_shutdown(void);
37 46
38 /** 47 /**
39 * tpm_handle_command - handles (i.e., executes) TPM commands 48 * tpm_handle_command - handles (i.e., executes) TPM commands
40 * @in: [in] incoming TPM command 49 * @in: [in] incoming TPM command
41 * @in_size: [in] total number of input bytes 50 * @in_size: [in] total number of input bytes
42 * @out: [inout] outgoing TPM result 51 * @out: [inout] outgoing TPM result
43 * @out_size: [inout] total number of output bytes 52 * @out_size: [inout] total number of output bytes
44 * @Returns: 0 on success, -1 otherwise 53 * @Returns: 0 on success, -1 otherwise
45 * 54 *
46 * Description: Handles (i.e., executes) TPM commands. The parameters 55 * Description: Handles (i.e., executes) TPM commands. The parameters
47 * out and out_size determine the output buffer and its capacity, 56 * out and out_size determine the output buffer and its capacity,
48 * respectively. If out is NULL, the required memory is allocated 57 * respectively. If out is NULL, the required memory is allocated
49 * internally and has to be released by means of tpm_free() after 58 * internally and has to be released by means of tpm_free() after
50 * its usage. In case of an error, all internally allocated memory 59 * its usage. In case of an error, all internally allocated memory
51 * is released and the the state of out and out_size is unspecified. 60 * is released and the the state of out and out_size is unspecified.
52 */ 61 */
53 int tpm_handle_command(const uint8_t *in, uint32_t in_size, uint8_t **out, uint3 2_t *out_size); 62 int tpm_handle_command(const uint8_t *in, uint32_t in_size, uint8_t **out, uint3 2_t *out_size);
54 63
55 #endif /* _TPM_EMULATOR_H_ */ 64 #endif /* _TPM_EMULATOR_H_ */
56 65
OLDNEW
« no previous file with comments | « tpm/tpm_deprecated.c ('k') | tpm/tpm_emulator_extern.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698