Browse Source

[Minor] Relax requirements to find end-of-headers

Issue: #2349
tags/1.7.9
Vsevolod Stakhov 5 years ago
parent
commit
e591dcd91f
1 changed files with 16 additions and 0 deletions
  1. 16
    0
      src/libutil/str_util.c

+ 16
- 0
src/libutil/str_util.c View File

@@ -1455,6 +1455,10 @@ rspamd_string_find_eoh (GString *input, goffset *body_start)
p++;
state = got_lf;
}
else if (g_ascii_isspace (*p)) {
/* We have \r<space>*, allow to stay in this state */
p ++;
}
else {
p++;
state = skip_char;
@@ -1471,6 +1475,10 @@ rspamd_string_find_eoh (GString *input, goffset *body_start)
else if (*p == '\r') {
state = got_linebreak;
}
else if (g_ascii_isspace (*p)) {
/* We have \n<space>*, allow to stay in this state */
p ++;
}
else {
p++;
state = skip_char;
@@ -1487,6 +1495,10 @@ rspamd_string_find_eoh (GString *input, goffset *body_start)
p++;
state = got_linebreak_lf;
}
else if (g_ascii_isspace (*p)) {
/* We have <linebreak><space>*, allow to stay in this state */
p ++;
}
else {
p++;
state = skip_char;
@@ -1502,6 +1514,10 @@ rspamd_string_find_eoh (GString *input, goffset *body_start)
state = got_linebreak_lf;
p++;
}
else if (g_ascii_isspace (*p)) {
/* We have \r\n<space>*, allow to keep in this state */
p ++;
}
else {
p++;
state = skip_char;

Loading…
Cancel
Save