sqlmapproject/sqlmap · error · H2CompressionError

invalid Huffman EOS padding

Error message

invalid Huffman EOS padding

What it means

Error "invalid Huffman EOS padding" thrown in sqlmapproject/sqlmap.

Source

Thrown at lib/request/http2.py:363

    tail = 0
    for item in bytearray(data):
        for index in range(7, -1, -1):
            bit = (item >> index) & 1
            nxt = node.get(bit)
            if nxt is None:
                raise H2CompressionError("invalid Huffman sequence")
            consumed += 1
            tail = (tail << 1) | bit
            if isinstance(nxt, dict):
                node = nxt
            else:
                out.append(nxt)
                node = _HUFF_ROOT
                consumed = 0
                tail = 0
    if node is not _HUFF_ROOT:
        if consumed > 7 or tail != (1 << consumed) - 1:
            raise H2CompressionError("invalid Huffman EOS padding")
    return bytes(out)


# ---------- HPACK integer/string ----------
def encode_integer(value, prefix_bits, first_byte=0):
    if not isinstance(value, integer_types) or value < 0:
        raise ValueError("HPACK integer must be non-negative")
    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)

View on GitHub (pinned to 0a35b20e39)

When it happens

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