X-Git-Url: https://diplodocus.org/git/nmh/blobdiff_plain/cff8de7654cf393a494b01a587bd4d503d15a5e3..ef1ba39e8dae81091b6c3e73e72825ef6edea3c6:/uip/rcvpack.c diff --git a/uip/rcvpack.c b/uip/rcvpack.c index f9e5bbb6..df504a86 100644 --- a/uip/rcvpack.c +++ b/uip/rcvpack.c @@ -13,17 +13,19 @@ #include #include -static struct swit switches[] = { -#define MBOXSW 0 - { "mbox", 0 }, -#define MMDFSW 1 - { "mmdf", 0 }, -#define VERSIONSW 2 - { "version", 0 }, -#define HELPSW 3 - { "help", 0 }, - { NULL, 0 } -}; +#define RCVPACK_SWITCHES \ + X("mbox", 0, MBOXSW) \ + X("mmdf", 0, MMDFSW) \ + X("version", 0, VERSIONSW) \ + X("help", 0, HELPSW) \ + +#define X(sw, minchars, id) id, +DEFINE_SWITCH_ENUM(RCVPACK); +#undef X + +#define X(sw, minchars, id) { sw, minchars, id }, +DEFINE_SWITCH_ARRAY(RCVPACK, switches); +#undef X /* * default format in which to save messages @@ -38,15 +40,9 @@ main (int argc, char **argv) char *cp, *file = NULL, buf[BUFSIZ]; char **argp, **arguments; -#ifdef LOCALE - setlocale(LC_ALL, ""); -#endif - invo_name = r1bindex (argv[0], '/'); - - /* read user profile/context */ - context_read(); + if (nmh_init(argv[0], 2)) { return 1; } - mts_init (invo_name); + mts_init (); arguments = getarguments (invo_name, argc, argv, 1); argp = arguments;