2010-04-23 Marcus Brinkmann <marcus@g10code.de>
[gnupg.git] / tools / symcryptrun.c
index fced86f..2ef6822 100644 (file)
@@ -74,7 +74,6 @@
 #ifdef HAVE_PTY_H
 #include <pty.h>
 #endif
-#include <utmp.h>
 #include <ctype.h>
 #ifdef HAVE_LOCALE_H
 #include <locale.h>
@@ -201,8 +200,8 @@ my_strusage (int level)
       break;
     case 13: p = VERSION; break;
     case 17: p = PRINTABLE_OS_NAME; break;
-    case 19: p = _("Please report bugs to <" PACKAGE_BUGREPORT ">.\n");
-      break;
+    case 19: p = _("Please report bugs to <@EMAIL@>.\n"); break;
+
     case 1:
     case 40: p = _("Usage: symcryptrun [options] (-h for help)");
       break;
@@ -424,46 +423,17 @@ confucius_get_pass (const char *cacheid, int again, int *canceled)
 {
   int err;
   char *pw;
-#ifdef ENABLE_NLS
-  char *orig_codeset = NULL;
-#endif
+  char *orig_codeset;
 
   if (canceled)
     *canceled = 0;
   
-#ifdef ENABLE_NLS
-  /* The Assuan agent protocol requires us to transmit utf-8 strings */
-  orig_codeset = bind_textdomain_codeset (PACKAGE_GT, NULL);
-#ifdef HAVE_LANGINFO_CODESET
-  if (!orig_codeset)
-    orig_codeset = nl_langinfo (CODESET);
-#endif
-  if (orig_codeset && !strcmp (orig_codeset, "UTF-8"))
-    orig_codeset = NULL;
-  if (orig_codeset)
-    {
-      /* We only switch when we are able to restore the codeset later. */
-      orig_codeset = xstrdup (orig_codeset);
-      if (!bind_textdomain_codeset (PACKAGE_GT, "utf-8"))
-        {
-         xfree (orig_codeset);
-         orig_codeset = NULL; 
-       }
-    }
-#endif
-
+  orig_codeset = i18n_switchto_utf8 ();
   pw = simple_pwquery (cacheid,
                        again ? _("does not match - try again"):NULL,
                        _("Passphrase:"), NULL, 0, &err);
   err = map_spwq_error (err);
-
-#ifdef ENABLE_NLS
-  if (orig_codeset)
-    {
-      bind_textdomain_codeset (PACKAGE_GT, orig_codeset);
-      xfree (orig_codeset);
-    }
-#endif
+  i18n_switchback (orig_codeset);
 
   if (!pw)
     {
@@ -913,9 +883,8 @@ main (int argc, char **argv)
   log_set_prefix ("symcryptrun", 1);
 
   /* Make sure that our subsystems are ready.  */
-  init_common_subsystems ();
-
   i18n_init();
+  init_common_subsystems (&argc, &argv);
 
   opt.homedir = default_homedir ();