whom: Suppress the separator if no hidden rcpts are present.
[mmh] / uip / spost.c
index fe2e34b..de4a6d2 100644 (file)
@@ -24,17 +24,13 @@ static struct swit switches[] = {
        { "verbose", 0 },
 #define NVERBSW  1
        { "noverbose", 2 },
-#define ALIASW  2
-       { "alias aliasfile", 0 },
-#define NALIASW  3
-       { "noalias", 2 },
-#define VERSIONSW  4
+#define VERSIONSW  2
        { "Version", 0 },
-#define HELPSW  5
+#define HELPSW  3
        { "help", 0 },
-#define DEBUGSW  6
+#define DEBUGSW  4
        { "debug", -5 },
-#define DISTSW  7
+#define DISTSW  5
        { "dist", -4 },  /* interface from dist */
        { NULL, 0 }
 };
@@ -181,18 +177,6 @@ main(int argc, char **argv)
                        case NVERBSW:
                                verbose = 0;
                                continue;
-
-                       case ALIASW:
-                               if (!(cp = *argp++) || *cp == '-')
-                                       adios(NULL, "missing argument to %s",
-                                                       argp[-2]);
-                               aliasflg = 1;
-                               if ((state = alias(cp)) != AK_OK)
-                                       adios(NULL, "aliasing error in file %s - %s", cp, akerror(state));
-                               continue;
-                       case NALIASW:
-                               aliasflg = 0;
-                               continue;
                        }
                }
                if (msg)
@@ -214,6 +198,21 @@ main(int argc, char **argv)
                tmpfil = getcpy(m_mktemp2("/tmp/", invo_name, NULL, &out));
        }
 
+       /* check for "Aliasfile:" profile entry */
+       if ((cp = context_find("Aliasfile"))) {
+               char *dp, **ap; 
+
+               aliasflg = 1;
+               for (ap=brkstring(dp=getcpy(cp), " ", "\n"); ap && *ap;
+                               ap++) {
+                       if ((state = alias(etcpath(*ap))) != AK_OK) {
+                               adios(NULL, "aliasing error in file %s: %s",
+                                               *ap, akerror(state));
+                       }
+               }
+       }
+
+
        hdrtab = (msgstate == normal) ? NHeaders : RHeaders;
 
        for (compnum = 1, state = FLD;;) {
@@ -626,11 +625,6 @@ process_bccs(char *origmsg)
        FILE *out = NULL;
 
        for (mp=bccs; mp; mp=mp->m_next) {
-               /*
-               ** Note: This draft file will be left existing by send(1),
-               ** although renamed with backup prefix.
-               ** TODO: We should have it removed eventually.
-               */
                bccdraft = getcpy(m_mktemp2("/tmp/", invo_name, NULL, &out));
                fprintf(out, "To: %s\n", mp->m_text);
                fprintf(out, "Subject: [BCC] %s", subject ? subject : "");
@@ -644,6 +638,5 @@ process_bccs(char *origmsg)
                                        mp->m_text);
                        unlink(bccdraft);
                }
-               /* TODO: unlink renamed bcc draft after send(1) */
        }
 }