X-Git-Url: http://git.marmaro.de/?a=blobdiff_plain;f=uip%2Fspost.c;h=de4a6d2863b56f0cef27d52dc3648212f4bffab4;hb=5c86fbdc071e1c322ccf341855eaa813807776b4;hp=ff1e80ac920b5cc9ab7e2ecab78f734633517798;hpb=9677896bbb11f7b49ca3e1665601407b6c7a459f;p=mmh diff --git a/uip/spost.c b/uip/spost.c index ff1e80a..de4a6d2 100644 --- a/uip/spost.c +++ b/uip/spost.c @@ -24,20 +24,14 @@ 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 */ -#define LIBSW 8 - { "library directory", -7 }, { NULL, 0 } }; @@ -145,9 +139,7 @@ main(int argc, char **argv) setlocale(LC_ALL, ""); invo_name = mhbasename(argv[0]); - /* foil search of user profile/context */ - if (context_foil(NULL) == -1) - done(1); + context_read(); arguments = getarguments(invo_name, argc, argv, 0); argp = arguments; @@ -185,27 +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; - - case LIBSW: - if (!(cp = *argp++) || *cp == '-') - adios(NULL, "missing argument to %s", - argp[-2]); - /* create a minimal context */ - if (context_foil(cp) == -1) - done(1); - continue; } } if (msg) @@ -227,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;;) { @@ -639,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 : ""); @@ -657,6 +638,5 @@ process_bccs(char *origmsg) mp->m_text); unlink(bccdraft); } - /* TODO: unlink renamed bcc draft after send(1) */ } }