On Tue, Dec 15, 2009 at 09:47:05AM +0100, Jim Meyering wrote: > Without this, and with updated gnulib, "make syntax-check" > would fail, complaining about exit(1), exit(0), exit(77). > It's no big deal, but slightly better for readability to use > EXIT_SUCCESS, EXIT_FAILURE, and the new, made-up/defined EXIT_AM_SKIP. > The only semantic change was to convert the "exit(2)" and "exit(3)" > in tests/conftest.c to "exit(EXIT_FAILURE);". That seems ok, since > the sole invoker of that test program cares only about success/failure, > and not about the precise exit code. > > >From 8dba638f597b50f295f3f9b5628002f39b16d776 Mon Sep 17 00:00:00 2001 > From: Jim Meyering <meyer...@redhat.com> > Date: Tue, 15 Dec 2009 09:43:29 +0100 > Subject: [PATCH] avoid calling exit with a constant; use EXIT_* instead > > This appeases a new gnulib-provided "syntax-check". > * daemon/libvirtd.c (main): Use EXIT_FAILURE, not 1. > * proxy/libvirt_proxy.c (main): Likewise, and EXIT_SUCCESS, not 0. > * tests/conftest.c (main): Likewise. > * tests/reconnect.c (main): Likewise. > * tests/testutils.h (EXIT_AM_SKIP): Define. > * tests/nodeinfotest.c (mymain): Use EXIT_AM_SKIP, not 77. > * tests/qemuargv2xmltest.c: Likewise. > * tests/qemuxml2xmltest.c: Likewise. > * tests/virshtest.c (mymain): Likewise. > --- > daemon/libvirtd.c | 2 +- > proxy/libvirt_proxy.c | 10 +++++----- > tests/conftest.c | 10 +++++----- > tests/nodeinfotest.c | 2 +- > tests/qemuargv2xmltest.c | 2 +- > tests/qemuxml2xmltest.c | 2 +- > tests/reconnect.c | 10 +++++----- > tests/testutils.h | 4 +++- > tests/virshtest.c | 2 +- > 9 files changed, 23 insertions(+), 21 deletions(-) > > diff --git a/daemon/libvirtd.c b/daemon/libvirtd.c > index de6fc27..281a46a 100644 > --- a/daemon/libvirtd.c > +++ b/daemon/libvirtd.c > @@ -3036,7 +3036,7 @@ int main(int argc, char **argv) { > default: > fprintf (stderr, "libvirtd: internal error: unknown flag: %c\n", > c); > - exit (1); > + exit (EXIT_FAILURE); > } > } > > diff --git a/proxy/libvirt_proxy.c b/proxy/libvirt_proxy.c > index e5298fd..375966c 100644 > --- a/proxy/libvirt_proxy.c > +++ b/proxy/libvirt_proxy.c > @@ -816,14 +816,14 @@ int main(int argc, char **argv) { > persist = 1; > } else { > usage(argv[0]); > - exit(1); > + exit(EXIT_FAILURE); > } > } > > > if (geteuid() != 0) { > fprintf(stderr, "%s must be run as root or suid\n", argv[0]); > - /* exit(1); */ > + /* exit(EXIT_FAILURE); */ > } > > /* > @@ -838,19 +838,19 @@ int main(int argc, char **argv) { > * failure. > */ > if (proxyListenUnixSocket(PROXY_SOCKET_PATH) < 0) > - exit(0); > + exit(EXIT_SUCCESS); > if (proxyInitXen() == 0) > proxyMainLoop(); > sleep(1); > proxyCloseUnixSocket(); > - exit(0); > + exit(EXIT_SUCCESS); > } > > #else /* WITHOUT_XEN */ > > int main(void) { > fprintf(stderr, "libvirt was compiled without Xen support\n"); > - exit(1); > + exit(EXIT_FAILURE); > } > > #endif /* WITH_XEN */ > diff --git a/tests/conftest.c b/tests/conftest.c > index d265de2..a7977bb 100644 > --- a/tests/conftest.c > +++ b/tests/conftest.c > @@ -15,23 +15,23 @@ int main(int argc, char **argv) { > > if (argc != 2) { > fprintf(stderr, "Usage: %s conf_file\n", argv[0]); > - exit(1); > + exit(EXIT_FAILURE); > } > > conf = virConfReadFile(argv[1], 0); > if (conf == NULL) { > fprintf(stderr, "Failed to process %s\n", argv[1]); > - exit(2); > + exit(EXIT_FAILURE); > } > ret = virConfWriteMem(&buffer[0], &len, conf); > if (ret < 0) { > fprintf(stderr, "Failed to serialize %s back\n", argv[1]); > - exit(3); > + exit(EXIT_FAILURE); > } > virConfFree(conf); > if (fwrite(buffer, 1, len, stdout) != len) { > fprintf(stderr, "Write failed: %s\n", strerror (errno)); > - exit(1); > + exit(EXIT_FAILURE); > } > - exit(0); > + exit(EXIT_SUCCESS); > } > diff --git a/tests/nodeinfotest.c b/tests/nodeinfotest.c > index 608a056..4cb248a 100644 > --- a/tests/nodeinfotest.c > +++ b/tests/nodeinfotest.c > @@ -15,7 +15,7 @@ > static int > mymain(int argc ATTRIBUTE_UNUSED, char **argv ATTRIBUTE_UNUSED) > { > - exit (77); /* means 'test skipped' for automake */ > + exit (EXIT_AM_SKIP); > } > > #else > diff --git a/tests/qemuargv2xmltest.c b/tests/qemuargv2xmltest.c > index 5602df0..7f62bac 100644 > --- a/tests/qemuargv2xmltest.c > +++ b/tests/qemuargv2xmltest.c > @@ -232,6 +232,6 @@ VIRT_TEST_MAIN(mymain) > > #else > > -int main (void) { return (77); /* means 'test skipped' for automake */ } > +int main (void) { return (EXIT_AM_SKIP); } > > #endif /* WITH_QEMU */ > diff --git a/tests/qemuxml2xmltest.c b/tests/qemuxml2xmltest.c > index 793900c..e5900a2 100644 > --- a/tests/qemuxml2xmltest.c > +++ b/tests/qemuxml2xmltest.c > @@ -146,6 +146,6 @@ VIRT_TEST_MAIN(mymain) > > #else > > -int main (void) { exit (77); /* means 'test skipped' to automake */ } > +int main (void) { exit (EXIT_AM_SKIP); } > > #endif /* WITH_QEMU */ > diff --git a/tests/reconnect.c b/tests/reconnect.c > index 33af2cc..63877fc 100644 > --- a/tests/reconnect.c > +++ b/tests/reconnect.c > @@ -24,12 +24,12 @@ int main(void) { > } > if (conn == NULL) { > fprintf(stderr, "First virConnectOpen() failed\n"); > - exit(1); > + exit(EXIT_FAILURE); > } > dom = virDomainLookupByID(conn, id); > if (dom == NULL) { > fprintf(stderr, "First lookup for domain %d failed\n", id); > - exit(1); > + exit(EXIT_FAILURE); > } > virDomainFree(dom); > virConnectClose(conn); > @@ -39,16 +39,16 @@ int main(void) { > conn = virConnectOpen(NULL); > if (conn == NULL) { > fprintf(stderr, "Second virConnectOpen() failed\n"); > - exit(1); > + exit(EXIT_FAILURE); > } > dom = virDomainLookupByID(conn, id); > if (dom == NULL) { > fprintf(stderr, "Second lookup for domain %d failed\n", id); > - exit(1); > + exit(EXIT_FAILURE); > } > virDomainFree(dom); > virConnectClose(conn); > printf("OK\n"); > - exit(0); > + exit(EXIT_SUCCESS); > > } > diff --git a/tests/testutils.h b/tests/testutils.h > index aef1179..e5d5750 100644 > --- a/tests/testutils.h > +++ b/tests/testutils.h > @@ -1,7 +1,7 @@ > /* > * utils.c: test utils > * > - * Copyright (C) 2005, 2008 Red Hat, Inc. > + * Copyright (C) 2005, 2008-2009 Red Hat, Inc. > * > * See COPYING.LIB for the License of this software > * > @@ -13,6 +13,8 @@ > > #include <stdio.h> > > +#define EXIT_AM_SKIP 77 /* tell Automake we're skipping a test */ > + > double virtTestCountAverage(double *items, > int nitems); > > diff --git a/tests/virshtest.c b/tests/virshtest.c > index ef760e2..ad3e2fc 100644 > --- a/tests/virshtest.c > +++ b/tests/virshtest.c > @@ -231,7 +231,7 @@ mymain(int argc, char **argv) > abs_srcdir = getcwd(cwd, sizeof(cwd)); > > #ifdef WIN32 > - exit (77); /* means 'test skipped' for automake */ > + exit (EXIT_AM_SKIP); > #endif > > snprintf(buffer, PATH_MAX-1, > "test://%s/../examples/xml/test/testnode.xml", abs_srcdir); > -- > 1.6.6.rc2.275.g51e2d
ACK, thanks ! Daniel -- Daniel Veillard | libxml Gnome XML XSLT toolkit http://xmlsoft.org/ dan...@veillard.com | Rpmfind RPM search engine http://rpmfind.net/ http://veillard.com/ | virtualization library http://libvirt.org/ -- Libvir-list mailing list Libvir-list@redhat.com https://www.redhat.com/mailman/listinfo/libvir-list