Fix uip/whom.c for C89 compatibility
[mmh] / uip / mhparam.c
index dce2d75..2c61e60 100644 (file)
@@ -10,6 +10,7 @@
 */
 
 #include <h/mh.h>
+#include <sysexits.h>
 
 static struct swit switches[] = {
 #define COMPSW  0
@@ -27,6 +28,8 @@ static struct swit switches[] = {
        { NULL, 0 }
 };
 
+char *version=VERSION;
+
 struct proc {
        char *p_name;
        char **p_field;
@@ -40,8 +43,8 @@ char *empty = "";
 */
 static struct proc procs [] = {
        { "#--Version--", &empty },
-       { "version",          &version_num },
-       { "version-str",      &version_str },
+       { "version",          &version },
+       { "lib-version",      &lib_version },
 
        { "#--Path-and-File-Names--", &empty },
        { "mypath",          &mypath },
@@ -97,6 +100,7 @@ static struct proc procs [] = {
        { "replgroupcomps",    &replgroupcomps },
        { "mhlformat",         &mhlformat },
        { "mhlreply",          &mhlreply },
+       { "scanformat",        &scanformat },
 
        { "#--Default-Sequence-Names--", &empty },
        { "seq-all",           &seq_all },
@@ -140,17 +144,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 +207,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 +222,7 @@ main(int argc, char **argv)
                }
        }
 
-       done(missed);
-       return 1;
+       return missed;
 }