X-Git-Url: http://git.marmaro.de/?p=mmh;a=blobdiff_plain;f=sbr%2Fmf.c;h=d93ad2653c033ac2be6d349d49fa3e360dcf17db;hp=8f7e3579dd2154bc884328001969e9fd4bdbf2f7;hb=714b5c530ece27ea2835a313013f5b770163403c;hpb=ced6090a330d3d83d0bce709f756aa3d7d65fea4 diff --git a/sbr/mf.c b/sbr/mf.c index 8f7e357..d93ad26 100644 --- a/sbr/mf.c +++ b/sbr/mf.c @@ -14,19 +14,19 @@ /* ** static prototypes */ -static char *getcpy (char *); -static int isat (char *); -static int parse_address (void); -static int phrase (char *); -static int route_addr (char *); -static int local_part (char *); -static int domain (char *); -static int route (char *); -static int my_lex (char *); +static char *getcpy(char *); +static int isat(char *); +static int parse_address(void); +static int phrase(char *); +static int route_addr(char *); +static int local_part(char *); +static int domain(char *); +static int route(char *); +static int my_lex(char *); static char * -getcpy (char *s) +getcpy(char *s) { register char *p; @@ -40,8 +40,8 @@ getcpy (char *s) for(;;) pause(); } - p = mh_xmalloc ((size_t) (strlen (s) + 2)); - strcpy (p, s); + p = mh_xmalloc((size_t) (strlen(s) + 2)); + strcpy(p, s); return p; } @@ -52,12 +52,12 @@ getcpy (char *s) static int -isat (char *p) +isat(char *p) { - return (strncmp (p, " AT ", 4) - && strncmp (p, " At ", 4) - && strncmp (p, " aT ", 4) - && strncmp (p, " at ", 4) ? FALSE : TRUE); + return (strncmp(p, " AT ", 4) + && strncmp(p, " At ", 4) + && strncmp(p, " aT ", 4) + && strncmp(p, " at ", 4) ? FALSE : TRUE); } @@ -176,38 +176,38 @@ static struct adrx adrxs2; struct adrx * -getadrx (char *addrs) +getadrx(char *addrs) { register char *bp; register struct adrx *adrxp = &adrxs2; if (pers) - free (pers); + free(pers); if (mbox) - free (mbox); + free(mbox); if (host) - free (host); + free(host); if (path) - free (path); + free(path); if (grp) - free (grp); + free(grp); if (note) - free (note); + free(note); pers = mbox = host = path = grp = note = NULL; err[0] = 0; if (dp == NULL) { - dp = cp = getcpy (addrs ? addrs : ""); + dp = cp = getcpy(addrs ? addrs : ""); glevel = 0; } else if (cp == NULL) { - free (dp); + free(dp); dp = NULL; return NULL; } - switch (parse_address ()) { + switch (parse_address()) { case DONE: - free (dp); + free(dp); dp = cp = NULL; return NULL; @@ -219,7 +219,7 @@ getadrx (char *addrs) default: /* catch trailing comments */ bp = cp; - my_lex (adr); + my_lex(adr); cp = bp; break; } @@ -237,18 +237,18 @@ getadrx (char *addrs) break; default: - my_lex (adr); + my_lex(adr); continue; } break; } - while (isspace (*ap)) + while (isspace(*ap)) ap++; if (cp) - sprintf (adr, "%.*s", (int)(cp - ap), ap); + sprintf(adr, "%.*s", (int)(cp - ap), ap); else - strcpy (adr, ap); - bp = adr + strlen (adr) - 1; + strcpy(adr, ap); + bp = adr + strlen(adr) - 1; if (*bp == ',' || *bp == ';' || *bp == '\n') *bp = 0; @@ -267,26 +267,26 @@ getadrx (char *addrs) static int -parse_address (void) +parse_address(void) { char buffer[BUFSIZ]; again: ; ap = cp; - switch (my_lex (buffer)) { + switch (my_lex(buffer)) { case LX_ATOM: case LX_QSTR: - pers = getcpy (buffer); + pers = getcpy(buffer); break; case LX_SEMI: if (glevel-- <= 0) { - strcpy (err, "extraneous semi-colon"); + strcpy(err, "extraneous semi-colon"); return NOTOK; } case LX_COMA: if (note) { - free (note); + free(note); note = NULL; } goto again; @@ -299,46 +299,46 @@ again: ; case LX_AT: /* sigh (3) */ cp = ap; - if (route_addr (buffer) == NOTOK) + if (route_addr(buffer) == NOTOK) return NOTOK; return OK; /* why be choosy? */ default: - sprintf (err, "illegal address construct (%s)", buffer); + sprintf(err, "illegal address construct (%s)", buffer); return NOTOK; } - switch (my_lex (buffer)) { + switch (my_lex(buffer)) { case LX_ATOM: case LX_QSTR: - pers = add (buffer, add (" ", pers)); + pers = add(buffer, add(" ", pers)); more_phrase: ; /* sigh (1) */ - if (phrase (buffer) == NOTOK) + if (phrase(buffer) == NOTOK) return NOTOK; switch (last_lex) { case LX_LBRK: get_addr: ; - if (route_addr (buffer) == NOTOK) + if (route_addr(buffer) == NOTOK) return NOTOK; if (last_lex == LX_RBRK) return OK; - sprintf (err, "missing right-bracket (%s)", buffer); + sprintf(err, "missing right-bracket (%s)", buffer); return NOTOK; case LX_COLN: get_group: ; if (glevel++ > 0) { - sprintf (err, "nested groups not allowed (%s)", pers); + sprintf(err, "nested groups not allowed (%s)", pers); return NOTOK; } - grp = add (": ", pers); + grp = add(": ", pers); pers = NULL; { char *pp = cp; for (;;) - switch (my_lex (buffer)) { + switch (my_lex(buffer)) { case LX_SEMI: case LX_END: /* tsk, tsk */ glevel--; @@ -349,16 +349,16 @@ again: ; default: cp = pp; - return parse_address (); + return parse_address(); } } case LX_DOT: /* sigh (1) */ - pers = add (".", pers); + pers = add(".", pers); goto more_phrase; default: - sprintf (err, "no mailbox in address, only a phrase (%s%s)", pers, buffer); + sprintf(err, "no mailbox in address, only a phrase (%s%s)", pers, buffer); return NOTOK; } @@ -369,9 +369,9 @@ again: ; goto get_group; case LX_DOT: - mbox = add (buffer, pers); + mbox = add(buffer, pers); pers = NULL; - if (route_addr (buffer) == NOTOK) + if (route_addr(buffer) == NOTOK) return NOTOK; goto check_end; @@ -379,13 +379,13 @@ again: ; ingrp = glevel; mbox = pers; pers = NULL; - if (domain (buffer) == NOTOK) + if (domain(buffer) == NOTOK) return NOTOK; check_end: ; switch (last_lex) { case LX_SEMI: if (glevel-- <= 0) { - strcpy (err, "extraneous semi-colon"); + strcpy(err, "extraneous semi-colon"); return NOTOK; } case LX_COMA: @@ -393,7 +393,7 @@ again: ; return OK; default: - sprintf (err, "junk after local@domain (%s)", buffer); + sprintf(err, "junk after local@domain (%s)", buffer); return NOTOK; } @@ -402,7 +402,7 @@ again: ; case LX_END: ingrp = glevel; if (last_lex == LX_SEMI && glevel-- <= 0) { - strcpy (err, "extraneous semi-colon"); + strcpy(err, "extraneous semi-colon"); return NOTOK; } mbox = pers; @@ -410,20 +410,20 @@ again: ; return OK; default: - sprintf (err, "missing mailbox (%s)", buffer); + sprintf(err, "missing mailbox (%s)", buffer); return NOTOK; } } static int -phrase (char *buffer) +phrase(char *buffer) { for (;;) - switch (my_lex (buffer)) { + switch (my_lex(buffer)) { case LX_ATOM: case LX_QSTR: - pers = add (buffer, add (" ", pers)); + pers = add(buffer, add(" ", pers)); continue; default: @@ -433,23 +433,23 @@ phrase (char *buffer) static int -route_addr (char *buffer) +route_addr(char *buffer) { register char *pp = cp; - if (my_lex (buffer) == LX_AT) { - if (route (buffer) == NOTOK) + if (my_lex(buffer) == LX_AT) { + if (route(buffer) == NOTOK) return NOTOK; } else cp = pp; - if (local_part (buffer) == NOTOK) + if (local_part(buffer) == NOTOK) return NOTOK; switch (last_lex) { case LX_AT: - return domain (buffer); + return domain(buffer); case LX_SEMI: /* if in group */ case LX_RBRK: /* no host */ @@ -458,33 +458,33 @@ route_addr (char *buffer) return OK; default: - sprintf (err, "no at-sign after local-part (%s)", buffer); + sprintf(err, "no at-sign after local-part (%s)", buffer); return NOTOK; } } static int -local_part (char *buffer) +local_part(char *buffer) { ingrp = glevel; for (;;) { - switch (my_lex (buffer)) { + switch (my_lex(buffer)) { case LX_ATOM: case LX_QSTR: - mbox = add (buffer, mbox); + mbox = add(buffer, mbox); break; default: - sprintf (err, "no mailbox in local-part (%s)", + sprintf(err, "no mailbox in local-part (%s)", buffer); return NOTOK; } - switch (my_lex (buffer)) { + switch (my_lex(buffer)) { case LX_DOT: - mbox = add (buffer, mbox); + mbox = add(buffer, mbox); continue; default: @@ -495,28 +495,28 @@ local_part (char *buffer) static int -domain (char *buffer) +domain(char *buffer) { for (;;) { - switch (my_lex (buffer)) { + switch (my_lex(buffer)) { case LX_ATOM: case LX_DLIT: - host = add (buffer, host); + host = add(buffer, host); break; default: - sprintf (err, "no sub-domain in domain-part of address (%s)", buffer); + sprintf(err, "no sub-domain in domain-part of address (%s)", buffer); return NOTOK; } - switch (my_lex (buffer)) { + switch (my_lex(buffer)) { case LX_DOT: - host = add (buffer, host); + host = add(buffer, host); continue; case LX_AT: /* sigh (0) */ - mbox = add (host, add ("%", mbox)); - free (host); + mbox = add(host, add("%", mbox)); + free(host); host = NULL; continue; @@ -528,35 +528,35 @@ domain (char *buffer) static int -route (char *buffer) +route(char *buffer) { - path = getcpy ("@"); + path = getcpy("@"); for (;;) { - switch (my_lex (buffer)) { + switch (my_lex(buffer)) { case LX_ATOM: case LX_DLIT: - path = add (buffer, path); + path = add(buffer, path); break; default: - sprintf (err, "no sub-domain in domain-part of address (%s)", buffer); + sprintf(err, "no sub-domain in domain-part of address (%s)", buffer); return NOTOK; } - switch (my_lex (buffer)) { + switch (my_lex(buffer)) { case LX_COMA: - path = add (buffer, path); + path = add(buffer, path); for (;;) { - switch (my_lex (buffer)) { + switch (my_lex(buffer)) { case LX_COMA: continue; case LX_AT: - path = add (buffer, path); + path = add(buffer, path); break; default: - sprintf (err, "no at-sign found for next domain in route (%s)", + sprintf(err, "no at-sign found for next domain in route (%s)", buffer); } break; @@ -565,15 +565,15 @@ route (char *buffer) case LX_AT: /* XXX */ case LX_DOT: - path = add (buffer, path); + path = add(buffer, path); continue; case LX_COLN: - path = add (buffer, path); + path = add(buffer, path); return OK; default: - sprintf (err, "no colon found to terminate route (%s)", buffer); + sprintf(err, "no colon found to terminate route (%s)", buffer); return NOTOK; } } @@ -581,7 +581,7 @@ route (char *buffer) static int -my_lex (char *buffer) +my_lex(char *buffer) { /* buffer should be at least BUFSIZ bytes long */ int i, gotat = 0; @@ -604,9 +604,9 @@ my_lex (char *buffer) if (!cp) return (last_lex = LX_END); - gotat = isat (cp); + gotat = isat(cp); c = *cp++; - while (isspace (c)) + while (isspace(c)) c = *cp++; if (c == 0) { cp = NULL; @@ -637,9 +637,8 @@ my_lex (char *buffer) ADDCHR(c); if (--i < 0) { *bp = 0; - note = note ? add (buffer, add (" ", note)) - : getcpy (buffer); - return my_lex (buffer); + note = note ? add(buffer, add(" ", note)) : getcpy(buffer); + return my_lex(buffer); } } } @@ -696,7 +695,7 @@ my_lex (char *buffer) if (c == special[i].lx_chr) return (last_lex = special[i].lx_val); - if (iscntrl (c)) + if (iscntrl(c)) return (last_lex = LX_ERR); for (;;) { @@ -705,7 +704,7 @@ my_lex (char *buffer) for (i = 0; special[i].lx_chr != 0; i++) if (c == special[i].lx_chr) goto got_atom; - if (iscntrl (c) || isspace (c)) + if (iscntrl(c) || isspace(c)) break; ADDCHR(c); } @@ -727,7 +726,7 @@ got_atom: ; char * -legal_person (char *p) +legal_person(char *p) { int i; register char *cp; @@ -738,7 +737,7 @@ legal_person (char *p) for (cp = p; *cp; cp++) for (i = 0; special[i].lx_chr; i++) if (*cp == special[i].lx_chr) { - sprintf (buffer, "\"%s\"", p); + sprintf(buffer, "\"%s\"", p); return buffer; }