nxt_http_parse.c (576:7567b2a5ebfb) nxt_http_parse.c (577:000a777d3716)
1
2/*
3 * Copyright (C) NGINX, Inc.
4 * Copyright (C) Valentin V. Bartenev
5 */
6
7#include <nxt_main.h>
8

--- 604 unchanged lines hidden (view full) ---

613
614 for ( ;; ) {
615 if (nxt_slow_path(p == end)) {
616 *pos = p;
617 rp->handler = &nxt_http_parse_field_value;
618 return NXT_AGAIN;
619 }
620
1
2/*
3 * Copyright (C) NGINX, Inc.
4 * Copyright (C) Valentin V. Bartenev
5 */
6
7#include <nxt_main.h>
8

--- 604 unchanged lines hidden (view full) ---

613
614 for ( ;; ) {
615 if (nxt_slow_path(p == end)) {
616 *pos = p;
617 rp->handler = &nxt_http_parse_field_value;
618 return NXT_AGAIN;
619 }
620
621 if (*p != ' ') {
621 ch = *p;
622
623 if (ch != ' ' && ch != '\t') {
622 break;
623 }
624
625 p++;
626 }
627
628 start = p;
629

--- 27 unchanged lines hidden (view full) ---

657 }
658
659 p++;
660 }
661
662 *pos = p;
663
664 if (nxt_fast_path(p != start)) {
624 break;
625 }
626
627 p++;
628 }
629
630 start = p;
631

--- 27 unchanged lines hidden (view full) ---

659 }
660
661 p++;
662 }
663
664 *pos = p;
665
666 if (nxt_fast_path(p != start)) {
665 while (p[-1] == ' ') {
667
668 while (p[-1] == ' ' || p[-1] == '\t') {
666 p--;
667 }
668 }
669
670 len = p - start;
671
672 if (nxt_slow_path(len > NXT_HTTP_MAX_FIELD_VALUE)) {
673 return NXT_HTTP_PARSE_TOO_LARGE_FIELD;

--- 591 unchanged lines hidden ---
669 p--;
670 }
671 }
672
673 len = p - start;
674
675 if (nxt_slow_path(len > NXT_HTTP_MAX_FIELD_VALUE)) {
676 return NXT_HTTP_PARSE_TOO_LARGE_FIELD;

--- 591 unchanged lines hidden ---