X-Git-Url: https://diplodocus.org/git/nmh/blobdiff_plain/1691e80890e5d8ba258c51c214a3e91880e1db2b..1c570cbefde061bf4aee1d0ab99bebb9fab40846:/uip/mhparam.c?ds=sidebyside diff --git a/uip/mhparam.c b/uip/mhparam.c index 1da25d31..c4b0af2e 100644 --- a/uip/mhparam.c +++ b/uip/mhparam.c @@ -5,7 +5,9 @@ * Originally contributed by * Jeffrey C Honig * - * $Id$ + * This code is Copyright (c) 2002, by the authors of nmh. See the + * COPYRIGHT file in the root directory of the nmh distribution for + * complete copyright information. */ #include @@ -14,23 +16,22 @@ extern char *mhlibdir; extern char *mhetcdir; char *sbackup = BACKUP_PREFIX; -char *slink = LINK; - -static struct swit switches[] = { -#define COMPSW 0 - { "components", 0 }, -#define NCOMPSW 1 - { "nocomponents", 0 }, -#define ALLSW 2 - { "all", 0 }, -#define VERSIONSW 3 - { "version", 0 }, -#define HELPSW 4 - { "help", 4 }, -#define DEBUGSW 5 - { "debug", -5 }, - { NULL, 0 } -}; + +#define MHPARAM_SWITCHES \ + X("components", 0, COMPSW) \ + X("nocomponents", 0, NCOMPSW) \ + X("all", 0, ALLSW) \ + X("version", 0, VERSIONSW) \ + X("help", 0, HELPSW) \ + X("debug", 5, DEBUGSW) \ + +#define X(sw, minchars, id) id, +DEFINE_SWITCH_ENUM(MHPARAM); +#undef X + +#define X(sw, minchars, id) { sw, minchars, id }, +DEFINE_SWITCH_ARRAY(MHPARAM, switches); +#undef X struct proc { char *p_name; @@ -41,11 +42,10 @@ static struct proc procs [] = { { "context", &context }, { "mh-sequences", &mh_seq }, { "buildmimeproc", &buildmimeproc }, - { "faceproc", &faceproc }, { "fileproc", &fileproc }, { "foldprot", &foldprot }, + { "formatproc", &formatproc }, { "incproc", &incproc }, - { "installproc", &installproc }, { "lproc", &lproc }, { "mailproc", &mailproc }, { "mhlproc", &mhlproc }, @@ -54,7 +54,6 @@ static struct proc procs [] = { { "mshproc", &mshproc }, { "packproc", &packproc }, { "postproc", &postproc }, - { "rmfproc", &rmfproc }, { "rmmproc", &rmmproc }, { "sendproc", &sendproc }, { "showmimeproc", &showmimeproc }, @@ -66,7 +65,6 @@ static struct proc procs [] = { { "etcdir", &mhetcdir }, { "libdir", &mhlibdir }, { "sbackup", &sbackup }, - { "link", &slink }, { NULL, NULL }, }; @@ -107,10 +105,10 @@ main(int argc, char **argv) snprintf (buf, sizeof(buf), "%s [profile-components] [switches]", invo_name); print_help (buf, switches, 1); - done (1); + done (0); case VERSIONSW: print_version(invo_name); - done (1); + done (0); case COMPSW: components = 1; @@ -146,7 +144,7 @@ main(int argc, char **argv) for (np = m_defs; np; np = np->n_next) printf("%s: %s\n", np->n_name, np->n_field); - } if (debug) { + } else if (debug) { struct proc *ps; /* @@ -178,6 +176,7 @@ main(int argc, char **argv) } done (missed); + return 1; } @@ -187,7 +186,7 @@ p_find(char *str) struct proc *ps; for (ps = procs; ps->p_name; ps++) - if (!strcasecmp (ps->p_name, str)) + if (!mh_strcasecmp (ps->p_name, str)) return (*ps->p_field); return NULL;