2021-01-23 17:56:24 +01:00
|
|
|
.\" Copyright (c) 2021 Omar Polo <op@omarpolo.com>
|
|
|
|
.\"
|
|
|
|
.\" Permission to use, copy, modify, and distribute this software for any
|
|
|
|
.\" purpose with or without fee is hereby granted, provided that the above
|
|
|
|
.\" copyright notice and this permission notice appear in all copies.
|
|
|
|
.\"
|
|
|
|
.\" THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
|
|
|
|
.\" WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
|
|
|
|
.\" MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
|
|
|
|
.\" ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
|
|
|
|
.\" WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
|
|
|
|
.\" ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
|
|
|
|
.\" OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
|
|
|
|
.Dd $Mdocdate: January 23 2021$
|
|
|
|
.Dt GG 1
|
|
|
|
.Os
|
|
|
|
.Sh NAME
|
|
|
|
.Nm gg
|
|
|
|
.Nd simple Gemini client
|
|
|
|
.Sh SYNOPSIS
|
|
|
|
.Nm
|
|
|
|
.Bk -words
|
2021-01-27 15:48:23 +01:00
|
|
|
.Op Fl 23bchNVv
|
2021-02-09 16:01:12 +01:00
|
|
|
.Op Fl C Pa cert.pem Fl K Pa key.pem
|
2021-01-27 15:48:23 +01:00
|
|
|
.Op Fl H Ar hostname
|
2021-07-06 15:09:24 +02:00
|
|
|
.Op Fl T Ar timeout
|
2021-01-23 17:56:24 +01:00
|
|
|
.Ar IRI
|
|
|
|
.Ek
|
|
|
|
.Sh DESCRIPTION
|
|
|
|
.Nm
|
|
|
|
is a simple Gemini client.
|
|
|
|
It fetches the Gemini page given and prints the server response to
|
|
|
|
standard output.
|
|
|
|
The option are as follows:
|
|
|
|
.Bl -tag -width 6m
|
|
|
|
.It Fl 2
|
|
|
|
Use only TLSv1.2.
|
|
|
|
.It Fl 3
|
|
|
|
Use only TLSv1.3.
|
|
|
|
.It Fl b
|
|
|
|
Print only the body of the response.
|
2021-02-09 16:01:12 +01:00
|
|
|
.It Fl C Pa cert.pem
|
|
|
|
Load the client certificate, must be in PEM format.
|
2021-01-23 17:56:24 +01:00
|
|
|
.It Fl c
|
|
|
|
Print only the response code.
|
2021-01-27 15:48:23 +01:00
|
|
|
.It Fl H Ar hostname
|
|
|
|
Use the given
|
|
|
|
.Ar hostname
|
|
|
|
for SNI, instead of the one extracted from the IRI.
|
|
|
|
The IRI hostname will still be used for the DNS resolution.
|
2021-01-23 17:56:24 +01:00
|
|
|
.It Fl h
|
|
|
|
Print only the response header.
|
2021-02-09 16:01:12 +01:00
|
|
|
.It Fl K Pa key.pem
|
|
|
|
Load the client certificate key, must be in PEM format.
|
2021-01-23 17:56:24 +01:00
|
|
|
.It Fl N
|
|
|
|
Don't check whether the peer certificate name matches the requested
|
|
|
|
hostname.
|
2021-07-06 15:09:24 +02:00
|
|
|
.It Fl T Ar timeout
|
|
|
|
Kill
|
|
|
|
.Nm
|
|
|
|
after
|
|
|
|
.Ar timeout
|
|
|
|
seconds.
|
2021-01-23 17:56:24 +01:00
|
|
|
.It Fl V
|
|
|
|
Only validate the IRI, don't do the Gemini transaction.
|
2021-01-27 15:48:23 +01:00
|
|
|
.It Fl v
|
|
|
|
Print also the request.
|
2021-01-23 17:56:24 +01:00
|
|
|
.El
|
|
|
|
.Pp
|
|
|
|
Note that
|
|
|
|
.Nm
|
|
|
|
won't try to do TOFU (Trust On First Use) or any X.509 certificate
|
|
|
|
validation: it will happily accept any certificate it is given.
|
|
|
|
.Pp
|
|
|
|
By default
|
|
|
|
.Nm
|
|
|
|
will accept both TLSv1.2 and TLSv1.3 and will always do SNI.
|