diff options
author | Stefan Berger | 2020-01-21 16:29:30 +0100 |
---|---|---|
committer | David Gibson | 2020-02-02 04:07:57 +0100 |
commit | 3688d73b6e2b7b3fb71ed9fb6e38fd05d39de05b (patch) | |
tree | 450e09bcea258c48610a813c63150e52e90090d8 /hw/tpm/tpm_util.c | |
parent | ppc/pnv: Add support for "hostboot" mode (diff) | |
download | qemu-3688d73b6e2b7b3fb71ed9fb6e38fd05d39de05b.tar.gz qemu-3688d73b6e2b7b3fb71ed9fb6e38fd05d39de05b.tar.xz qemu-3688d73b6e2b7b3fb71ed9fb6e38fd05d39de05b.zip |
tpm: Move tpm_tis_show_buffer to tpm_util.c
Signed-off-by: Stefan Berger <stefanb@linux.ibm.com>
Reviewed-by: Philippe Mathieu-Daudé <philmd@redhat.com>
Reviewed-by: David Gibson <david@gibson.dropbear.id.au>
Message-Id: <20200121152935.649898-2-stefanb@linux.ibm.com>
Signed-off-by: David Gibson <david@gibson.dropbear.id.au>
Diffstat (limited to 'hw/tpm/tpm_util.c')
-rw-r--r-- | hw/tpm/tpm_util.c | 25 |
1 files changed, 25 insertions, 0 deletions
diff --git a/hw/tpm/tpm_util.c b/hw/tpm/tpm_util.c index 62b091f0c0..c0a0f3d71f 100644 --- a/hw/tpm/tpm_util.c +++ b/hw/tpm/tpm_util.c @@ -350,3 +350,28 @@ void tpm_sized_buffer_reset(TPMSizedBuffer *tsb) tsb->buffer = NULL; tsb->size = 0; } + +void tpm_util_show_buffer(const unsigned char *buffer, + size_t buffer_size, const char *string) +{ + size_t len, i; + char *line_buffer, *p; + + len = MIN(tpm_cmd_get_size(buffer), buffer_size); + + /* + * allocate enough room for 3 chars per buffer entry plus a + * newline after every 16 chars and a final null terminator. + */ + line_buffer = g_malloc(len * 3 + (len / 16) + 1); + + for (i = 0, p = line_buffer; i < len; i++) { + if (i && !(i % 16)) { + p += sprintf(p, "\n"); + } + p += sprintf(p, "%.2X ", buffer[i]); + } + trace_tpm_util_show_buffer(string, len, line_buffer); + + g_free(line_buffer); +} |