On 7/23/20 8:49 AM, Philippe Mathieu-Daudé wrote:
On 7/23/20 1:58 PM, Markus Armbruster wrote:
Help is a bit awkward when no TPM types are built into QEMU:

     $ upstream-qemu -tpmdev nonexistent,id=tpm0
     upstream-qemu: -tpmdev nonexistent,id=tpm0: Parameter 'type' expects a TPM 
backend type
     Supported TPM types (choose only one):

Improve to

     upstream-qemu: -tpmdev nonexistent,id=tpm0: Parameter 'type' expects a TPM 
backend type
     No TPM backend types are available

Signed-off-by: Markus Armbruster <arm...@redhat.com>
Reviewed-by: Philippe Mathieu-Daudé <phi...@redhat.com>


Reviewed-by: Stefan Berger <stef...@linux.ibm.com>



---
  tpm.c | 13 +++++++++----
  1 file changed, 9 insertions(+), 4 deletions(-)

diff --git a/tpm.c b/tpm.c
index f6045bb6da..cab206355a 100644
--- a/tpm.c
+++ b/tpm.c
@@ -47,18 +47,23 @@ tpm_be_find_by_type(enum TpmType type)
   */
  static void tpm_display_backend_drivers(void)
  {
+    bool got_one = false;
      int i;
- fprintf(stderr, "Supported TPM types (choose only one):\n");
-
      for (i = 0; i < TPM_TYPE__MAX; i++) {
          const TPMBackendClass *bc = tpm_be_find_by_type(i);
          if (!bc) {
              continue;
          }
-        fprintf(stderr, "%12s   %s\n", TpmType_str(i), bc->desc);
+        if (!got_one) {
+            error_printf("Supported TPM types (choose only one):\n");
+            got_one = true;
+        }
+        error_printf("%12s   %s\n", TpmType_str(i), bc->desc);
+    }
+    if (!got_one) {
+        error_printf("No TPM backend types are available\n");
      }
-    fprintf(stderr, "\n");
  }
/*



Reply via email to