aboutsummaryrefslogtreecommitdiffstats
path: root/tools/vtpm_manager
diff options
context:
space:
mode:
authorkfraser@localhost.localdomain <kfraser@localhost.localdomain>2006-07-25 11:30:30 +0100
committerkfraser@localhost.localdomain <kfraser@localhost.localdomain>2006-07-25 11:30:30 +0100
commit3fc05fdad86c751517c17df165be971dd7521105 (patch)
tree07f1b028e5b3809bfeee7f7126eb77c3f657b95b /tools/vtpm_manager
parent4be760385586732b6819c6814940768cd196981b (diff)
downloadxen-3fc05fdad86c751517c17df165be971dd7521105.tar.gz
xen-3fc05fdad86c751517c17df165be971dd7521105.tar.bz2
xen-3fc05fdad86c751517c17df165be971dd7521105.zip
VTPM_TOOLS: Updated vtpm for new release of tpm_emulator 0.4, and set
up easier tracking of the emulator. Also fixed a few minor bugs in the manager. Signed-off-by: Vincent Scarlata <vincent.r.scarlata@intel.com>
Diffstat (limited to 'tools/vtpm_manager')
-rw-r--r--tools/vtpm_manager/manager/dmictl.c3
-rw-r--r--tools/vtpm_manager/manager/vtpm_manager_handler.c3
-rw-r--r--tools/vtpm_manager/manager/vtpmd.c2
-rw-r--r--tools/vtpm_manager/tcs/tcs.c3
-rw-r--r--tools/vtpm_manager/tcs/transmit.c4
5 files changed, 9 insertions, 6 deletions
diff --git a/tools/vtpm_manager/manager/dmictl.c b/tools/vtpm_manager/manager/dmictl.c
index 588dcaf560..fee0cb9599 100644
--- a/tools/vtpm_manager/manager/dmictl.c
+++ b/tools/vtpm_manager/manager/dmictl.c
@@ -105,6 +105,9 @@ TPM_RESULT close_dmi(VTPM_DMI_RESOURCE *dmi_res) {
if (dmi_res == NULL)
return TPM_SUCCESS;
+ if (dmi_res->dmi_id == VTPM_CTL_DM)
+ return(TPM_BAD_PARAMETER);
+
TCS_CloseContext(dmi_res->TCSContext);
dmi_res->connected = FALSE;
diff --git a/tools/vtpm_manager/manager/vtpm_manager_handler.c b/tools/vtpm_manager/manager/vtpm_manager_handler.c
index 3ac0928749..9226a4a9b6 100644
--- a/tools/vtpm_manager/manager/vtpm_manager_handler.c
+++ b/tools/vtpm_manager/manager/vtpm_manager_handler.c
@@ -166,7 +166,8 @@ TPM_RESULT VTPM_Manager_Handler( vtpm_ipc_handle_t *tx_ipc_h,
(!dmi_res->connected) ) {
vtpmhandlerlogerror(VTPM_LOG_VTPM, "Attempted access to non-existent or disconnected DMI %d. Aborting...\n", dmi);
status = TPM_BAD_PARAMETER;
- goto abort_with_error;
+ // We have no one to reply to, they don't exist.
+ goto abort_command;
}
if (tag == VTPM_TAG_REQ) {
diff --git a/tools/vtpm_manager/manager/vtpmd.c b/tools/vtpm_manager/manager/vtpmd.c
index 8aec9769f8..fa1204ba1a 100644
--- a/tools/vtpm_manager/manager/vtpmd.c
+++ b/tools/vtpm_manager/manager/vtpmd.c
@@ -172,7 +172,7 @@ TPM_RESULT VTPM_New_DMI_Extra(VTPM_DMI_RESOURCE *dmi_res, BYTE startup_mode) {
} else if (pid == 0) {
switch (startup_mode) {
case TPM_ST_CLEAR:
- execl (TPM_EMULATOR_PATH, "vtmpd", "clear", dmi_id_str, NULL);
+ execl (TPM_EMULATOR_PATH, "vtpmd", "clear", dmi_id_str, NULL);
break;
case TPM_ST_STATE:
execl (TPM_EMULATOR_PATH, "vtpmd", "save", dmi_id_str, NULL);
diff --git a/tools/vtpm_manager/tcs/tcs.c b/tools/vtpm_manager/tcs/tcs.c
index 6ed019dd41..a711d1b57f 100644
--- a/tools/vtpm_manager/tcs/tcs.c
+++ b/tools/vtpm_manager/tcs/tcs.c
@@ -162,8 +162,7 @@ TPM_RESULT TCS_OpenContext(TCS_CONTEXT_HANDLE* hContext) { // out
vtpmloginfo(VTPM_LOG_TCS, "Calling TCS_OpenContext:\n");
- // hContext must point to a null memory context handle
- if(*hContext == HANDLE_NULL) {
+ if (hContext) {
CONTEXT_HANDLE* pContextHandle = (CONTEXT_HANDLE *) malloc(sizeof(CONTEXT_HANDLE));
if (pContextHandle == NULL)
return TPM_SIZE;
diff --git a/tools/vtpm_manager/tcs/transmit.c b/tools/vtpm_manager/tcs/transmit.c
index e994d91482..74bbdca585 100644
--- a/tools/vtpm_manager/tcs/transmit.c
+++ b/tools/vtpm_manager/tcs/transmit.c
@@ -49,8 +49,8 @@ static int g_tx_fd = -1; // the fd to the TPM
#define TPM_TX_FNAME "/dev/tpm0"
static int *g_rx_fdp = &g_tx_fd;
#else
- #define TPM_TX_FNAME "/tmp/tpm_in.fifo"
- #define TPM_RX_FNAME "/tmp/tpm_out.fifo"
+ #define TPM_TX_FNAME "/var/tpm/tpm_in.fifo"
+ #define TPM_RX_FNAME "/var/tpm/tpm_out.fifo"
static int g_rx_fd = -1;
static int *g_rx_fdp = &g_rx_fd; // the fd to the TPM
#endif