X-Git-Url: https://diplodocus.org/git/nmh/blobdiff_plain/3b6170b27ba8fedbb4d67d2842bfaa38d4417962..394a751fd883d2bbfc769fed7e254e008a2ef45e:/uip/install-mh.c diff --git a/uip/install-mh.c b/uip/install-mh.c index e3eab12f..ac2c5c98 100644 --- a/uip/install-mh.c +++ b/uip/install-mh.c @@ -5,11 +5,24 @@ * complete copyright information. */ -#include /* mh internals */ -#include +#include "h/mh.h" +#include "sbr/getarguments.h" +#include "sbr/read_switch.h" +#include "sbr/concat.h" +#include "sbr/smatch.h" +#include "sbr/context_save.h" +#include "sbr/context_replace.h" +#include "sbr/readconfig.h" +#include "sbr/ambigsw.h" +#include "sbr/path.h" +#include "sbr/print_version.h" +#include "sbr/print_help.h" +#include "sbr/error.h" +#include "h/done.h" +#include "h/utils.h" #include "sbr/m_maildir.h" #include "sbr/makedir.h" -#include /* structure for getpwuid() results */ +#include #include "sbr/read_line.h" #define INSTALLMH_SWITCHES \ @@ -30,7 +43,7 @@ DEFINE_SWITCH_ARRAY(INSTALLMH, switches); int main (int argc, char **argv) { - int autof = 0; + bool autof = false; char *cp, buf[BUFSIZ]; const char *pathname; char *dp, **arguments, **argp; @@ -38,14 +51,14 @@ main (int argc, char **argv) struct passwd *pw; struct stat st; FILE *in, *out; - int check; + bool check; - if (nmh_init(argv[0], 0 /* use context_foil() */ )) { return 1; } + if (nmh_init(argv[0], false, false)) { return 1; } arguments = getarguments (invo_name, argc, argv, 0); argp = arguments; - check = 0; + check = false; while ((dp = *argp++)) { if (*dp == '-') { @@ -54,7 +67,7 @@ main (int argc, char **argv) ambigsw (dp, switches); done (1); case UNKWNSW: - adios (NULL, "-%s unknown\n", dp); + die("-%s unknown\n", dp); case HELPSW: snprintf (buf, sizeof(buf), "%s [switches]", invo_name); @@ -65,15 +78,15 @@ main (int argc, char **argv) done (0); case AUTOSW: - autof++; + autof = true; continue; case CHECKSW: - check = 1; + check = true; continue; } } else { - adios (NULL, "%s is invalid argument", dp); + die("%s is invalid argument", dp); } } @@ -84,7 +97,7 @@ main (int argc, char **argv) if ((mypath = getenv("HOME")) == NULL) { if ((pw = getpwuid(getuid())) == NULL || *pw->pw_dir == '\0') - adios(NULL, "cannot determine your home directory"); + die("cannot determine your home directory"); mypath = pw->pw_dir; } @@ -110,8 +123,8 @@ main (int argc, char **argv) if (check) done(0); if (autof) - adios (NULL, "invocation error"); - adios (NULL, "You already have an nmh profile, use an editor to modify it"); + die("invocation error"); + die("You already have an nmh profile, use an editor to modify it"); } if (check) done(1); @@ -152,7 +165,7 @@ query: pathname = read_line (); if (pathname == NULL) done (1); } else { - printf ("What is the whole path? /"); + fputs("What is the whole path? /", stdout); pathname = read_line (); if (pathname == NULL) done (1); pathname = concat ("/", pathname, NULL); @@ -167,7 +180,7 @@ query: cp = concat ("\"", pathname, "\" doesn't exist; Create it? ", NULL); if (autof || read_switch (cp, anoyes)) if (makedir (pathname) == 0) - adios (NULL, "unable to create %s", pathname); + die("unable to create %s", pathname); } else { puts("[Using existing directory]"); } @@ -191,7 +204,7 @@ query: fclose (in); } - ctxpath = getcpy (m_maildir (context = "context")); + ctxpath = mh_xstrdup(m_maildir(context = "context")); /* Initialize current folder to default */ context_replace (pfolder, defaultfolder); @@ -215,7 +228,7 @@ query: } fclose (out); - puts ("\nPlease see the nmh(7) man page for an introduction to nmh.\n"); + puts ("\nPlease see nmh(7) for an introduction to nmh.\n"); print_intro (stdout, false); /* Initialize the saved nmh version. The Path profile entry was added