(headers: dns.quic.Headers, peer: str, wire: bytes)
| 657 | |
| 658 | |
| 659 | def _check_status(headers: dns.quic.Headers, peer: str, wire: bytes) -> None: |
| 660 | value = _find_header(headers, b":status") |
| 661 | if value is None: |
| 662 | raise SyntaxError("no :status header in response") |
| 663 | status = int(value) |
| 664 | if status < 0: |
| 665 | raise SyntaxError("status is negative") |
| 666 | if status < 200 or status > 299: |
| 667 | error = "" |
| 668 | if len(wire) > 0: |
| 669 | try: |
| 670 | error = ": " + wire.decode() |
| 671 | except Exception: |
| 672 | pass |
| 673 | raise ValueError(f"{peer} responded with status code {status}{error}") |
| 674 | |
| 675 | |
| 676 | def _http3( |
no test coverage detected
searching dependent graphs…