Add %(unmailto) format function for List-Post headers
[mmh] / uip / mhparam.c
index d29f73a..29d4170 100644 (file)
@@ -10,6 +10,7 @@
 */
 
 #include <h/mh.h>
+#include <sysexits.h>
 
 static struct swit switches[] = {
 #define COMPSW  0
@@ -97,17 +98,18 @@ static struct proc procs [] = {
        { "replgroupcomps",    &replgroupcomps },
        { "mhlformat",         &mhlformat },
        { "mhlreply",          &mhlreply },
+       { "scanformat",        &scanformat },
 
        { "#--Default-Sequence-Names--", &empty },
-       { "seq-all",          &seq_all },
-       { "seq-beyond",       &seq_beyond },
-       { "seq-cur",          &seq_cur },
-       { "seq-first",        &seq_first },
-       { "seq-last",         &seq_last },
-       { "seq-next",         &seq_next },
-       { "seq-prev",         &seq_prev },
-       { "seq-unseen",       &seq_unseen },
-       { "seq-neg",          &seq_neg },
+       { "seq-all",           &seq_all },
+       { "seq-beyond",        &seq_beyond },
+       { "seq-cur",           &seq_cur },
+       { "seq-first",         &seq_first },
+       { "seq-last",          &seq_last },
+       { "seq-next",          &seq_next },
+       { "previous-sequence", &seq_prev },
+       { "unseen-sequence",   &seq_unseen },
+       { "sequence-negation", &seq_neg },
 
        { NULL,            NULL },
 };
@@ -140,17 +142,17 @@ main(int argc, char **argv)
                        switch (smatch(++cp, switches)) {
                        case AMBIGSW:
                                ambigsw(cp, switches);
-                               done(1);
+                               exit(EX_USAGE);
                        case UNKWNSW:
-                               adios(NULL, "-%s unknown", cp);
+                               adios(EX_USAGE, NULL, "-%s unknown", cp);
 
                        case HELPSW:
                                snprintf(buf, sizeof(buf), "%s [profile-components] [switches]", invo_name);
                                print_help(buf, switches, 1);
-                               done(1);
+                               exit(argc == 2 ? EX_OK : EX_USAGE);
                        case VERSIONSW:
                                print_version(invo_name);
-                               done(1);
+                               exit(argc == 2 ? EX_OK : EX_USAGE);
 
                        case COMPSW:
                                components = 1;
@@ -203,7 +205,7 @@ main(int argc, char **argv)
                        components = compp > 1;
 
                for (i = 0; i < compp; i++)  {
-                       register char *value;
+                       char *value;
 
                        value = context_find(comps[i]);
                        if (!value)
@@ -218,8 +220,7 @@ main(int argc, char **argv)
                }
        }
 
-       done(missed);
-       return 1;
+       return missed;
 }