Skip to main content

tarball_httpd

Serves directories as .TARs (tarball archives) over http - to be downloaded by a web browser

  • tarball_httpd extends pythons http.server/SimpleHTTPServer to serve directories as tarballs

  • the goal is to do this without creating the tarball in memory at one time

  • as much code as possible has been borrowed from python3’s http.server

Todo

  • doublecheck for XSS, LFI, directory traversal vulnerabilities

  • add more supported archive files: zip, non compressed zip, gz/gz2, ..

  • test on bsd, mac and windows

Install

% pip install tarball_httpd

Usage

% python -m tarball_httpd
  Serving HTTP on 0.0.0.0 port 8000 (http://0.0.0.0:8000/) ...

% python -m tarball_httpd 12345 --bind 127.0.0.1 --directory /tmp
  Serving HTTP on 127.0.0.1 port 12345 (http://127.0.0.1:12345/) ..

% python -m tarball_httpd -h
  usage: tarball_httpd.py [-h] [--bind ADDRESS] [--directory DIRECTORY] [port]

  positional arguments:
    port                  Specify alternate port [default: 8000]

  optional arguments:
    -h, --help            show this help message and exit
    --bind ADDRESS, -b ADDRESS
                        Specify alternate bind address [default: all interfaces]
    --directory DIRECTORY, -d DIRECTORY
                        Specify alternative directory [default:current directory]

Usage without installation

% git clone git@github.com:zrthstr/tarball_httpd.git
% cd tarball_httpd
% ./tarball_httpd.py
  Serving HTTP on 0.0.0.0 port 8000 (http://0.0.0.0:8000/) ...

Testing

% ./tests/test.sh

License

This project is licensed under the PSF License - see the LICENSE file for details

Authors and Acknowledgments

Largs parts of its code are based on or copied from python3/lib/http/server

tarball_httpd was written by zrth1k@gmail.com

Metadata

Release files for tarball-httpd 0.0.3

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for tarball-httpd 0.0.3
File Size Uploaded Provenance Actions
tarball_httpd-0.0.3.tar.gz 5.0 kB Without provenance Details for tarball_httpd-0.0.3.tar.gz

Built distribution (wheel)

Table of built distributions (wheels) for tarball-httpd 0.0.3
File Interpreter ABI Platform Actions
tarball_httpd-0.0.3-py3-none-any.whl Python 3 none any Details for tarball_httpd-0.0.3-py3-none-any.whl

Total release size: 11.5 kB

Release files / tarball_httpd-0.0.3.tar.gz

Download URL tarball_httpd-0.0.3.tar.gz
Size 5.0 kB
Tags Source
SHA-256 checksum
How to use checksums
c547283b3409ab81293d22ccace441b000e9e5d2bb8c214f19277c251f032ce0
BLAKE2b-256 checksum
How to use checksums
a11007a0b19377c3f38d5d1d0541c7215fa3c79aa98b475f5cf95b31255d2df2
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/3.2.0 pkginfo/1.5.0.1 requests/2.24.0 setuptools/49.2.0 requests-toolbelt/0.9.1 tqdm/4.48.2 CPython/3.8.4

Release files / tarball_httpd-0.0.3-py3-none-any.whl

Download URL tarball_httpd-0.0.3-py3-none-any.whl
Size 6.6 kB
Tags Python 3
SHA-256 checksum
How to use checksums
ee605582f579826bba56ff042365b9a76ef9c72b57489e524216e03f33df34e5
BLAKE2b-256 checksum
How to use checksums
cab5cc8a7c4a8583272b03ecfe86155b982ea3227744eba3e632dee5506c0dd0
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/3.2.0 pkginfo/1.5.0.1 requests/2.24.0 setuptools/49.2.0 requests-toolbelt/0.9.1 tqdm/4.48.2 CPython/3.8.4

Security for tarball-httpd 0.0.3

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

No provenance found

None of the files in this release were uploaded with provenance metadata.

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

To learn more about protecting yourself from malicious actors, visit our package security documentation.

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page