Removed the -width switch from send, spost and repl.
[mmh] / uip / send.c
index f777155..c19cf4f 100644 (file)
@@ -29,60 +29,26 @@ static struct swit switches[] = {
        { "forward", 0 },
 #define NFORWSW  7
        { "noforward", 0 },
-#define MIMESW  8
-       { "mime", 0 },
-#define NMIMESW  9
-       { "nomime", 0 },
-#define MSGDSW  10
-       { "msgid", 0 },
-#define NMSGDSW  11
-       { "nomsgid", 0 },
-#define PUSHSW  12
+#define PUSHSW  8
        { "push", 0 },
-#define NPUSHSW  13
+#define NPUSHSW  9
        { "nopush", 0 },
-#define UNIQSW  14
+#define UNIQSW  10
        { "unique", -6 },
-#define NUNIQSW  15
+#define NUNIQSW  11
        { "nounique", -8 },
-#define VERBSW  16
+#define VERBSW  12
        { "verbose", 0 },
-#define NVERBSW  17
+#define NVERBSW  13
        { "noverbose", 0 },
-#define WATCSW  18
+#define WATCSW  14
        { "watch", 0 },
-#define NWATCSW  19
+#define NWATCSW  15
        { "nowatch", 0 },
-#define WIDTHSW  20
-       { "width columns", 0 },
-#define VERSIONSW  21
+#define VERSIONSW  16
        { "version", 0 },
-#define HELPSW  22
+#define HELPSW  17
        { "help", 0 },
-#define BITSTUFFSW  23
-       { "dashstuffing", -12 },
-#define NBITSTUFFSW  24
-       { "nodashstuffing", -14 },
-#define MAILSW  25
-       { "mail", -4 },
-#define SAMLSW  26
-       { "saml", -4 },
-#define SENDSW  27
-       { "send", -4 },
-#define SOMLSW  28
-       { "soml", -4 },
-#define CLIESW  29
-       { "client host", -6 },
-#define SERVSW  30
-       { "server host", 6 },
-#define SNOOPSW  31
-       { "snoop", 5 },
-#define ATTACHSW  32
-       { "attach", 6 },
-#define ATTACHFORMATSW  33
-       { "attachformat", 7 },
-#define PORTSW  34
-       { "port server-port-name/number" , 4 },
        { NULL, 0 }
 };
 
@@ -102,18 +68,12 @@ int
 main(int argc, char **argv)
 {
        int msgp = 0, distsw = 0, vecp = 1;
-       int mime = 0;
        int msgnum, status;
        char *cp, *maildir = NULL;
        char buf[BUFSIZ], **ap, **argp, **arguments;
        char *msgs[MAXARGS], *vec[MAXARGS];
        struct msgs *mp;
        struct stat st;
-       char *attach = (char *)0;  /* header field name for attachments */
-       int attachformat = 0; /* mhbuild format specifier for attachments */
-#ifdef UCI
-       FILE *fp;
-#endif /* UCI */
 
 #ifdef LOCALE
        setlocale(LC_ALL, "");
@@ -127,117 +87,76 @@ main(int argc, char **argv)
        argp = arguments;
 
        vec[vecp++] = "-library";
-       vec[vecp++] = getcpy(m_maildir(""));
+       vec[vecp++] = getcpy(toabsdir("+"));
 
        while ((cp = *argp++)) {
                if (*cp == '-') {
                        switch (smatch(++cp, switches)) {
-                               case AMBIGSW:
-                                       ambigsw(cp, switches);
-                                       done(1);
-                               case UNKWNSW:
-                                       adios(NULL, "-%s unknown\n", cp);
-
-                               case HELPSW:
-                                       snprintf(buf, sizeof(buf),
-                                                       "%s [file] [switches]",
-                                                       invo_name);
-                                       print_help(buf, switches, 1);
-                                       done(1);
-                               case VERSIONSW:
-                                       print_version(invo_name);
-                                       done(1);
-
-                               case PUSHSW:
-                                       pushsw++;
-                                       continue;
-                               case NPUSHSW:
-                                       pushsw = 0;
-                                       continue;
-
-                               case UNIQSW:
-                                       unique++;
-                                       continue;
-                               case NUNIQSW:
-                                       unique = 0;
-                                       continue;
-
-                               case FORWSW:
-                                       forwsw++;
-                                       continue;
-                               case NFORWSW:
-                                       forwsw = 0;
-                                       continue;
-
-                               case VERBSW:
-                                       verbsw++;
-                                       vec[vecp++] = --cp;
-                                       continue;
-                               case NVERBSW:
-                                       verbsw = 0;
-                                       vec[vecp++] = --cp;
-                                       continue;
-
-                               case MIMESW:
-                                       mime++;
-                                       vec[vecp++] = --cp;
-                                       continue;
-                               case NMIMESW:
-                                       mime = 0;
-                                       vec[vecp++] = --cp;
-                                       continue;
-
-                               case DEBUGSW:
-                                       debugsw++;  /* fall */
-                               case NFILTSW:
-                               case FRMTSW:
-                               case NFRMTSW:
-                               case BITSTUFFSW:
-                               case NBITSTUFFSW:
-                               case MSGDSW:
-                               case NMSGDSW:
-                               case WATCSW:
-                               case NWATCSW:
-                               case MAILSW:
-                               case SAMLSW:
-                               case SENDSW:
-                               case SOMLSW:
-                               case SNOOPSW:
-                                       vec[vecp++] = --cp;
-                                       continue;
-
-                               case ALIASW:
-                               case FILTSW:
-                               case WIDTHSW:
-                               case CLIESW:
-                               case SERVSW:
-                               case PORTSW:
-                                       vec[vecp++] = --cp;
-                                       if (!(cp = *argp++) || *cp == '-')
-                                               adios(NULL, "missing argument to %s", argp[-2]);
-                                       vec[vecp++] = cp;
-                                       continue;
-
-                               case ATTACHSW:
-                                       if (!(attach = *argp++) ||
-                                                       *attach == '-')
-                                               adios(NULL, "missing argument to %s", argp[-2]);
-                                       continue;
-
-                               case ATTACHFORMATSW:
-                                       if (! *argp || **argp == '-')
-                                               adios(NULL, "missing argument to %s", argp[-1]);
-                                       else {
-                                               attachformat = atoi(*argp);
-                                               if (attachformat < 0 ||
-                                                       attachformat > ATTACHFORMATS - 1) {
-                                                       advise(NULL, "unsupported attachformat %d",
-                                                                       attachformat);
-                                                       continue;
-                                               }
-                                       }
-                                       ++argp;
-                                       continue;
+                       case AMBIGSW:
+                               ambigsw(cp, switches);
+                               done(1);
+                       case UNKWNSW:
+                               adios(NULL, "-%s unknown\n", cp);
+
+                       case HELPSW:
+                               snprintf(buf, sizeof(buf),
+                                               "%s [file] [switches]",
+                                               invo_name);
+                               print_help(buf, switches, 1);
+                               done(1);
+                       case VERSIONSW:
+                               print_version(invo_name);
+                               done(1);
+
+                       case PUSHSW:
+                               pushsw++;
+                               continue;
+                       case NPUSHSW:
+                               pushsw = 0;
+                               continue;
+
+                       case UNIQSW:
+                               unique++;
+                               continue;
+                       case NUNIQSW:
+                               unique = 0;
+                               continue;
+
+                       case FORWSW:
+                               forwsw++;
+                               continue;
+                       case NFORWSW:
+                               forwsw = 0;
+                               continue;
+
+                       case VERBSW:
+                               verbsw++;
+                               vec[vecp++] = --cp;
+                               continue;
+                       case NVERBSW:
+                               verbsw = 0;
+                               vec[vecp++] = --cp;
+                               continue;
+
+                       case DEBUGSW:
+                               debugsw++;  /* fall */
+                       case NFILTSW:
+                       case FRMTSW:
+                       case NFRMTSW:
+                       case WATCSW:
+                       case NWATCSW:
+                               vec[vecp++] = --cp;
+                               continue;
+
+                       case ALIASW:
+                       case FILTSW:
+                               vec[vecp++] = --cp;
+                               if (!(cp = *argp++) || *cp == '-')
+                                       adios(NULL, "missing argument to %s",
+                                                       argp[-2]);
+                               vec[vecp++] = cp;
+                               continue;
+
                        }
                } else {
                        msgs[msgp++] = cp;
@@ -257,12 +176,9 @@ main(int argc, char **argv)
                }
        }
 
-       if (!context_find("path"))
-               free(path("./", TFOLDER));
-
        if (!msgp)
-               msgs[msgp++] = "cur";
-       maildir = m_maildir(draftfolder);
+               msgs[msgp++] = seq_cur;
+       maildir = toabsdir(draftfolder);
 
        if (chdir(maildir) == NOTOK)
                adios(maildir, "unable to change directory to");
@@ -291,21 +207,9 @@ main(int argc, char **argv)
        mp->msgflags |= SEQMOD;
        seq_save(mp);
 
-       if ((cp = getenv("SIGNATURE")) == NULL || *cp == 0)
+       if (!(cp = getenv("SIGNATURE")) || !*cp)
                if ((cp = context_find("signature")) && *cp)
                        m_putenv("SIGNATURE", cp);
-#ifdef UCI
-               else {
-                       snprintf(buf, sizeof(buf), "%s/.signature", mypath);
-                       if ((fp = fopen(buf, "r")) != NULL &&
-                                       fgets(buf, sizeof buf, fp) != NULL) {
-                                       fclose(fp);
-                                       if (cp = strchr(buf, '\n'))
-                                               *cp = 0;
-                                       m_putenv("SIGNATURE", buf);
-                       }
-               }
-#endif /* UCI */
 
        for (msgnum = 0; msgnum < msgp; msgnum++)
                if (stat(msgs[msgnum], &st) == NOTOK)
@@ -365,14 +269,13 @@ main(int argc, char **argv)
        closefds(3);
 
        for (msgnum = 0; msgnum < msgp; msgnum++) {
-               switch (sendsbr(vec, vecp, msgs[msgnum], &st, 1, attach,
-                               attachformat)) {
-                       case DONE:
-                               done(++status);
-                       case NOTOK:
-                               status++;  /* fall */
-                       case OK:
-                               break;
+               switch (sendsbr(vec, vecp, msgs[msgnum], &st, 1)) {
+               case DONE:
+                       done(++status);
+               case NOTOK:
+                       status++;  /* fall */
+               case OK:
+                       break;
                }
        }