[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[no subject]
From: |
bddebian |
Subject: |
|
Date: |
Fri, 27 Jun 2003 17:23:07 -0400 |
Damn webmail client, didn't get the attachment..
Barry deFreese
GNU Hacker wannabe..
--- fwd.c 1999-05-01 18:11:51.000000000 -0700
+++ fwdnew.c 2003-06-27 05:59:25.000000000 -0700
@@ -25,20 +25,59 @@
#include <error.h>
#include <stdio.h>
#include <hurd/fshelp.h>
+#include <argp.h>
+#include <version.h>
+
+const char *argp_program_version = STANDARD_HURD_VERSION (fwd);
+static char doc[] = "fwd -- A translator to start up a central translation
server";
+static char args_doc[] = "SERVER [TRANS_NAME [TRANS_ARG...]]\n";
+
+static struct argp_option options[] = {
+ {0,0,0,0,0,0}
+};
+
+struct arguments
+{
+ char *server; /* SERVER arg */
+ char **translator; /* TRANS and args */
+};
+
+static error_t
+parse_opt (int key, char *arg, struct argp_state *state)
+{
+ struct arguments *arguments = state->input;
+
+ switch (key)
+ {
+ case ARGP_KEY_NO_ARGS:
+ argp_usage (state);
+ break;
+
+ case ARGP_KEY_ARG:
+ arguments->server = arg;
+ arguments->translator = &state->argv[state->next];
+ state->next = state->argc;
+ break;
+
+ default:
+ return ARGP_ERR_UNKNOWN;
+ };
+ return 0;
+}
+
+static struct argp argp = { options, parse_opt, args_doc, doc, 0, 0, 0 };
+
int
main (int argc, char **argv)
{
+ struct arguments arguments;
+
+ argp_parse (&argp, argc, argv, 0, 0, &arguments);
+
error_t err;
mach_port_t bootstrap;
- if (argc < 2 || *argv[1] == '-')
- {
- fprintf (stderr, "Usage: %s SERVER [TRANS_NAME [TRANS_ARG...]]\n",
- program_invocation_name);
- return 1;
- }
-
task_get_bootstrap_port (mach_task_self (), &bootstrap);
if (bootstrap == MACH_PORT_NULL)
error (2, 0, "must be started as a translator");
- [no subject],
bddebian <=
- Re:, Alfred M. Szmidt, 2003/06/27
- Re:, M. Gerards, 2003/06/28