sqlmapproject/sqlmap · error · H2ProtocolError

authority is required

Error message

authority is required

What it means

Error "authority is required" thrown in sqlmapproject/sqlmap.

Source

Thrown at lib/request/http2.py:755

            content_length_added = True
        normalized.append((name, value))

    if content_lengths:
        if len(set(content_lengths)) != 1 or not content_lengths[0].isdigit():
            raise H2ProtocolError("invalid or conflicting content-length fields")
        expected = len(body)
        if int(content_lengths[0]) != expected:
            raise H2ProtocolError("content-length does not match request body")
    return normalized


def _request_header_list(method, path, authority, headers, body):
    method = _as_bytes(method)
    authority = _as_bytes(authority)
    path = _as_bytes(path)
    _validate_method(method)
    if not authority:
        raise H2ProtocolError("authority is required")
    _validate_pseudo_value(":authority", authority)
    if method == b"CONNECT":
        request = [(b":method", method), (b":authority", authority)]
    else:
        if not path:
            raise H2ProtocolError("non-CONNECT requests require a non-empty :path")
        _validate_pseudo_value(":path", path)
        request = [(b":method", method), (b":scheme", b"https"), (b":path", path), (b":authority", authority)]
    request.extend(_normalize_request_headers(headers, body))
    return request


def _field_section_size(headers):
    return sum(32 + len(name) + len(value) for name, value in headers)


def _header_frames(stream_id, block, max_frame_size, end_stream):
    if max_frame_size < DEFAULT_MAX_FRAME_SIZE:

View on GitHub (pinned to 0a35b20e39)

When it happens

Trigger: Thrown at lib/request/http2.py:755 when the library encounters an invalid state.

Common situations: See trigger scenarios.


AI-assisted analysis of sqlmapproject/sqlmap@0a35b20e39 (2026-08-26). Data as JSON: /api/errors/8bf5348feafefba3. Report an issue: GitHub.