sqlmapproject/sqlmap · error · H2CompressionError

truncated HPACK integer

Error message

truncated HPACK integer

What it means

Error "truncated HPACK integer" thrown in sqlmapproject/sqlmap.

Source

Thrown at lib/request/http2.py:389

    if not 1 <= prefix_bits <= 8:
        raise ValueError("invalid HPACK prefix width")
    mask = (1 << prefix_bits) - 1
    if value < mask:
        return bytearray([first_byte | value])
    out = bytearray([first_byte | mask])
    value -= mask
    while value >= 0x80:
        out.append((value & 0x7f) | 0x80)
        value >>= 7
    out.append(value)
    return out


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

View on GitHub (pinned to 0a35b20e39)

When it happens

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