sqlmapproject/sqlmap · error · H2CompressionError

HPACK integer exceeds implementation limit

Error message

HPACK integer exceeds implementation limit

What it means

Error "HPACK integer exceeds implementation limit" thrown in sqlmapproject/sqlmap.

Source

Thrown at lib/request/http2.py:403

def decode_integer(data, pos, prefix_bits, max_value=MAX_HPACK_INTEGER):
    if not 1 <= prefix_bits <= 8:
        raise H2CompressionError("invalid HPACK prefix width")
    if pos < 0 or pos >= len(data):
        raise H2CompressionError("truncated HPACK integer")
    mask = (1 << prefix_bits) - 1
    value = data[pos] & mask
    pos += 1
    if value < mask:
        return value, pos
    shift = 0
    while True:
        if pos >= len(data):
            raise H2CompressionError("truncated HPACK integer")
        item = data[pos]
        pos += 1
        addend = (item & 0x7f) << shift
        if addend > max_value - value:
            raise H2CompressionError("HPACK integer exceeds implementation limit")
        value += addend
        if not (item & 0x80):
            return value, pos
        shift += 7
        if shift > 28:
            raise H2CompressionError("HPACK integer encoding is too long")


def encode_string(value, huffman=True):
    value = _as_bytes(value)
    if huffman:
        encoded = huffman_encode(value)
        if len(encoded) < len(value):
            return encode_integer(len(encoded), 7, 0x80) + bytearray(encoded)
    return encode_integer(len(value), 7, 0x00) + bytearray(value)


def decode_string(data, pos):

View on GitHub (pinned to 0a35b20e39)

When it happens

Trigger: Thrown at lib/request/http2.py:403 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/a5f3b4838d50cb0b. Report an issue: GitHub.