Commit b9212e4
committed
Improve compliance with RFC 9112 for status line parsing
This patch improves compliance with RFC 9112 Section 4 for parsing the
status-line of the HTTP response.
- Require the HTTP version to be in the format "HTTP/x.y"
- Disallow cases like "http/1.1" (lowercase "http"), "HTTP" (missing
version), "HTTP/10.23" (multidigit versions)
- Require a space between the status-code and the reason-phrase, even
when the reason-phrase is empty
- Disallow cases like "HTTP/1.1 200" (missing space after status code)
- Make clear that SP parsing operates on the lenient behavior, which
allows 'HTAB, VT (%x0B), FF (%x0C), or bare CR' in addition to space1 parent b9683ee commit b9212e4
2 files changed
Lines changed: 91 additions & 20 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
157 | 157 | | |
158 | 158 | | |
159 | 159 | | |
160 | | - | |
| 160 | + | |
161 | 161 | | |
162 | 162 | | |
163 | 163 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
639 | 639 | | |
640 | 640 | | |
641 | 641 | | |
642 | | - | |
| 642 | + | |
| 643 | + | |
| 644 | + | |
| 645 | + | |
| 646 | + | |
| 647 | + | |
| 648 | + | |
| 649 | + | |
| 650 | + | |
| 651 | + | |
| 652 | + | |
| 653 | + | |
| 654 | + | |
| 655 | + | |
| 656 | + | |
| 657 | + | |
643 | 658 | | |
644 | | - | |
| 659 | + | |
645 | 660 | | |
646 | 661 | | |
647 | 662 | | |
| |||
653 | 668 | | |
654 | 669 | | |
655 | 670 | | |
656 | | - | |
| 671 | + | |
657 | 672 | | |
658 | | - | |
| 673 | + | |
659 | 674 | | |
660 | 675 | | |
661 | 676 | | |
662 | 677 | | |
663 | 678 | | |
664 | 679 | | |
665 | | - | |
666 | | - | |
667 | | - | |
668 | | - | |
| 680 | + | |
| 681 | + | |
| 682 | + | |
669 | 683 | | |
670 | 684 | | |
671 | | - | |
| 685 | + | |
672 | 686 | | |
673 | | - | |
| 687 | + | |
| 688 | + | |
| 689 | + | |
| 690 | + | |
| 691 | + | |
| 692 | + | |
| 693 | + | |
| 694 | + | |
| 695 | + | |
| 696 | + | |
| 697 | + | |
| 698 | + | |
| 699 | + | |
| 700 | + | |
| 701 | + | |
| 702 | + | |
| 703 | + | |
| 704 | + | |
| 705 | + | |
| 706 | + | |
| 707 | + | |
| 708 | + | |
| 709 | + | |
| 710 | + | |
| 711 | + | |
| 712 | + | |
| 713 | + | |
| 714 | + | |
| 715 | + | |
| 716 | + | |
| 717 | + | |
| 718 | + | |
| 719 | + | |
| 720 | + | |
| 721 | + | |
| 722 | + | |
| 723 | + | |
| 724 | + | |
| 725 | + | |
| 726 | + | |
| 727 | + | |
| 728 | + | |
| 729 | + | |
| 730 | + | |
| 731 | + | |
674 | 732 | | |
675 | 733 | | |
676 | 734 | | |
| |||
680 | 738 | | |
681 | 739 | | |
682 | 740 | | |
683 | | - | |
| 741 | + | |
684 | 742 | | |
685 | 743 | | |
686 | | - | |
| 744 | + | |
687 | 745 | | |
688 | 746 | | |
689 | 747 | | |
690 | 748 | | |
691 | 749 | | |
| 750 | + | |
| 751 | + | |
| 752 | + | |
| 753 | + | |
| 754 | + | |
| 755 | + | |
| 756 | + | |
| 757 | + | |
| 758 | + | |
| 759 | + | |
| 760 | + | |
| 761 | + | |
| 762 | + | |
| 763 | + | |
692 | 764 | | |
693 | 765 | | |
694 | 766 | | |
695 | 767 | | |
696 | 768 | | |
697 | 769 | | |
698 | | - | |
| 770 | + | |
699 | 771 | | |
700 | 772 | | |
701 | | - | |
| 773 | + | |
702 | 774 | | |
703 | | - | |
| 775 | + | |
704 | 776 | | |
705 | 777 | | |
706 | 778 | | |
707 | 779 | | |
708 | 780 | | |
709 | 781 | | |
710 | 782 | | |
711 | | - | |
712 | | - | |
713 | | - | |
714 | | - | |
| 783 | + | |
| 784 | + | |
| 785 | + | |
715 | 786 | | |
716 | 787 | | |
717 | 788 | | |
| |||
0 commit comments