projects
/
mmh
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Require at least 2 chars for `no' variants of switches.
[mmh]
/
uip
/
inc.c
diff --git
a/uip/inc.c
b/uip/inc.c
index
6a756d9
..
4b75c6e
100644
(file)
--- a/
uip/inc.c
+++ b/
uip/inc.c
@@
-34,7
+34,6
@@
#include <h/scansbr.h>
#include <h/signals.h>
#include <h/tws.h>
#include <h/scansbr.h>
#include <h/signals.h>
#include <h/tws.h>
-#include <h/mts.h>
#include <errno.h>
#include <signal.h>
#include <errno.h>
#include <signal.h>
@@
-42,31
+41,30
@@
static struct swit switches[] = {
#define AUDSW 0
{ "audit audit-file", 0 },
#define NAUDSW 1
#define AUDSW 0
{ "audit audit-file", 0 },
#define NAUDSW 1
- { "noaudit", 0 },
+ { "noaudit", 2 },
#define CHGSW 2
{ "changecur", 0 },
#define NCHGSW 3
#define CHGSW 2
{ "changecur", 0 },
#define NCHGSW 3
- { "nochangecur", 0 },
+ { "nochangecur", 2 },
#define FILESW 4
{ "file name", 0 },
#define FORMSW 5
{ "form formatfile", 0 },
#define FILESW 4
{ "file name", 0 },
#define FORMSW 5
{ "form formatfile", 0 },
-#define FMTSW 6
- { "format string", 5 },
-#define SILSW 7
+#define SILSW 6
{ "silent", 0 },
{ "silent", 0 },
-#define NSILSW 8
- { "nosilent", 0 },
-#define TRNCSW 9
+#define NSILSW 7
+ { "nosilent", 2 },
+#define TRNCSW 8
{ "truncate", 0 },
{ "truncate", 0 },
-#define NTRNCSW 10
- { "notruncate", 0 },
-#define WIDTHSW 11
+#define NTRNCSW 9
+ { "notruncate", 2 },
+#define WIDTHSW 10
{ "width columns", 0 },
{ "width columns", 0 },
-#define VERSIONSW 12
- { "version", 0 },
-#define HELPSW 13
+#define VERSIONSW 11
+ { "Version", 0 },
+#define HELPSW 12
{ "help", 0 },
{ "help", 0 },
+ { NULL, 0 },
};
/*
};
/*
@@
-121,8
+119,6
@@
static FILE *in;
/*
** prototypes
*/
/*
** prototypes
*/
-char *map_name(char *);
-
static void inc_done(int) NORETURN;
static void inc_done(int) NORETURN;
@@
-137,9
+133,9
@@
main(int argc, char **argv)
** not truncate mailspool
*/
char *cp, *maildir = NULL, *folder = NULL;
** not truncate mailspool
*/
char *cp, *maildir = NULL, *folder = NULL;
- char *format = NULL, *form = NULL;
+ char *form = NULL;
char *audfile = NULL, *from = NULL;
char *audfile = NULL, *from = NULL;
- char buf[BUFSIZ], **argp, *nfs, **arguments;
+ char buf[BUFSIZ], **argp, *fmtstr, **arguments;
struct msgs *mp = NULL;
struct stat st, s1;
FILE *aud = NULL;
struct msgs *mp = NULL;
struct stat st, s1;
FILE *aud = NULL;
@@
-147,10
+143,6
@@
main(int argc, char **argv)
/* copy of mail directory because the static gets overwritten */
char *maildir_copy = NULL;
/* copy of mail directory because the static gets overwritten */
char *maildir_copy = NULL;
-#ifdef MHE
- FILE *mhe = NULL;
-#endif
-
done=inc_done;
/*
done=inc_done;
/*
@@
-168,7
+160,6
@@
main(int argc, char **argv)
/* read user profile/context */
context_read();
/* read user profile/context */
context_read();
- mts_init(invo_name);
arguments = getarguments(invo_name, argc, argv, 1);
argp = arguments;
arguments = getarguments(invo_name, argc, argv, 1);
argp = arguments;
@@
-244,13
+235,6
@@
main(int argc, char **argv)
if (!(form = *argp++) || *form == '-')
adios(NULL, "missing argument to %s",
argp[-2]);
if (!(form = *argp++) || *form == '-')
adios(NULL, "missing argument to %s",
argp[-2]);
- format = NULL;
- continue;
- case FMTSW:
- if (!(format = *argp++) || *format == '-')
- adios(NULL, "missing argument to %s",
- argp[-2]);
- form = NULL;
continue;
case WIDTHSW:
continue;
case WIDTHSW:
@@
-290,7
+274,7
@@
main(int argc, char **argv)
else if ((newmail = context_find("maildrop")) && *newmail)
newmail = toabsdir(newmail);
else {
else if ((newmail = context_find("maildrop")) && *newmail)
newmail = toabsdir(newmail);
else {
- newmail = concat(MAILDIR, "/", MAILFIL, NULL);
+ newmail = concat(mailspool, "/", getusername(), NULL);
}
if (stat(newmail, &s1) == NOTOK || s1.st_size == 0)
adios(NULL, "no mail to incorporate");
}
if (stat(newmail, &s1) == NOTOK || s1.st_size == 0)
adios(NULL, "no mail to incorporate");
@@
-307,16
+291,7
@@
main(int argc, char **argv)
if ((maildir_copy = strdup(maildir)) == NULL)
adios(maildir, "error allocating memory to copy maildir");
if ((maildir_copy = strdup(maildir)) == NULL)
adios(maildir, "error allocating memory to copy maildir");
- if (!folder_exists(maildir)) {
- /*
- ** If the folder doesn't exist, and we're given the -silent
- ** flag, just fail.
- */
- if (noisy)
- create_folder(maildir, 0, done);
- else
- done(1);
- }
+ create_folder(maildir, noisy ? 0 : 1, done);
if (chdir(maildir) == NOTOK)
adios(maildir, "unable to change directory to");
if (chdir(maildir) == NOTOK)
adios(maildir, "unable to change directory to");
@@
-359,25
+334,11
@@
main(int argc, char **argv)
chmod(audfile, m_gmprot());
fprintf(aud, from ? "<<inc>> %s -ms %s\n" : "<<inc>> %s\n",
chmod(audfile, m_gmprot());
fprintf(aud, from ? "<<inc>> %s -ms %s\n" : "<<inc>> %s\n",
- dtimenow(0), from);
- }
-
-#ifdef MHE
- if (context_find("mhe")) {
- int i;
- cp = concat(maildir, "/++", NULL);
- i = stat(cp, &st);
- if ((mhe = fopen(cp, "a")) == NULL)
- admonish(cp, "unable to append to");
- else
- if (i == NOTOK)
- chmod(cp, m_gmprot());
- free(cp);
+ dtimenow(), from);
}
}
-#endif /* MHE */
/* Get new format string */
/* Get new format string */
- nfs = new_fs(form, format, FORMAT);
+ fmtstr = new_fs(form, FORMAT);
if (noisy) {
printf("Incorporating new mail into %s...\n\n", folder);
if (noisy) {
printf("Incorporating new mail into %s...\n\n", folder);
@@
-387,7
+348,7
@@
main(int argc, char **argv)
/*
** Get the mail from file (usually mail spool)
*/
/*
** Get the mail from file (usually mail spool)
*/
- m_unknown(in); /* the MAGIC invocation... */
+ thisisanmbox(in);
hghnum = msgnum = mp->hghmsg;
for (;;) {
/*
hghnum = msgnum = mp->hghmsg;
for (;;) {
/*
@@
-401,8
+362,9
@@
main(int argc, char **argv)
}
/* create scanline for new message */
}
/* create scanline for new message */
- switch (incerr = scan(in, msgnum + 1, msgnum + 1, nfs, width,
- msgnum == hghnum && chgflag, 1, NULL, 0L, noisy)) {
+ switch (incerr = scan(in, msgnum + 1, msgnum + 1,
+ noisy ? fmtstr : NULL, width,
+ msgnum == hghnum && chgflag, 1)) {
case SCNFAT:
case SCNEOF:
break;
case SCNFAT:
case SCNEOF:
break;
@@
-425,7
+387,6
@@
main(int argc, char **argv)
break;
case SCNMSG:
break;
case SCNMSG:
- case SCNENC:
/*
** Run the external program hook on the message.
*/
/*
** Run the external program hook on the message.
*/
@@
-436,10
+397,6
@@
main(int argc, char **argv)
if (aud)
fputs(scanl, aud);
if (aud)
fputs(scanl, aud);
-#ifdef MHE
- if (mhe)
- fputs(scanl, mhe);
-#endif /* MHE */
if (noisy)
fflush(stdout);
msgnum++;
if (noisy)
fflush(stdout);
msgnum++;
@@
-459,6
+416,7
@@
main(int argc, char **argv)
*/
break;
}
*/
break;
}
+ free(maildir_copy);
if (incerr < 0) { /* error */
if (locked) {
if (incerr < 0) { /* error */
if (locked) {
@@
-477,11
+435,6
@@
main(int argc, char **argv)
if (aud)
fclose(aud);
if (aud)
fclose(aud);
-#ifdef MHE
- if (mhe)
- fclose(mhe);
-#endif /* MHE */
-
if (noisy)
fflush(stdout);
if (noisy)
fflush(stdout);
@@
-497,7
+450,6
@@
main(int argc, char **argv)
close(newfd);
else
admonish(newmail, "error zero'ing");
close(newfd);
else
admonish(newmail, "error zero'ing");
- unlink(map_name(newmail));
}
} else if (noisy) {
printf("%s not zero'd\n", newmail);
}
} else if (noisy) {
printf("%s not zero'd\n", newmail);