X-Git-Url: http://git.marmaro.de/?p=mmh;a=blobdiff_plain;f=sbr%2Freadconfig.c;h=16659a99308c440cab87c3b26db8394c0f4ebab4;hp=72123038b980cf295a54dce3be890afd7272e17d;hb=5ee5d678d59cf1deea31126bc886333f1be4571d;hpb=8e5be81f784682822f5e868c1bf3c8624682bd23 diff --git a/sbr/readconfig.c b/sbr/readconfig.c index 7212303..16659a9 100644 --- a/sbr/readconfig.c +++ b/sbr/readconfig.c @@ -16,24 +16,20 @@ struct procstr { }; static struct procstr procs[] = { + { "attachment-header", &attach_hdr }, { "context", &context }, { "mh-sequences", &mh_seq }, { "backup-prefix", &backup_prefix }, { "draft-folder", &draftfolder }, { "altmsg-link", &altmsglink }, - { "buildmimeproc", &buildmimeproc }, { "fileproc", &fileproc }, - { "incproc", &incproc }, - { "lproc", &lproc }, + { "listproc", &listproc }, { "mailproc", &mailproc }, { "mhlproc", &mhlproc }, - { "moreproc", &moreproc }, { "postproc", &postproc }, { "rmmproc", &rmmproc }, { "sendmail", &sendmail }, { "sendproc", &sendproc }, - { "showmimeproc", &showmimeproc }, - { "showproc", &showproc }, { "whatnowproc", &whatnowproc }, { NULL, NULL } }; @@ -56,50 +52,53 @@ readconfig(struct node **npp, FILE *ib, char *file, int ctx) } for (state = FLD;;) { - switch (state = m_getfld(state, name, field, sizeof(field), ib)) { - case FLD: - case FLDPLUS: - case FLDEOF: - np = (struct node *) mh_xmalloc(sizeof(*np)); - *npp = np; - *(npp = &np->n_next) = NULL; - np->n_name = getcpy(name); - if (state == FLDPLUS) { - cp = getcpy(field); - while (state == FLDPLUS) { - state = m_getfld(state, name, field, sizeof(field), ib); - cp = add(field, cp); - } - np->n_field = trimcpy(cp); - free(cp); - } else { - np->n_field = trimcpy(field); + switch (state = m_getfld(state, name, field, sizeof(field), + ib)) { + case FLD: + case FLDPLUS: + case FLDEOF: + np = (struct node *) mh_xmalloc(sizeof(*np)); + *npp = np; + *(npp = &np->n_next) = NULL; + np->n_name = getcpy(name); + if (state == FLDPLUS) { + cp = getcpy(field); + while (state == FLDPLUS) { + state = m_getfld(state, name, field, + sizeof(field), ib); + cp = add(field, cp); } - np->n_context = ctx; + np->n_field = trimcpy(cp); + free(cp); + } else { + np->n_field = trimcpy(field); + } + np->n_context = ctx; - /* - ** Now scan the list of `procs' and link in - ** the field value to the global variable. - */ - for (ps = procs; ps->procname; ps++) - if (mh_strcasecmp(np->n_name, - ps->procname) == 0) { - *ps->procnaddr = np->n_field; - break; - } - if (state == FLDEOF) + /* + ** Now scan the list of `procs' and link in + ** the field value to the global variable. + */ + for (ps = procs; ps->procname; ps++) + if (mh_strcasecmp(np->n_name, + ps->procname) == 0) { + *ps->procnaddr = np->n_field; break; - continue; + } + if (state == FLDEOF) + break; + continue; - case BODY: - case BODYEOF: - adios(NULL, "no blank lines are permitted in %s", file); + case BODY: + case BODYEOF: + adios(NULL, "no blank lines are permitted in %s", + file); - case FILEEOF: - break; + case FILEEOF: + break; - default: - adios(NULL, "%s is poorly formatted", file); + default: + adios(NULL, "%s is poorly formatted", file); } break; }