Uh oh!
There was an error while loading. Please reload this page.
Commit 0a6672f
http2: fix several serious bugs
Currently http2 does not properly submit GOAWAY frames when a session
is being destroyed. It also doesn't properly handle when the other
party severs the connection after sending a GOAWAY frame, even though
it should.
Edge, IE & Safari are currently unable to handle empty TRAILERS
frames despite them being correctly to spec. Instead send an empty
DATA frame with END_STREAM flag in those situations.
Fix and adjust several flaky and/or incorrect tests.
Backport-PR-URL: #22850
PR-URL: #20772Fixes: #20705Fixes: #20750Fixes: #20850
Reviewed-By: Matteo Collina <matteo.collina@gmail.com>
Reviewed-By: Rich Trott <rtrott@gmail.com>
Reviewed-By: James M Snell <jasnell@gmail.com>1 parent 11a63dd commit 0a6672f
14 files changed
Lines changed: 145 additions & 115 deletions
File tree
- doc/api
- lib/internal/http2
- src
- test/parallel
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
884 | 884 | | |
885 | 885 | | |
886 | 886 | | |
| 887 | + | |
| 888 | + | |
| 889 | + | |
| 890 | + | |
887 | 891 | | |
888 | 892 | | |
889 | 893 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
292 | 292 | | |
293 | 293 | | |
294 | 294 | | |
295 | | - | |
| 295 | + | |
296 | 296 | | |
297 | | - | |
| 297 | + | |
298 | 298 | | |
299 | 299 | | |
300 | 300 | | |
301 | 301 | | |
302 | 302 | | |
303 | 303 | | |
304 | | - | |
305 | | - | |
306 | | - | |
307 | | - | |
| 304 | + | |
| 305 | + | |
| 306 | + | |
| 307 | + | |
| 308 | + | |
| 309 | + | |
| 310 | + | |
308 | 311 | | |
| 312 | + | |
| 313 | + | |
309 | 314 | | |
310 | 315 | | |
311 | 316 | | |
| |||
330 | 335 | | |
331 | 336 | | |
332 | 337 | | |
333 | | - | |
| 338 | + | |
334 | 339 | | |
335 | 340 | | |
336 | 341 | | |
| |||
421 | 426 | | |
422 | 427 | | |
423 | 428 | | |
424 | | - | |
| 429 | + | |
425 | 430 | | |
426 | 431 | | |
427 | 432 | | |
| |||
772 | 777 | | |
773 | 778 | | |
774 | 779 | | |
| 780 | + | |
| 781 | + | |
| 782 | + | |
| 783 | + | |
| 784 | + | |
| 785 | + | |
| 786 | + | |
| 787 | + | |
| 788 | + | |
| 789 | + | |
| 790 | + | |
| 791 | + | |
| 792 | + | |
| 793 | + | |
| 794 | + | |
775 | 795 | | |
776 | 796 | | |
777 | 797 | | |
| |||
828 | 848 | | |
829 | 849 | | |
830 | 850 | | |
| 851 | + | |
| 852 | + | |
831 | 853 | | |
832 | 854 | | |
833 | 855 | | |
| |||
1130 | 1152 | | |
1131 | 1153 | | |
1132 | 1154 | | |
1133 | | - | |
| 1155 | + | |
1134 | 1156 | | |
1135 | 1157 | | |
1136 | | - | |
1137 | | - | |
1138 | | - | |
1139 | | - | |
1140 | | - | |
1141 | | - | |
1142 | | - | |
1143 | | - | |
1144 | | - | |
1145 | | - | |
1146 | | - | |
1147 | | - | |
1148 | | - | |
1149 | | - | |
1150 | | - | |
1151 | | - | |
| 1158 | + | |
| 1159 | + | |
| 1160 | + | |
| 1161 | + | |
1152 | 1162 | | |
1153 | 1163 | | |
1154 | 1164 | | |
| |||
1422 | 1432 | | |
1423 | 1433 | | |
1424 | 1434 | | |
1425 | | - | |
1426 | | - | |
1427 | | - | |
| 1435 | + | |
1428 | 1436 | | |
1429 | | - | |
1430 | 1437 | | |
1431 | 1438 | | |
1432 | 1439 | | |
| |||
1441 | 1448 | | |
1442 | 1449 | | |
1443 | 1450 | | |
| 1451 | + | |
| 1452 | + | |
| 1453 | + | |
| 1454 | + | |
| 1455 | + | |
| 1456 | + | |
| 1457 | + | |
| 1458 | + | |
| 1459 | + | |
| 1460 | + | |
1444 | 1461 | | |
1445 | 1462 | | |
1446 | 1463 | | |
| |||
1502 | 1519 | | |
1503 | 1520 | | |
1504 | 1521 | | |
| 1522 | + | |
| 1523 | + | |
| 1524 | + | |
| 1525 | + | |
1505 | 1526 | | |
1506 | 1527 | | |
1507 | 1528 | | |
| |||
1510 | 1531 | | |
1511 | 1532 | | |
1512 | 1533 | | |
1513 | | - | |
1514 | 1534 | | |
1515 | 1535 | | |
1516 | 1536 | | |
| |||
1717 | 1737 | | |
1718 | 1738 | | |
1719 | 1739 | | |
| 1740 | + | |
| 1741 | + | |
| 1742 | + | |
| 1743 | + | |
1720 | 1744 | | |
1721 | 1745 | | |
1722 | 1746 | | |
| |||
1765 | 1789 | | |
1766 | 1790 | | |
1767 | 1791 | | |
1768 | | - | |
1769 | | - | |
1770 | | - | |
1771 | | - | |
1772 | | - | |
1773 | | - | |
1774 | | - | |
| 1792 | + | |
| 1793 | + | |
1775 | 1794 | | |
1776 | 1795 | | |
1777 | 1796 | | |
| |||
1861 | 1880 | | |
1862 | 1881 | | |
1863 | 1882 | | |
1864 | | - | |
1865 | | - | |
1866 | | - | |
| 1883 | + | |
| 1884 | + | |
| 1885 | + | |
1867 | 1886 | | |
1868 | 1887 | | |
1869 | 1888 | | |
1870 | 1889 | | |
1871 | | - | |
1872 | | - | |
| 1890 | + | |
| 1891 | + | |
1873 | 1892 | | |
1874 | 1893 | | |
1875 | 1894 | | |
| |||
1882 | 1901 | | |
1883 | 1902 | | |
1884 | 1903 | | |
1885 | | - | |
| 1904 | + | |
1886 | 1905 | | |
1887 | 1906 | | |
1888 | 1907 | | |
| |||
2445 | 2464 | | |
2446 | 2465 | | |
2447 | 2466 | | |
| 2467 | + | |
| 2468 | + | |
| 2469 | + | |
| 2470 | + | |
2448 | 2471 | | |
2449 | 2472 | | |
2450 | 2473 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
631 | 631 | | |
632 | 632 | | |
633 | 633 | | |
634 | | - | |
| 634 | + | |
635 | 635 | | |
636 | | - | |
| 636 | + | |
637 | 637 | | |
638 | 638 | | |
639 | 639 | | |
640 | 640 | | |
641 | 641 | | |
642 | 642 | | |
643 | 643 | | |
644 | | - | |
| 644 | + | |
645 | 645 | | |
646 | 646 | | |
647 | | - | |
648 | 647 | | |
649 | 648 | | |
| 649 | + | |
650 | 650 | | |
651 | 651 | | |
652 | 652 | | |
653 | 653 | | |
| 654 | + | |
| 655 | + | |
654 | 656 | | |
655 | 657 | | |
656 | 658 | | |
| |||
1387 | 1389 | | |
1388 | 1390 | | |
1389 | 1391 | | |
| 1392 | + | |
| 1393 | + | |
| 1394 | + | |
| 1395 | + | |
| 1396 | + | |
| 1397 | + | |
| 1398 | + | |
1390 | 1399 | | |
1391 | 1400 | | |
1392 | 1401 | | |
1393 | 1402 | | |
1394 | 1403 | | |
| 1404 | + | |
| 1405 | + | |
1395 | 1406 | | |
1396 | 1407 | | |
1397 | 1408 | | |
1398 | | - | |
| 1409 | + | |
| 1410 | + | |
| 1411 | + | |
1399 | 1412 | | |
1400 | 1413 | | |
1401 | 1414 | | |
1402 | 1415 | | |
1403 | | - | |
1404 | | - | |
1405 | 1416 | | |
1406 | 1417 | | |
1407 | | - | |
1408 | | - | |
1409 | 1418 | | |
1410 | 1419 | | |
1411 | 1420 | | |
| |||
1525 | 1534 | | |
1526 | 1535 | | |
1527 | 1536 | | |
1528 | | - | |
1529 | | - | |
| 1537 | + | |
1530 | 1538 | | |
1531 | 1539 | | |
1532 | 1540 | | |
| |||
1691 | 1699 | | |
1692 | 1700 | | |
1693 | 1701 | | |
1694 | | - | |
1695 | | - | |
| 1702 | + | |
1696 | 1703 | | |
1697 | 1704 | | |
1698 | 1705 | | |
| |||
1928 | 1935 | | |
1929 | 1936 | | |
1930 | 1937 | | |
| 1938 | + | |
1931 | 1939 | | |
1932 | 1940 | | |
1933 | 1941 | | |
| |||
1936 | 1944 | | |
1937 | 1945 | | |
1938 | 1946 | | |
1939 | | - | |
| 1947 | + | |
| 1948 | + | |
| 1949 | + | |
| 1950 | + | |
| 1951 | + | |
| 1952 | + | |
| 1953 | + | |
| 1954 | + | |
| 1955 | + | |
| 1956 | + | |
1940 | 1957 | | |
1941 | 1958 | | |
1942 | 1959 | | |
| |||
2562 | 2579 | | |
2563 | 2580 | | |
2564 | 2581 | | |
2565 | | - | |
2566 | | - | |
| 2582 | + | |
2567 | 2583 | | |
2568 | 2584 | | |
2569 | 2585 | | |
| |||
2578 | 2594 | | |
2579 | 2595 | | |
2580 | 2596 | | |
2581 | | - | |
| 2597 | + | |
2582 | 2598 | | |
2583 | 2599 | | |
2584 | 2600 | | |
| |||
0 commit comments