Repository navigation
Commit 4aa3d90
committed
Reject empty header names on the outbound path
The inbound pipeline runs _reject_empty_header_names before
_reject_pseudo_header_fields, so an empty name is caught before the
`header[0][0]` lookup. The outbound pipeline has no such guard, so sending
a header block with an empty name raises IndexError from utilities.py:335
instead of ProtocolError.
Add the guard to validate_outbound_headers in the same position. The
message differs by direction, so the body is shared by
_validate_nonempty_header_names, mirroring how _check_host_authority_header
and _check_sent_host_authority_header already share
_validate_host_authority_header.1 parent bc239af commit 4aa3d90
2 files changed
Lines changed: 56 additions & 7 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
265 | 265 | | |
266 | 266 | | |
267 | 267 | | |
268 | | - | |
269 | | - | |
| 268 | + | |
270 | 269 | | |
271 | | - | |
272 | | - | |
273 | | - | |
274 | | - | |
| 270 | + | |
| 271 | + | |
| 272 | + | |
| 273 | + | |
275 | 274 | | |
276 | 275 | | |
277 | 276 | | |
278 | | - | |
279 | 277 | | |
280 | 278 | | |
281 | 279 | | |
282 | 280 | | |
| 281 | + | |
| 282 | + | |
| 283 | + | |
| 284 | + | |
| 285 | + | |
| 286 | + | |
| 287 | + | |
| 288 | + | |
| 289 | + | |
| 290 | + | |
| 291 | + | |
| 292 | + | |
| 293 | + | |
| 294 | + | |
| 295 | + | |
| 296 | + | |
| 297 | + | |
283 | 298 | | |
284 | 299 | | |
285 | 300 | | |
| |||
690 | 705 | | |
691 | 706 | | |
692 | 707 | | |
| 708 | + | |
| 709 | + | |
| 710 | + | |
693 | 711 | | |
694 | 712 | | |
695 | 713 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
672 | 672 | | |
673 | 673 | | |
674 | 674 | | |
| 675 | + | |
| 676 | + | |
| 677 | + | |
| 678 | + | |
| 679 | + | |
| 680 | + | |
| 681 | + | |
| 682 | + | |
| 683 | + | |
| 684 | + | |
| 685 | + | |
| 686 | + | |
| 687 | + | |
| 688 | + | |
| 689 | + | |
| 690 | + | |
| 691 | + | |
| 692 | + | |
| 693 | + | |
| 694 | + | |
| 695 | + | |
| 696 | + | |
| 697 | + | |
| 698 | + | |
| 699 | + | |
| 700 | + | |
| 701 | + | |
| 702 | + | |
| 703 | + | |
| 704 | + | |
| 705 | + | |
675 | 706 | | |
676 | 707 | | |
677 | 708 | | |
| |||
0 commit comments