summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorBenoît Dejean <bdejean@src.gnome.org>2006-04-02 09:09:41 +0000
committerBenoît Dejean <bdejean@src.gnome.org>2006-04-02 09:09:41 +0000
commita7cf016d67ac43099ed674fd287bac629d724715 (patch)
treed79c1ef9508d15a19132f1fd0b06686c47b47752 /src
parentec7922c6bd90815d619f6cf0c39c7b8b7aaee086 (diff)
downloadlibgtop-a7cf016d67ac43099ed674fd287bac629d724715.tar.gz
Reverted. See #336837
* configure.in: * src/daemon/daemon.h: * src/daemon/gnuserv.c: (main): Reverted. See #336837
Diffstat (limited to 'src')
-rw-r--r--src/daemon/daemon.h4
-rw-r--r--src/daemon/gnuserv.c65
2 files changed, 37 insertions, 32 deletions
diff --git a/src/daemon/daemon.h b/src/daemon/daemon.h
index 21badd0f..a585b32c 100644
--- a/src/daemon/daemon.h
+++ b/src/daemon/daemon.h
@@ -71,8 +71,8 @@ int do_read (int s, void *ptr, size_t total_size) G_GNUC_INTERNAL;
void syslog_message (int priority, const char *format, ...) G_GNUC_INTERNAL G_GNUC_PRINTF(2, 3);
void syslog_io_message (int priority, const char *format, ...) G_GNUC_INTERNAL G_GNUC_PRINTF(2, 3);
-extern gboolean enable_debug;
-extern gboolean verbose_output;
+extern int enable_debug;
+extern int verbose_output;
G_END_DECLS
diff --git a/src/daemon/gnuserv.c b/src/daemon/gnuserv.c
index 8243b871..ea61ded1 100644
--- a/src/daemon/gnuserv.c
+++ b/src/daemon/gnuserv.c
@@ -46,6 +46,7 @@
#include <glibtop/gnuserv.h>
#include <errno.h>
+#include <popt.h>
#include "daemon.h"
@@ -78,10 +79,10 @@ static Xauth *server_xauth = NULL;
#endif /* AUTH_MAGIC_COOKIE */
-gboolean enable_debug = FALSE;
-gboolean verbose_output = FALSE;
-static gboolean no_daemon = FALSE;
-static gboolean invoked_from_inetd = FALSE;
+int enable_debug = 0;
+int verbose_output = 0;
+static int no_daemon = 0;
+static int invoked_from_inetd = 0;
static int changed_uid = 0;
void
@@ -453,26 +454,27 @@ handle_signal (int sig)
exit (1);
}
-static const GOptionEntry options [] = {
- { "debug", 'd', 0, G_OPTION_ARG_NONE, &enable_debug,
- N_("Enable debugging"), NULL },
- { "verbose", 'v', 0, G_OPTION_ARG_NONE, &verbose_output,
- N_("Enable verbose output"), NULL },
- { "no-daemon", 'f', 0, G_OPTION_ARG_NONE, &no_daemon,
- N_("Don't fork into background"), NULL },
- { "inetd", 'i', 0, G_OPTION_ARG_NONE, &invoked_from_inetd,
- N_("Invoked from inetd"), NULL },
- { NULL }
+const struct poptOption popt_options [] = {
+ POPT_AUTOHELP
+ { "debug", 'd', POPT_ARG_NONE, &enable_debug, 0,
+ N_("Enable debugging"), N_("DEBUG") },
+ { "verbose", 'v', POPT_ARG_NONE, &verbose_output, 0,
+ N_("Enable verbose output"), N_("VERBOSE") },
+ { "no-daemon", 'f', POPT_ARG_NONE, &no_daemon, 0,
+ N_("Don't fork into background"), N_("NO-DAEMON") },
+ { "inetd", 'i', POPT_ARG_NONE, &invoked_from_inetd, 0,
+ N_("Invoked from inetd"), N_("INETD") },
+ { NULL, '\0', 0, NULL, 0, NULL, NULL }
};
int
-main (int argc, char **argv)
+main (int argc, const char **argv)
{
const unsigned method = GLIBTOP_METHOD_PIPE;
const unsigned long features = GLIBTOP_SYSDEPS_ALL;
glibtop *server = glibtop_global_server;
- GOptionContext *goption_context;
- GError *error = NULL;
+ poptContext context;
+ int nextopt;
int ils = -1; /* internet domain listen socket */
@@ -486,19 +488,22 @@ main (int argc, char **argv)
arg ? (arg + 1) : program_invocation_name;
}
- g_set_prgname (program_invocation_short_name);
- goption_context = g_option_context_new (NULL);
- g_option_context_add_main_entries (goption_context, options, NULL);
- g_option_context_parse (goption_context, &argc, &argv, &error);
- g_option_context_free (goption_context);
-
- if (error != NULL) {
- g_printerr ("%s\n", error->message);
- g_error_free (error);
- g_printerr (_("Run '%s --help' to see a full list of "
- "available command line options.\n"),
- program_invocation_name);
- exit(1);
+ context = poptGetContext ("libgtop-daemon", argc, argv,
+ popt_options, 0);
+
+ poptReadDefaultConfig (context, TRUE);
+
+ while ((nextopt = poptGetNextOpt (context)) > 0)
+ /* do nothing */ ;
+
+ if(nextopt != -1) {
+ printf (_("Error on option %s: %s.\n"
+ "Run '%s --help' to see a full list of "
+ "available command line options.\n"),
+ poptBadOption (context, 0),
+ poptStrerror (nextopt),
+ argv[0]);
+ exit(1);
}
if (enable_debug)