Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Use simpler method to inflate raw payload #4

Open
claui opened this issue Jan 16, 2025 · 0 comments
Open

Use simpler method to inflate raw payload #4

claui opened this issue Jan 16, 2025 · 0 comments
Labels
enhancement New feature or request

Comments

@claui
Copy link
Owner

claui commented Jan 16, 2025

Instead of tacking on a bogus Zip header, use the zlib battery to inflate the raw compressed payload directly:

"""Manage raw compressed DEFLATE (zlib) payloads."""

import fileinput
import sys
import zlib

def inflate_raw(compressed_payload: bytes) -> bytes:
    """Decompress a raw compressed DEFLATE (zlib) payload.

    :return:
        the inflated (decompressed) payload.
    """
    return zlib.decompress(compressed_payload, -15)

if __name__ == '__main__':
    with fileinput.input(mode='rb') as io_chunks:
        sys.stdout.buffer.write(inflate_raw(b''.join(list(io_chunks))))
@claui claui added the enhancement New feature or request label Jan 16, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request
Projects
None yet
Development

No branches or pull requests

1 participant