smtp: add data reader fuzzer + fix OOB read

This commit is contained in:
Martin Holst Swende
2025-03-06 09:57:13 +01:00
parent 44d37892b8
commit f10bb2c1ae
2 changed files with 7 additions and 1 deletions

View File

@ -135,7 +135,7 @@ func (r *DataReader) Read(p []byte) (int, error) {
if len(r.buf) > 0 {
// Reject bare \r.
for i, c := range r.buf {
if c == '\r' && (i == len(r.buf) || r.buf[i+1] != '\n') {
if c == '\r' && (i == len(r.buf)-1 || r.buf[i+1] != '\n') {
r.badcrlf = true
}
}