Kumi
b99ea03635
Enhanced both FicheServer and LinesServer to reject data transfers exceeding a 5MB limit by introducing a max_size parameter across server classes, request handlers, and CLI arguments. This change improves system stability and security by preventing excessive resource use. Additionally, customized HTTP responses are provided for missing or invalid Content-Length headers and oversized files, creating a clearer client-server communication and ensuring better request validation logic. |
||
---|---|---|
src/pyfiche | ||
.gitignore | ||
LICENSE | ||
pyproject.toml | ||
README.md |
PyFiche
PyFiche is a simple pastebin optimized for the command line, written in Python and heavily inspired by fiche, or rather a shameless translation. It has no dependencies outside the Python standard library.
It also comes with a re-implementation of Lines, the HTTP server that comes with Fiche, which this time around also allows you to upload files using POST requests. Additionally, PyFiche also comes with a simple TCP server, Recup, to download pastes through netcat without using HTTP(S), in the same way you upload them.
Installation
Dependencies
- Python 3 (tested with 3.11)
Local Installation
$ python -m venv venv
$ source venv/bin/activate
$ pip install -U git+https://kumig.it/PrivateCoffee/pyfiche.git
Usage
Fiche Server
$ source venv/bin/activate
$ pyfiche-server # try --help for options
With the exception of the -u
option, all arguments of the original Fiche
should work as expected. -u
is not implemented because, well, just use the
right user in the first place. 🤷♀️
Recup Server
$ source venv/bin/activate
$ pyfiche-recup # try --help for options
Lines Server
$ source venv/bin/activate
$ pyfiche-lines # try --help for options
License
PyFiche is licensed under the MIT license. See the LICENSE file for more information.