Blob


1 .\" Copyright (c) 2023 Omar Polo <op@omarpolo.com>
2 .\"
3 .\" Permission to use, copy, modify, and distribute this software for any
4 .\" purpose with or without fee is hereby granted, provided that the above
5 .\" copyright notice and this permission notice appear in all copies.
6 .\"
7 .\" THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
8 .\" WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
9 .\" MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
10 .\" ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
11 .\" WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
12 .\" ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
13 .\" OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
14 .Dd July 24 2023
15 .Dt TITAN 1
16 .Os
17 .Sh NAME
18 .Nm titan
19 .Nd titan client
20 .Sh SYNOPSIS
21 .Nm
22 .Bk -words
23 .Op Fl C Ar cert
24 .Op Fl K Ar key
25 .Op Fl m Ar mime
26 .Op Fl t Ar token
27 .Ar url
28 .Op Ar file
29 .Ek
30 .Sh DESCRIPTION
31 .Nm
32 allows to send a data to a Titan server.
33 If no
34 .Ar file
35 is given on the command line,
36 .Nm
37 reads from standard input.
38 .Pp
39 The options are as follows:
40 .Bl -tag -width Ds
41 .It Fl C Ar cert
42 Specify the TLS client certificate to use.
43 .It Fl K Ar cert
44 Specify the TLS client certificate key to use.
45 Defaults to
46 .Fl C
47 if provided.
48 .It Fl m Ar mime
49 Specify the mime of the content being sent.
50 Unset by default.
51 .It Fl t Ar token
52 Specify the token for the transaction.
53 Unset by default.
54 .El
55 .Pp
56 If
57 .Fl m
58 or
59 .Fl t
60 are given,
61 .Nm
62 alters the URL of the request to include the parameters.
63 The size is always added.
64 .Sh EXIT STATUS
65 The
66 .Nm
67 utility exits with one of the following values:
68 .Pp
69 .Bl -tag -width Ds -offset indent -compact
70 .It 0
71 The trasaction completed successfully and the response code was in the
72 2x or 3x range.
73 .It 1
74 An error occurred.
75 .It 2
76 The response code was not in the 2x or 3x range.
77 .El
78 .Sh STANDARDS
79 .Nm
80 implements the
81 .Dq Titan Specification
82 .Lk gemini://transjovian.org/titan/page/The%20Titan%20Specification
83 .Sh AUTHORS
84 .An -nosplit
85 The
86 .Nm
87 utility was written by
88 .An Omar Polo Aq Mt op@omarpolo.com .
89 .Sh CAVEATS
90 .Nm
91 doesn't do any TOFU
92 .Pq Trust On First Use
93 or any X.509 certificate validation beyond the name verification.