Commit ed3edd4
committed
http2: add strictSingleValueFields option to relax header validation
Previously it was impossible to send multiple values for any header
or trailer defined officially as supporting only a single value.
This is a good default, but in practice many of these headers are used
in weird & wonderful ways where this can be problematic. This new
option allows for relaxing this restriction to support those cases
where required.
This option defaults to true so validation will still be applied
as before, rejecting multiple single-value fields, unless explicitly
disabled.1 parent f6ea5bf commit ed3edd4
File tree
8 files changed
+208
-44
lines changed- doc/api
- lib/internal
- http2
- quic
- test/parallel
8 files changed
+208
-44
lines changed| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
2792 | 2792 | | |
2793 | 2793 | | |
2794 | 2794 | | |
| 2795 | + | |
| 2796 | + | |
| 2797 | + | |
2795 | 2798 | | |
2796 | 2799 | | |
2797 | 2800 | | |
| |||
2929 | 2932 | | |
2930 | 2933 | | |
2931 | 2934 | | |
| 2935 | + | |
| 2936 | + | |
| 2937 | + | |
| 2938 | + | |
2932 | 2939 | | |
2933 | 2940 | | |
2934 | 2941 | | |
| |||
2986 | 2993 | | |
2987 | 2994 | | |
2988 | 2995 | | |
| 2996 | + | |
| 2997 | + | |
| 2998 | + | |
2989 | 2999 | | |
2990 | 3000 | | |
2991 | 3001 | | |
| |||
3104 | 3114 | | |
3105 | 3115 | | |
3106 | 3116 | | |
| 3117 | + | |
| 3118 | + | |
| 3119 | + | |
| 3120 | + | |
3107 | 3121 | | |
3108 | 3122 | | |
3109 | 3123 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
132 | 132 | | |
133 | 133 | | |
134 | 134 | | |
| 135 | + | |
135 | 136 | | |
136 | 137 | | |
137 | 138 | | |
| |||
144 | 145 | | |
145 | 146 | | |
146 | 147 | | |
| 148 | + | |
147 | 149 | | |
148 | 150 | | |
149 | 151 | | |
| |||
1311 | 1313 | | |
1312 | 1314 | | |
1313 | 1315 | | |
| 1316 | + | |
| 1317 | + | |
1314 | 1318 | | |
1315 | 1319 | | |
1316 | 1320 | | |
| |||
2350 | 2354 | | |
2351 | 2355 | | |
2352 | 2356 | | |
2353 | | - | |
| 2357 | + | |
| 2358 | + | |
| 2359 | + | |
| 2360 | + | |
| 2361 | + | |
2354 | 2362 | | |
2355 | 2363 | | |
2356 | 2364 | | |
| |||
2559 | 2567 | | |
2560 | 2568 | | |
2561 | 2569 | | |
2562 | | - | |
| 2570 | + | |
| 2571 | + | |
| 2572 | + | |
| 2573 | + | |
| 2574 | + | |
2563 | 2575 | | |
2564 | 2576 | | |
2565 | 2577 | | |
| |||
2662 | 2674 | | |
2663 | 2675 | | |
2664 | 2676 | | |
2665 | | - | |
| 2677 | + | |
| 2678 | + | |
| 2679 | + | |
| 2680 | + | |
| 2681 | + | |
2666 | 2682 | | |
2667 | 2683 | | |
2668 | 2684 | | |
| |||
2886 | 2902 | | |
2887 | 2903 | | |
2888 | 2904 | | |
2889 | | - | |
| 2905 | + | |
| 2906 | + | |
| 2907 | + | |
| 2908 | + | |
| 2909 | + | |
2890 | 2910 | | |
2891 | 2911 | | |
2892 | 2912 | | |
| |||
3150 | 3170 | | |
3151 | 3171 | | |
3152 | 3172 | | |
3153 | | - | |
| 3173 | + | |
| 3174 | + | |
| 3175 | + | |
| 3176 | + | |
| 3177 | + | |
3154 | 3178 | | |
3155 | 3179 | | |
3156 | 3180 | | |
| |||
3305 | 3329 | | |
3306 | 3330 | | |
3307 | 3331 | | |
3308 | | - | |
| 3332 | + | |
3309 | 3333 | | |
3310 | 3334 | | |
3311 | 3335 | | |
3312 | 3336 | | |
3313 | | - | |
| 3337 | + | |
3314 | 3338 | | |
3315 | 3339 | | |
3316 | 3340 | | |
3317 | 3341 | | |
3318 | | - | |
| 3342 | + | |
3319 | 3343 | | |
3320 | 3344 | | |
3321 | 3345 | | |
3322 | 3346 | | |
| 3347 | + | |
| 3348 | + | |
| 3349 | + | |
| 3350 | + | |
| 3351 | + | |
| 3352 | + | |
| 3353 | + | |
| 3354 | + | |
| 3355 | + | |
3323 | 3356 | | |
3324 | 3357 | | |
3325 | 3358 | | |
| |||
3522 | 3555 | | |
3523 | 3556 | | |
3524 | 3557 | | |
| 3558 | + | |
| 3559 | + | |
| 3560 | + | |
| 3561 | + | |
| 3562 | + | |
| 3563 | + | |
| 3564 | + | |
| 3565 | + | |
| 3566 | + | |
3525 | 3567 | | |
3526 | 3568 | | |
3527 | 3569 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
39 | 39 | | |
40 | 40 | | |
41 | 41 | | |
| 42 | + | |
42 | 43 | | |
43 | 44 | | |
44 | 45 | | |
| |||
121 | 122 | | |
122 | 123 | | |
123 | 124 | | |
124 | | - | |
| 125 | + | |
125 | 126 | | |
126 | 127 | | |
127 | 128 | | |
| |||
690 | 691 | | |
691 | 692 | | |
692 | 693 | | |
| 694 | + | |
693 | 695 | | |
694 | 696 | | |
695 | 697 | | |
| |||
731 | 733 | | |
732 | 734 | | |
733 | 735 | | |
734 | | - | |
| 736 | + | |
| 737 | + | |
| 738 | + | |
| 739 | + | |
| 740 | + | |
735 | 741 | | |
736 | 742 | | |
737 | 743 | | |
| |||
751 | 757 | | |
752 | 758 | | |
753 | 759 | | |
| 760 | + | |
| 761 | + | |
| 762 | + | |
| 763 | + | |
754 | 764 | | |
755 | 765 | | |
756 | 766 | | |
757 | | - | |
| 767 | + | |
| 768 | + | |
758 | 769 | | |
759 | 770 | | |
760 | 771 | | |
| |||
765 | 776 | | |
766 | 777 | | |
767 | 778 | | |
768 | | - | |
| 779 | + | |
| 780 | + | |
769 | 781 | | |
770 | 782 | | |
771 | 783 | | |
| |||
776 | 788 | | |
777 | 789 | | |
778 | 790 | | |
779 | | - | |
| 791 | + | |
780 | 792 | | |
781 | 793 | | |
782 | 794 | | |
783 | 795 | | |
784 | 796 | | |
785 | | - | |
| 797 | + | |
786 | 798 | | |
787 | 799 | | |
788 | 800 | | |
| |||
791 | 803 | | |
792 | 804 | | |
793 | 805 | | |
794 | | - | |
| 806 | + | |
795 | 807 | | |
796 | 808 | | |
797 | 809 | | |
| |||
893 | 905 | | |
894 | 906 | | |
895 | 907 | | |
896 | | - | |
| 908 | + | |
897 | 909 | | |
898 | 910 | | |
899 | 911 | | |
| |||
970 | 982 | | |
971 | 983 | | |
972 | 984 | | |
| 985 | + | |
973 | 986 | | |
974 | 987 | | |
975 | 988 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
109 | 109 | | |
110 | 110 | | |
111 | 111 | | |
| 112 | + | |
112 | 113 | | |
113 | 114 | | |
114 | 115 | | |
| |||
783 | 784 | | |
784 | 785 | | |
785 | 786 | | |
| 787 | + | |
| 788 | + | |
| 789 | + | |
| 790 | + | |
| 791 | + | |
786 | 792 | | |
787 | | - | |
| 793 | + | |
788 | 794 | | |
789 | 795 | | |
790 | 796 | | |
| |||
Lines changed: 53 additions & 0 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
| 1 | + | |
| 2 | + | |
| 3 | + | |
| 4 | + | |
| 5 | + | |
| 6 | + | |
| 7 | + | |
| 8 | + | |
| 9 | + | |
| 10 | + | |
| 11 | + | |
| 12 | + | |
| 13 | + | |
| 14 | + | |
| 15 | + | |
| 16 | + | |
| 17 | + | |
| 18 | + | |
| 19 | + | |
| 20 | + | |
| 21 | + | |
| 22 | + | |
| 23 | + | |
| 24 | + | |
| 25 | + | |
| 26 | + | |
| 27 | + | |
| 28 | + | |
| 29 | + | |
| 30 | + | |
| 31 | + | |
| 32 | + | |
| 33 | + | |
| 34 | + | |
| 35 | + | |
| 36 | + | |
| 37 | + | |
| 38 | + | |
| 39 | + | |
| 40 | + | |
| 41 | + | |
| 42 | + | |
| 43 | + | |
| 44 | + | |
| 45 | + | |
| 46 | + | |
| 47 | + | |
| 48 | + | |
| 49 | + | |
| 50 | + | |
| 51 | + | |
| 52 | + | |
| 53 | + | |
File renamed without changes.
Lines changed: 7 additions & 11 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
4 | 4 | | |
5 | 5 | | |
6 | 6 | | |
7 | | - | |
8 | | - | |
9 | | - | |
10 | | - | |
11 | | - | |
| 7 | + | |
12 | 8 | | |
13 | 9 | | |
14 | | - | |
15 | | - | |
16 | | - | |
17 | | - | |
18 | | - | |
| 10 | + | |
| 11 | + | |
| 12 | + | |
| 13 | + | |
| 14 | + | |
19 | 15 | | |
20 | | - | |
| 16 | + | |
21 | 17 | | |
22 | 18 | | |
23 | 19 | | |
| |||
0 commit comments