Powering https://unsha.re
Find a file
Thorsten Schubert 94b7750c0a
Some checks failed
continuous-integration/drone/push Build is passing
continuous-integration/drone Build is failing
Implement nudity filter
2022-04-23 21:28:01 +00:00
.cargo Use drone for CD and mold for dev 2022-04-13 01:37:52 +00:00
.devcontainer Remove superflous reference counting 2022-04-23 15:51:48 +00:00
.vscode Remove superflous reference counting 2022-04-23 15:51:48 +00:00
tcpaste Implement nudity filter 2022-04-23 21:28:01 +00:00
.drone.yml Implement nudity filter 2022-04-23 21:28:01 +00:00
.gitignore Filter cli admin tool 2022-04-07 20:22:33 +00:00
Cargo.lock Implement nudity filter 2022-04-23 21:28:01 +00:00
Cargo.toml More efficient hashing 2022-04-20 13:12:24 +00:00
clippy.toml Atomic database swap on write 2022-04-11 20:09:20 +00:00
deploy.sh Cache file hashing 2022-04-09 01:09:33 +00:00
LICENSE.md Add license and readme 2022-04-01 05:08:53 +00:00
README.md Use drone for CD and mold for dev 2022-04-13 01:37:52 +00:00
rustfmt.toml Atomic database swap on write 2022-04-11 20:09:20 +00:00

TCPaste Build Status

A Simple tcp based terminal pastebin. Best used with ncat.

Usage/Examples

$ echo foo | ncat unsha.re 9999

> expires: Fri, 31 Mar 2023 04:08:06 +0000
> secret: bkI4OkJmTlBuczdycmNhdUtX
> URL: https://unsha.re/nB8
$ dd if=/dev/urandom status=none bs=512 count=1 | tee >(sha256sum -b >&2) | ncat unsha.re 9999

> c14a0f529b46ba3a8569d8473b8166f60a425920bf803494d537ea1fb07c72ee *-
>
> expires: Fri, 31 Mar 2023 04:05:50 +0000
> secret: VldLOm9KbkZrWHdKWGM5Tl9o
> URL: https://unsha.re/VWK

$ curl -s 'https://unsha.re/VWK' | sha256sum -b

> c14a0f529b46ba3a8569d8473b8166f60a425920bf803494d537ea1fb07c72ee *-
$ echo VldLOm9KbkZrWHdKWGM5Tl9o | ncat unsha.re 10000

> Paste removed: VWK

FAQ

How is the data stored?

As a file on the file system.

Is there a database?

No.

How can paste ownership be determined?

Each paste action creates the file with extended attributes containing the expiration date and secret.

Are all filesystems supported?

It needs to support extended attributes (xattr).

How does the server know what type of data it is?

It doesn't, there is no insecure mime sniffing. You need to specify the format when retrieving the paste, e.g.: https://unsha.re/xyz/jpg in order for the browser to get the correct headers.

Can I download the file with my browser?

Yes, append /dl or /dl/<filename>.

Used By

https://unsha.re

Licence

AGPL-3.0-or-later