Eric Blake wrote: > On 05/20/2010 02:02 AM, Jim Meyering wrote: >> +++ b/daemon/libvirtd.c >> @@ -484,8 +484,8 @@ static int daemonForkIntoBackground(void) { >> >> if (ret == 1 && status != 0) { >> fprintf(stderr, >> - "error: %s. Check /var/log/messages or run without " >> - "--daemon for more info.\n", >> + _("error: %s. Check /var/log/messages or run without " >> + "--daemon for more info.\n"), > > Should we also do a followup that passes argv[0] to this method, so that > the error message can start with the program name? Might as well. patch below. >> virDaemonErrTypeToString(status)); >> } >> _exit(ret == 1 && status == 0 ? 0 : 1); >> @@ -2963,7 +2963,7 @@ static void >> usage (const char *argv0) >> { >> fprintf (stderr, >> - "\n\ >> + _("\n\ >> Usage:\n\ >> %s [options]\n\ > > As is the case in usage()? > >> + (REMOTE_PID_FILE[0] != '\0' >> + ? REMOTE_PID_FILE >> + : "(disabled in ./configure)")); > > Missed a string. This should be _("(disabled in ./configure)"). Thanks. Fixed in the v2 below. >> default: >> - fprintf (stderr, "libvirtd: internal error: unknown flag: %c\n", >> + fprintf (stderr, _("libvirtd: internal error: unknown flag: %c\n"), > > And here, should we be using %s/argv[0] instead of hard-coding the name > "libvirtd"? Yes. >From c5df9b5d7e29234b43d07f998971e4f61e24d0f1 Mon Sep 17 00:00:00 2001 From: Jim Meyering <meyering@xxxxxxxxxx> Date: Thu, 20 May 2010 10:01:32 +0200 Subject: [PATCH v2 1/2] libvirtd: mark strings for translation, including --help output * daemon/libvirtd.c (daemonForkIntoBackground, main): Mark strings for translation. (usage): Rework --help so that it is translatable, replacing each embedded, configuration-dependent, macro with an `%s'. libvirtd: don't ignore virInitialize failure * daemon/libvirtd.c (main): Diagnose virInitialize failure and exit nonzero. --- daemon/libvirtd.c | 36 +++++++++++++++++++++--------------- 1 files changed, 21 insertions(+), 15 deletions(-) diff --git a/daemon/libvirtd.c b/daemon/libvirtd.c index aac2d08..be28165 100644 --- a/daemon/libvirtd.c +++ b/daemon/libvirtd.c @@ -484,8 +484,8 @@ static int daemonForkIntoBackground(void) { if (ret == 1 && status != 0) { fprintf(stderr, - "error: %s. Check /var/log/messages or run without " - "--daemon for more info.\n", + _("error: %s. Check /var/log/messages or run without " + "--daemon for more info.\n"), virDaemonErrTypeToString(status)); } _exit(ret == 1 && status == 0 ? 0 : 1); @@ -2963,7 +2963,7 @@ static void usage (const char *argv0) { fprintf (stderr, - "\n\ + _("\n\ Usage:\n\ %s [options]\n\ \n\ @@ -2981,27 +2981,33 @@ libvirt management daemon:\n\ Default paths:\n\ \n\ Configuration file (unless overridden by -f):\n\ - " SYSCONF_DIR "/libvirt/libvirtd.conf\n\ + %s/libvirt/libvirtd.conf\n\ \n\ Sockets (as root):\n\ - " LOCAL_STATE_DIR "/run/libvirt/libvirt-sock\n\ - " LOCAL_STATE_DIR "/run/libvirt/libvirt-sock-ro\n\ + %s/run/libvirt/libvirt-sock\n\ + %s/run/libvirt/libvirt-sock-ro\n\ \n\ Sockets (as non-root):\n\ $HOME/.libvirt/libvirt-sock (in UNIX abstract namespace)\n\ \n\ TLS:\n\ - CA certificate: " LIBVIRT_CACERT "\n\ - Server certificate: " LIBVIRT_SERVERCERT "\n\ - Server private key: " LIBVIRT_SERVERKEY "\n\ + CA certificate: %s\n\ + Server certificate: %s\n\ + Server private key: %s\n\ \n\ PID file (unless overridden by --pid-file):\n\ %s\n\ -\n", - argv0, - REMOTE_PID_FILE[0] != '\0' - ? REMOTE_PID_FILE - : "(disabled in ./configure)"); +\n"), + argv0, + SYSCONF_DIR, + LOCAL_STATE_DIR, + LOCAL_STATE_DIR, + LIBVIRT_CACERT, + LIBVIRT_SERVERCERT, + LIBVIRT_SERVERKEY, + (REMOTE_PID_FILE[0] != '\0' + ? REMOTE_PID_FILE + : _("(disabled in ./configure)"))); } enum { @@ -3083,7 +3089,7 @@ int main(int argc, char **argv) { return 2; default: - fprintf (stderr, "libvirtd: internal error: unknown flag: %c\n", + fprintf (stderr, _("libvirtd: internal error: unknown flag: %c\n"), c); exit (EXIT_FAILURE); } -- 1.7.1.262.g5ef3d >From 2405307cc444d0ecdd6aa2326f29aee4f2375b49 Mon Sep 17 00:00:00 2001 From: Jim Meyering <meyering@xxxxxxxxxx> Date: Thu, 20 May 2010 21:40:54 +0200 Subject: [PATCH 2/2] libvirtd: use argv[0] in place of hard-coded "libvirtd" in diagnostics * daemon/libvirtd.c (main): Use argv[0] in place of hard-coded "libvirtd" in two diagnostics. Suggested by Eric Blake. --- daemon/libvirtd.c | 6 +++--- 1 files changed, 3 insertions(+), 3 deletions(-) diff --git a/daemon/libvirtd.c b/daemon/libvirtd.c index be28165..f82e282 100644 --- a/daemon/libvirtd.c +++ b/daemon/libvirtd.c @@ -3035,7 +3035,7 @@ int main(int argc, char **argv) { }; if (virInitialize() < 0) { - fprintf (stderr, _("libvirtd: initialization failed\n")); + fprintf (stderr, _("%s: initialization failed\n"), argv[0]); exit (EXIT_FAILURE); } @@ -3089,8 +3089,8 @@ int main(int argc, char **argv) { return 2; default: - fprintf (stderr, _("libvirtd: internal error: unknown flag: %c\n"), - c); + fprintf (stderr, _("%s: internal error: unknown flag: %c\n"), + argv[0], c); exit (EXIT_FAILURE); } } -- 1.7.1.262.g5ef3d -- libvir-list mailing list libvir-list@xxxxxxxxxx https://www.redhat.com/mailman/listinfo/libvir-list