Commit Briefs
guard against wprintw(window, "%.*s", 0, NULL)
even if textlen is zero, it still complains in syslog that the string passed is NULL (which kind of makes sense actually.)
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.
simplify cert sorting
No need to overly-optimize this: since mergesort() is not standard and can fail, just use qsort().
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.