.RS 5
This program is used to refile or link a message to another folder.
It is used by
-.B post
+.B send
to file a copy of a message into a folder given
by a \*(lqFcc:\*(rq field. It is used by the draft folder facility in
.BR comp ,
When the
.B \-filter
option is given to
-.B send
-or
-.BR post ,
+.BR send ,
the
.I mhlproc
-is used by
-.B post
-to filter the copy of the message
+is used to filter the copy of the message
that is sent to \*(lqBcc:\*(rq recipients.
.RE
.PP
{ "port server port name/number", 4 },
#define TLSSW 41
{ "tls", TLSminc(-3) },
+#define FILEPROCSW 42
+ { "fileproc", -4 },
+#define MHLPROCSW 43
+ { "mhlproc", -3 },
{ NULL, 0 }
};
case TLSSW:
tls++;
continue;
+
+ case FILEPROCSW:
+ if (!(cp = *argp++) || *cp == '-')
+ adios (NULL, "missing argument to %s", argp[-2]);
+ fileproc = cp;
+ continue;
+
+ case MHLPROCSW:
+ if (!(cp = *argp++) || *cp == '-')
+ adios (NULL, "missing argument to %s", argp[-2]);
+ mhlproc = cp;
+ continue;
}
}
if (msg)
vec[0] = r1bindex (postproc, '/');
vec[vecp++] = "-dist";
vec[vecp++] = drft;
+ if ((cp = context_find ("mhlproc"))) {
+ vec[vecp++] = "-mhlproc";
+ vec[vecp++] = cp;
+ }
vec[vecp] = NULL;
for (i = 0; (child_id = fork()) == NOTOK && i < 5; i++)
vec[vecp++] = "-library";
vec[vecp++] = getcpy (m_maildir (""));
+ if ((cp = context_find ("fileproc"))) {
+ vec[vecp++] = "-fileproc";
+ vec[vecp++] = cp;
+ }
+
+ if ((cp = context_find ("mhlproc"))) {
+ vec[vecp++] = "-mhlproc";
+ vec[vecp++] = cp;
+ }
+
while ((cp = *argp++)) {
if (*cp == '-') {
switch (smatch (++cp, switches)) {
vec[vecp++] = "-library";
vec[vecp++] = getcpy (m_maildir (""));
+ if ((cp = context_find ("fileproc"))) {
+ vec[vecp++] = "-fileproc";
+ vec[vecp++] = cp;
+ }
+
+ if ((cp = context_find ("mhlproc"))) {
+ vec[vecp++] = "-mhlproc";
+ vec[vecp++] = cp;
+ }
+
while ((cp = *argp++)) {
if (*cp == '-') {
switch (smatch (++cp, sendswitches)) {
vec[vecp++] = "-library";
vec[vecp++] = getcpy (m_maildir (""));
+ /* Don't need to feed fileproc or mhlproc to post because
+ it doesn't use them when used for whom. */
+
while ((cp = *argp++)) {
if (*cp == '-') {
switch (smatch (++cp, switches)) {