/* chunked encoding - ignore Content-Length header, prepare for a chunk */
return 2;
} else if (parser->flags & F_TRANSFER_ENCODING) {
- if (parser->type == HTTP_REQUEST && (parser->flags & F_LENIENT) == 0) {
+ if (parser->type == HTTP_REQUEST &&
+ (parser->lenient_flags & LENIENT_CHUNKED_LENGTH) == 0) {
/* RFC 7230 3.3.3 */
/* If a Transfer-Encoding header field
should_keep_alive = llhttp_should_keep_alive(parser);
parser->finish = HTTP_FINISH_SAFE;
-
- /* Keep `F_LENIENT` flag between messages, but reset every other flag */
- parser->flags &= F_LENIENT;
+ parser->flags = 0;
/* NOTE: this is ignored in loose parsing mode */
return should_keep_alive;