From: Philipp Takacs Date: Sun, 24 Apr 2016 10:29:32 +0000 (+0200) Subject: check for to long lines and ioerror in spost X-Git-Tag: mmh-0.3~34 X-Git-Url: http://git.marmaro.de/?p=mmh;a=commitdiff_plain;h=2a903a43ad7d26f5581d4ad1bbc077f8ecc5f5a9 check for to long lines and ioerror in spost Now spost stop and exit if some error happend. Befor this spost stoped on an error in the body and submitted a half mail. --- diff --git a/uip/spost.c b/uip/spost.c index 53ae86a..4e9e7ce 100644 --- a/uip/spost.c +++ b/uip/spost.c @@ -244,6 +244,9 @@ main(int argc, char **argv) finish_headers(out); fprintf(out, "\n%s", f.value); while ((state = m_getfld2(state, &f, in)) == BODY2) { + if (f.valuelen >= NAMESZ) { + adios(EX_DATAERR, NULL, "Body contains a to long line"); + } fputs(f.value, out); } break; @@ -265,6 +268,10 @@ main(int argc, char **argv) } fclose(in); + if (status != FILEEOF2) { + adios(EX_IOERR, "m_getfld2", "Error while reading body"); + } + if (debug) { struct mailname *i = recipients; /* stop here */