*/
#include <h/mh.h>
+#include <h/mts.h>
#define MHPARAM_SWITCHES \
X("components", 0, COMPSW) \
extern char *mhlibdir;
extern char *mhetcdir;
-char *sbackup = BACKUP_PREFIX;
-
-char *lockmethod =
-#if defined FCNTL_LOCKING
- "fcntl"
-#elif defined FLOCK_LOCKING
- "flock"
-#elif defined LOCKF_LOCKING
- "lockf"
-#elif defined DOT_LOCKING
- "dot"
-#else
- "none"
-#endif
- ;
+static char *sbackup = BACKUP_PREFIX;
+
+static char *datalocking = "fcntl";
+static char *localmbox = "";
+static int localmbox_primed = 0;
+
+extern char *spoollocking;
-char *sasl =
+static char *sasl =
#ifdef CYRUS_SASL
"cyrus_sasl";
#else
"";
#endif
-char *tls =
+static char *tls =
#ifdef TLS_SUPPORT
"tls";
#else
"";
#endif
-char *mimetypeproc =
+static char *mimetypeproc =
#ifdef MIMETYPEPROC
MIMETYPEPROC;
#else
"";
#endif
-char *mimeencodingproc =
+static char *mimeencodingproc =
#ifdef MIMEENCODINGPROC
MIMEENCODINGPROC;
#else
"";
#endif
+static char *iconv =
+#ifdef HAVE_ICONV
+ "iconv";
+#else
+ "";
+#endif
+
struct proc {
char *p_name;
char **p_field;
{ "whomproc", &whomproc },
{ "etcdir", &mhetcdir },
{ "libdir", &mhlibdir },
+ { "localmbox", &localmbox },
{ "sbackup", &sbackup },
- { "lockmethod", &lockmethod },
+ { "datalocking", &datalocking },
+ { "spoollocking", &spoollocking },
+ { "iconv", &iconv },
{ "sasl", &sasl },
{ "tls", &tls },
{ NULL, NULL },
char *cp, buf[BUFSIZ], **argp;
char **arguments, *comps[MAXARGS];
- invo_name = r1bindex (argv[0], '/');
-
- /* read user profile/context */
- context_read();
+ if (nmh_init(argv[0], 1)) { return 1; }
arguments = getarguments (invo_name, argc, argv, 1);
argp = arguments;
}
} else {
comps[compp++] = cp;
+ if (strcmp("localmbox", cp) == 0 && ! localmbox_primed) {
+ localmbox = getlocalmbox();
+ localmbox_primed = 1;
+ }
}
}
} else if (debug) {
struct proc *ps;
+ /* Need to see if datalocking was set in profile. */
+ if ((cp = context_find("datalocking"))) { datalocking = cp; }
+
+ /* Also set localmbox here */
+ if (! localmbox_primed) {
+ localmbox = getlocalmbox();
+ localmbox_primed = 1;
+ }
+
/*
* Print the current value of everything in
* procs array. This will show their current
missed++;
}
}
-
+
done (missed);
return 1;
}