[PATCH v1.3 2/4] key: add tpm_send command

Previous message: [thread] [date] [author]
Next message: [thread] [date] [author]
From: Mimi Zohar
Date: Wednesday, November 10, 2010 - 8:51 am

Add internal kernel tpm_send() command used to seal/unseal keys.

Signed-off-by: David Safford <safford@watson.ibm.com>
Reviewd-by: Mimi Zohar <zohar@watson.ibm.com>
Acked-by: Rajiv Andrade <srajiv@linux.vnet.ibm.com>
Acked-by: Serge E. Hallyn <serge@hallyn.com>
---
 drivers/char/tpm/tpm.c |   17 +++++++++++++++++
 include/linux/tpm.h    |    3 +++
 2 files changed, 20 insertions(+), 0 deletions(-)

diff --git a/drivers/char/tpm/tpm.c b/drivers/char/tpm/tpm.c
index 7c41335..5987d9c 100644
--- a/drivers/char/tpm/tpm.c
+++ b/drivers/char/tpm/tpm.c
@@ -780,6 +780,23 @@ int tpm_pcr_extend(u32 chip_num, int pcr_idx, const u8 *hash)
 }
 EXPORT_SYMBOL_GPL(tpm_pcr_extend);
 
+int tpm_send(u32 chip_num, char *cmd, int buflen)
+{
+	struct tpm_chip *chip;
+	int rc;
+
+	chip = tpm_chip_find_get(chip_num);
+	if (chip == NULL)
+		return -ENODEV;
+
+	rc = transmit_cmd(chip, (struct tpm_cmd_t *)cmd, buflen,
+			  "attempting tpm_cmd");
+
+	module_put(chip->dev->driver->owner);
+	return rc;
+}
+EXPORT_SYMBOL_GPL(tpm_send);
+
 ssize_t tpm_show_pcrs(struct device *dev, struct device_attribute *attr,
 		      char *buf)
 {
diff --git a/include/linux/tpm.h b/include/linux/tpm.h
index ac5d1c1..a0ecaa9 100644
--- a/include/linux/tpm.h
+++ b/include/linux/tpm.h
@@ -31,6 +31,7 @@
 
 extern int tpm_pcr_read(u32 chip_num, int pcr_idx, u8 *res_buf);
 extern int tpm_pcr_extend(u32 chip_num, int pcr_idx, const u8 *hash);
+extern int tpm_send(u32 chip_num, char *cmd, int buflen);
 #else
 static inline int tpm_pcr_read(u32 chip_num, int pcr_idx, u8 *res_buf) {
 	return -ENODEV;
@@ -38,5 +39,7 @@ static inline int tpm_pcr_read(u32 chip_num, int pcr_idx, u8 *res_buf) {
 static inline int tpm_pcr_extend(u32 chip_num, int pcr_idx, const u8 *hash) {
 	return -ENODEV;
 }
+static inline int tpm_send(u32 chip_num, char *cmd, int buflen) {
+	return -ENODEV;
 #endif
 #endif
-- 
1.7.2.2

--
Previous message: [thread] [date] [author]
Next message: [thread] [date] [author]

Messages in current thread:
[PATCH v1.3 0/4] keys: trusted and encrypted keys, Mimi Zohar, (Wed Nov 10, 8:51 am)
[PATCH v1.3 2/4] key: add tpm_send command, Mimi Zohar, (Wed Nov 10, 8:51 am)
[PATCH v1.3 3/4] keys: add new trusted key-type, Mimi Zohar, (Wed Nov 10, 8:51 am)
[PATCH v1.3 4/4] keys: add new key-type encrypted, Mimi Zohar, (Wed Nov 10, 8:51 am)
Re: [PATCH v1.3 2/4] key: add tpm_send command, David Howells, (Thu Nov 11, 12:48 pm)
Re: [PATCH v1.3 3/4] keys: add new trusted key-type, David Howells, (Thu Nov 11, 2:57 pm)
Re: [PATCH v1.3 2/4] key: add tpm_send command, Mimi Zohar, (Thu Nov 11, 3:25 pm)
Re: [PATCH v1.3 3/4] keys: add new trusted key-type, David Safford, (Fri Nov 12, 5:58 am)
Re: [PATCH v1.3 2/4] key: add tpm_send command, David Howells, (Fri Nov 12, 7:11 am)
Re: [PATCH v1.3 2/4] key: add tpm_send command, David Safford, (Fri Nov 12, 7:48 am)
Re: [PATCH v1.3 3/4] keys: add new trusted key-type, David Howells, (Fri Nov 12, 9:52 am)
Re: [PATCH v1.3 3/4] keys: add new trusted key-type, David Safford, (Fri Nov 12, 10:39 am)
Re: [PATCH v1.3 3/4] keys: add new trusted key-type, David Howells, (Fri Nov 12, 11:36 am)
Re: [PATCH v1.3 4/4] keys: add new key-type encrypted, David Howells, (Fri Nov 12, 12:45 pm)
Re: [PATCH v1.3 4/4] keys: add new key-type encrypted, David Howells, (Fri Nov 12, 2:23 pm)
Re: [PATCH v1.3 2/4] key: add tpm_send command, Rajiv Andrade, (Fri Nov 12, 2:24 pm)
Re: [PATCH v1.3 2/4] key: add tpm_send command, David Safford, (Fri Nov 12, 3:06 pm)
Re: [PATCH v1.3 2/4] key: add tpm_send command, David Howells, (Fri Nov 12, 3:11 pm)
Re: [PATCH v1.3 4/4] keys: add new key-type encrypted, David Howells, (Mon Nov 15, 9:18 am)
Re: [PATCH v1.3 4/4] keys: add new key-type encrypted, Mimi Zohar, (Mon Nov 15, 12:35 pm)
Re: [PATCH v1.3 4/4] keys: add new key-type encrypted, David Howells, (Tue Nov 16, 7:08 am)
Re: [PATCH v1.3 4/4] keys: add new key-type encrypted, David Howells, (Tue Nov 16, 10:50 am)
Re: [PATCH v1.3 4/4] keys: add new key-type encrypted, Mimi Zohar, (Tue Nov 16, 11:54 am)
Re: [PATCH v1.3 4/4] keys: add new key-type encrypted, David Howells, (Tue Nov 16, 11:58 am)
Re: [PATCH v1.3 2/4] key: add tpm_send command, Rajiv Andrade, (Wed Nov 17, 6:12 am)