Commit Briefs

Omar Polo

draft of telescope-identity(1)

This is intended to generate and manage certificates outside of telescope. Some operations are already available in the telescope UI, such as use and forget a certificate for a specific page, but generate and removal are hard at the moment to implement inside telescope limited UI, so provide an helper program for that.


Omar Polo

rework a bit the certificate handling

Two stores are not a good idea to handle all the edge-cases since telescope supports certificates (or absence of these) per-session.


Omar Polo

add client_cert_temp flag to the struct tab

This way we can improve unload-certificate prompt. While here, move the cert handling in make_request().




Omar Polo

load and optionally remember client certificates

This adds use-certificate, a user function to start using a certificate or switch to a different one. It asks whether to persist the certificate, if not it will only be used for the current session. use-certificate is implicitly called when the server replies with a 6x status code.



Omar Polo

simplify cert sorting

No need to overly-optimize this: since mergesort() is not standard and can fail, just use qsort().



Omar Polo

first draft of client certificate support

At the moment telescope loads a mapping host:port/path -> certificate from a file and always uses it, no ways to change it, use a temporary one, generate a new one, etc are provided yet. The format of ~/.telescope/certs/certs is host port path certificate file name where the certificate file name is the name of a file inside ~/.telescope/certs. ~/.telescope/certs/ is ~/.local/share/telescope/ when using XDG.


Omar Polo

add certs.[ch]

adapted from gmid. we'll soon use it to provide client certificates support in telescope.