X-Git-Url: https://diplodocus.org/git/nmh/blobdiff_plain/46f35e659f3bc3e808a70263bea0ec72624c8a08..323ebbe5b59cfb2ed01a854ee2baa4539a95336d:/uip/mhparam.c?ds=inline diff --git a/uip/mhparam.c b/uip/mhparam.c index acb416c7..55ac3c31 100644 --- a/uip/mhparam.c +++ b/uip/mhparam.c @@ -29,8 +29,10 @@ DEFINE_SWITCH_ENUM(MHPARAM); DEFINE_SWITCH_ARRAY(MHPARAM, switches); #undef X -extern char *mhetcdir; +extern char *mhbindir; extern char *mhlibexecdir; +extern char *mhetcdir; +extern char *mhdocdir; static char *sbackup = BACKUP_PREFIX; @@ -75,6 +77,13 @@ static char *iconv = ""; #endif +static char *oauth = +#ifdef OAUTH_SUPPORT + "oauth"; +#else + ""; +#endif + struct proc { char *p_name; char **p_field; @@ -104,14 +113,17 @@ static struct proc procs [] = { { "version", &version_num }, { "whatnowproc", &whatnowproc }, { "whomproc", &whomproc }, - { "etcdir", &mhetcdir }, - { "libdir", &mhlibexecdir }, + { "bindir", &mhbindir }, { "libexecdir", &mhlibexecdir }, + { "libdir", &mhlibexecdir }, + { "etcdir", &mhetcdir }, + { "docdir", &mhdocdir }, { "localmbox", &localmbox }, { "sbackup", &sbackup }, { "datalocking", &datalocking }, { "spoollocking", &spoollocking }, { "iconv", &iconv }, + { "oauth", &oauth }, { "sasl", &sasl }, { "tls", &tls }, { NULL, NULL }, @@ -133,7 +145,7 @@ main(int argc, char **argv) char *cp, buf[BUFSIZ], **argp; char **arguments, *comps[MAXARGS]; - if (nmh_init(argv[0], 1)) { return 1; } + if (nmh_init(argv[0], 2)) { return 1; } arguments = getarguments (invo_name, argc, argv, 1); argp = arguments; @@ -202,7 +214,7 @@ main(int argc, char **argv) if ((cp = context_find("datalocking"))) { datalocking = cp; } /* In case spoollocking was set in mts.conf. */ - mts_init(invo_name); + mts_init(); /* Also set localmbox here */ if (! localmbox_primed) { @@ -223,11 +235,11 @@ main(int argc, char **argv) components = compp > 1; for (i = 0; i < compp; i++) { - register char *value; + char *value; if (! strcmp ("spoollocking", comps[i])) { /* In case spoollocking was set in mts.conf. */ - mts_init(invo_name); + mts_init(); } value = context_find (comps[i]); @@ -253,8 +265,10 @@ p_find(char *str) { struct proc *ps; + if (!str) + str = ""; for (ps = procs; ps->p_name; ps++) - if (!strcasecmp (ps->p_name, str ? str : "")) + if (!strcasecmp (ps->p_name, str)) return (*ps->p_field); return NULL;