[PATCH 3/4] examples/dommigrate: Make retval portable

Michal Privoznik mprivozn at redhat.com
Fri Nov 12 15:22:34 UTC 2021


Currently, the dommigrate example returns 0 or 1 for success or
failure state, respectively. Except for a few cases where it
forgot to change the @ret variable just before jumping onto the
'cleanup' label. Making the code follow our usual pattern
(initialize @ret to an error value and set it to success value
only at the end) fixes those cases. Also, using EXIT_SUCCESS and
EXIT_FAILURE is more portable (even though on my system they are
just an alias to values the example already uses).

Signed-off-by: Michal Privoznik <mprivozn at redhat.com>
---
 examples/c/domain/dommigrate.c | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/examples/c/domain/dommigrate.c b/examples/c/domain/dommigrate.c
index b1641efb9a..3d32ada6d3 100644
--- a/examples/c/domain/dommigrate.c
+++ b/examples/c/domain/dommigrate.c
@@ -36,7 +36,7 @@ int
 main(int argc, char *argv[])
 {
     char *src_uri, *dst_uri, *domname;
-    int ret = 0;
+    int ret = EXIT_FAILURE;
     virConnectPtr conn = NULL;
     virDomainPtr dom = NULL;
 
@@ -52,7 +52,6 @@ main(int argc, char *argv[])
     printf("Attempting to connect to the source hypervisor...\n");
     conn = virConnectOpenAuth(src_uri, virConnectAuthPtrDefault, 0);
     if (!conn) {
-        ret = 1;
         fprintf(stderr, "No connection to the source hypervisor: %s.\n",
                 virGetLastErrorMessage());
         goto out;
@@ -74,6 +73,7 @@ main(int argc, char *argv[])
     }
 
     printf("Migration finished with success.\n");
+    ret = EXIT_SUCCESS;
 
  cleanup:
     if (dom != NULL)
-- 
2.32.0




More information about the libvir-list mailing list