X-Git-Url: https://diplodocus.org/git/nmh/blobdiff_plain/a5b2adde414330e1661db05d1ee5b1daeaa2476d..0b7286788a95dd854d1826b8493eda431d8e8aac:/uip/whom.c diff --git a/uip/whom.c b/uip/whom.c index 39a64703..56ae6b46 100644 --- a/uip/whom.c +++ b/uip/whom.c @@ -5,9 +5,17 @@ * complete copyright information. */ -#include -#include -#include +#include "h/mh.h" +#include "sbr/context_find.h" +#include "sbr/brkstring.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 "h/signals.h" #include "sbr/m_maildir.h" #include "sbr/m_mktemp.h" @@ -65,7 +73,7 @@ main (int argc, char **argv) char *msg = NULL, **ap, **argp, backup[BUFSIZ]; char buf[BUFSIZ], **arguments, *vec[MAXARGS]; - if (nmh_init(argv[0], 2)) { return 1; } + if (nmh_init(argv[0], true, false)) { return 1; } arguments = getarguments (invo_name, argc, argv, 1); argp = arguments; @@ -73,7 +81,7 @@ main (int argc, char **argv) vec[vecp++] = invo_name; vec[vecp++] = "-whom"; vec[vecp++] = "-library"; - vec[vecp++] = getcpy (m_maildir ("")); + vec[vecp++] = mh_xstrdup(m_maildir("")); if ((cp = context_find ("credentials"))) { /* post doesn't read context so need to pass credentials. */ @@ -91,7 +99,7 @@ main (int argc, char **argv) ambigsw (cp, switches); done (1); case UNKWNSW: - adios (NULL, "-%s unknown", cp); + die("-%s unknown", cp); case HELPSW: snprintf (buf, sizeof(buf), "%s [switches] [file]", invo_name); @@ -117,17 +125,17 @@ main (int argc, char **argv) case DFOLDSW: if (dfolder) - adios (NULL, "only one draft folder at a time!"); + die("only one draft folder at a time!"); if (!(cp = *argp++) || *cp == '-') - adios (NULL, "missing argument to %s", argp[-2]); + die("missing argument to %s", argp[-2]); dfolder = path (*cp == '+' || *cp == '@' ? cp + 1 : cp, *cp != '@' ? TFOLDER : TSUBCWF); continue; case DMSGSW: if (dmsg) - adios (NULL, "only one draft message at a time!"); + die("only one draft message at a time!"); if (!(dmsg = *argp++) || *dmsg == '-') - adios (NULL, "missing argument to %s", argp[-2]); + die("missing argument to %s", argp[-2]); continue; case NDFLDSW: dfolder = NULL; @@ -143,13 +151,13 @@ main (int argc, char **argv) case MTSSW: vec[vecp++] = --cp; if (!(cp = *argp++) || *cp == '-') - adios (NULL, "missing argument to %s", argp[-2]); + die("missing argument to %s", argp[-2]); vec[vecp++] = cp; continue; } } if (msg) - adios (NULL, "only one draft at a time!"); + die("only one draft at a time!"); vec[vecp++] = msg = cp; } @@ -164,7 +172,7 @@ main (int argc, char **argv) } if (msg == NULL) { - cp = getcpy (m_draft (dfolder, dmsg, 1, &isdf)); + cp = mh_xstrdup(m_draft(dfolder, dmsg, 1, &isdf)); msg = vec[vecp++] = cp; }