From c02a69a98896f3b38d16e317aead9d164f7aae65 Mon Sep 17 00:00:00 2001 From: liangxin1300 Date: Mon, 17 Aug 2020 14:25:47 +0800 Subject: [PATCH] cfgtool: Return error when -i doesn't match Give error message and EXIT_FAILURE return code when -i option doesn't match. Signed-off-by: liangxin1300 Reviewed-by: Jan Friesse --- tools/corosync-cfgtool.c | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/tools/corosync-cfgtool.c b/tools/corosync-cfgtool.c index 48a35a70..3fbe3653 100644 --- a/tools/corosync-cfgtool.c +++ b/tools/corosync-cfgtool.c @@ -110,6 +110,7 @@ linkstatusget_do (char *interface_name, int brief) char stat_ch; char *str; totem_transport_t transport_number = TOTEM_TRANSPORT_KNET; + int no_match = 1; printf ("Printing link status.\n"); result = corosync_cfg_initialize (&handle, NULL); @@ -201,6 +202,7 @@ linkstatusget_do (char *interface_name, int brief) } if (show_current_iface) { + no_match = 0; printf ("LINK ID %s\n", interface_names[i]); printf ("\taddr\t= %s\n", cur_iface_name_space + 1); /* @@ -270,6 +272,12 @@ linkstatusget_do (char *interface_name, int brief) } } + /* No match for value of -i option */ + if (no_match) { + rc = EXIT_FAILURE; + fprintf(stderr, "Can't match any IP address or link id\n"); + } + for (i = 0; i < interface_count; i++) { free(interface_status[i]); free(interface_names[i]);