int
isfrom(const char *string)
{
- return (strncmp (string, "From ", 5) == 0
- || strncmp (string, ">From ", 6) == 0);
+ return (has_prefix(string, "From ")
+ || has_prefix(string, ">From "));
}
int
lequal (const char *a, const char *b)
{
- for (; *a; a++, b++)
+ char c1, c2;
+
+ for (; *a; a++, b++) {
if (*b == 0)
return FALSE;
- else {
- char c1 = islower ((unsigned char) *a) ?
- toupper ((unsigned char) *a) : *a;
- char c2 = islower ((unsigned char) *b) ?
- toupper ((unsigned char) *b) : *b;
- if (c1 != c2)
- return FALSE;
- }
+ c1 = toupper((unsigned char)*a);
+ c2 = toupper((unsigned char)*b);
+ if (c1 != c2)
+ return FALSE;
+ }
return (*b == 0);
}
static int
isat (const char *p)
{
- return (strncmp (p, " AT ", 4)
- && strncmp (p, " At ", 4)
- && strncmp (p, " aT ", 4)
- && strncmp (p, " at ", 4) ? FALSE : TRUE);
+ return has_prefix(p, " AT ") || has_prefix(p, " At ") ||
+ has_prefix(p, " aT ") || has_prefix(p, " at ");
}
char *bp;
struct adrx *adrxp = &adrxs2;
- if (pers)
- free (pers);
- if (mbox)
- free (mbox);
- if (host)
- free (host);
- if (path)
- free (path);
- if (grp)
- free (grp);
- if (note)
- free (note);
+ mh_xfree(pers);
+ mh_xfree(mbox);
+ mh_xfree(host);
+ mh_xfree(path);
+ mh_xfree(grp);
+ mh_xfree(note);
pers = mbox = host = path = grp = note = NULL;
err[0] = 0;
strcpy (err, "extraneous semi-colon");
return NOTOK;
}
+ /* FALLTHRU */
case LX_COMA:
- if (note) {
- free (note);
- note = NULL;
- }
+ mh_xfree(note);
+ note = NULL;
goto again;
case LX_END:
strcpy (err, "extraneous semi-colon");
return NOTOK;
}
+ /* FALLTHRU */
case LX_COMA:
case LX_END:
return OK;
continue;
case '(':
i++;
+ /* FALLTHRU */
default:
ADDCHR(c);
continue;
cp = NULL;
return (last_lex = LX_ERR);
}
+ /* FALLTHRU */
default:
ADDCHR(c);
continue;
cp = NULL;
return (last_lex = LX_ERR);
}
+ /* FALLTHRU */
default:
ADDCHR(c);
continue;
case '\t':
*cp++ = '\n';
break;
- } /* fall into default case */
+ }
+ /* FALLTHRU */
default:
*cp++ = i;