{ "noedit", 0 },
#define FORMSW 4
{ "form formfile", 0 },
-#define INPLSW 5
- { "inplace", 0 },
-#define NINPLSW 6
- { "noinplace", 0 },
-#define WHATSW 7
+#define WHATSW 5
{ "whatnowproc program", 0 },
-#define NWHATSW 8
+#define NWHATSW 6
{ "nowhatnowproc", 0 },
-#define VERSIONSW 9
+#define VERSIONSW 7
{ "version", 0 },
-#define HELPSW 10
+#define HELPSW 8
{ "help", 0 },
-#define FILESW 11
+#define FILESW 9
{ "file file", -4 }, /* interface from msh */
{ NULL, 0 }
};
int
main(int argc, char **argv)
{
- int anot = 0, inplace = 1, nedit = 0;
+ int anot = 0, nedit = 0;
int nwhat = 0, in, out;
char *cp, *cwd, *maildir, *msgnam;
char *ed = NULL, *file = NULL, *folder = NULL;
char *form = NULL, *msg = NULL, buf[BUFSIZ], drft[BUFSIZ];
char **argp, **arguments;
struct msgs *mp = NULL;
+ char *nfs;
#ifdef LOCALE
setlocale(LC_ALL, "");
adios(NULL, "missing argument to %s",
argp[-2]);
continue;
-
- case INPLSW:
- inplace++;
- continue;
- case NINPLSW:
- inplace = 0;
- continue;
}
}
if (*cp == '+' || *cp == '@') {
if (file && (msg || folder))
adios(NULL, "can't mix files and folders/msgs");
- in = open_form(&form, distcomps);
-
- strncpy(drft, m_draft("new"), sizeof(drft));
-
+ strncpy(drft, m_draft(seq_beyond), sizeof(drft));
if ((out = creat(drft, m_gmprot())) == NOTOK)
adios(drft, "unable to create");
- cpydata(in, out, form, drft);
- close(in);
+ nfs = new_fs(form, distcomps);
+ if (write(out, nfs, strlen(nfs)) != strlen(nfs)) {
+ adios(drft, "error writing");
+ }
close(out);
if (file) {
** Dist a message
*/
if (!msg)
- msg = "cur";
+ msg = seq_cur;
if (!folder)
folder = getcurfol();
maildir = toabsdir(folder);
if (nwhat)
done(0);
what_now(ed, nedit, NOUSE, drft, msgnam, 1, mp, anot ? "Resent" : NULL,
- inplace, cwd);
+ cwd);
done(1);
return 1;
}