diff options
| author | murilo ijanc | 2026-03-27 21:54:25 -0300 |
|---|---|---|
| committer | murilo ijanc | 2026-03-27 21:54:25 -0300 |
| commit | b4228aa74f6ef4720167236cb072b84d94aa6d2a (patch) | |
| tree | 5a43a68455a06009d0c288e786a4bc000a406a8c /tp.1 | |
| parent | 75fddf425102369828f7e8366ebdad4ea086fd07 (diff) | |
| download | tesseras-paste-b4228aa74f6ef4720167236cb072b84d94aa6d2a.tar.gz | |
Add chunked paste support for content up to 1.44 MB
Large pastes are split into 8 KiB chunks on the client side,
each stored separately in a dedicated chunks/ directory.
A version-2 manifest paste lists the chunk hashes and is
announced to the DHT; chunks replicate via periodic republish
with per-put throttling to avoid rate-limit bans.
- New PUTC/PUTM protocol commands for chunks and manifests
- Client-side chunking avoids O(n^2) base58 on large content
- HTTP handler reassembles chunks directly from store
- DHT sync routes incoming chunks to chunks/ directory
- Republish interval reduced to 5 min with 200ms throttle
- tp.1 updated with new 1.44 MB limit
Diffstat (limited to 'tp.1')
| -rw-r--r-- | tp.1 | 35 |
1 files changed, 34 insertions, 1 deletions
@@ -47,7 +47,7 @@ and the raw response received. .Pp The following commands are available: .Bl -tag -width Ds -.It Cm put Oo Fl t Ar ttl Oc Op Fl p +.It Cm put Oo Fl t Ar ttl Oc Oo Fl p Oc Op Fl l Ar label Read standard input and store it as a paste. On success, print the paste key to standard output. .Pp @@ -66,6 +66,15 @@ The default is .Pp .Fl p stores the paste in public mode without encryption. +.Pp +The maximum input size is 1.44 MB. +Pastes larger than 8 KiB are automatically split into chunks +and reassembled transparently on retrieval. +.Pp +.Fl l Ar label +attaches a label to the paste for later identification. +Labels are stored locally in +.Pa ~/.config/tp/labels . .It Cm get Ar key Retrieve the paste identified by .Ar key @@ -73,10 +82,18 @@ and write its contents to standard output. .It Cm del Ar key Delete the paste identified by .Ar key . +If the paste has a label, the label is also removed. .It Cm pin Ar key Pin the paste so it never expires. .It Cm unpin Ar key Remove the pin from a paste, allowing it to expire normally. +.It Cm list +List all labeled pastes. +Each line shows the paste key and its label, separated by a tab. +.It Cm label Ar key Ar text +Add or update the label for the paste identified by +.Ar key . +All remaining arguments are joined as the label text. .It Cm status Display the daemon status. .El @@ -84,6 +101,10 @@ Display the daemon status. .Bl -tag -width "/var/tesseras-paste/daemon.sock" -compact .It Pa /var/tesseras-paste/daemon.sock Default Unix domain socket. +.It Pa ~/.config/tp/labels +Local paste labels, one per line in +.Dq key\etlabel +format. .El .Sh EXIT STATUS .Ex -std @@ -96,9 +117,21 @@ Retrieve a paste: .Pp .Dl $ tp get Ar key .Pp +Store a paste with a label: +.Pp +.Dl $ echo \&"hello\&" | tp put -l \&"dmesg openbsd 7.9\&" +.Pp Store a public paste with a 1-hour TTL: .Pp .Dl $ echo \&"public data\&" | tp put -t 1h -p +.Pp +List labeled pastes: +.Pp +.Dl $ tp list +.Pp +Label an existing paste: +.Pp +.Dl $ tp label Ar key my zine ep 1 .Sh SEE ALSO .Xr tpd 1 .Sh AUTHORS |