I've uploaded pg-openssl. It contains two functions, list_ciphers() and list_digests(), that show information about the ciphers and digests available to us via OpenSSL.
The code is extremely fragile and I can't figure out why. For example while preparing the upload I changed one SQL UDF name from pg_openssl_list_ciphers() to list_ciphers() - with no other changes - and what had been a working function now causes a segfault.
In other cases I could reliably show a single text column but not additional columns even though I copied the code from a working function. Sometimes it would work with pstrdup'd literal strings, sometimes even that failed.
I've spent more than a few hours working on this and am stumped. Maybe other people have ideas?
BTW the OpenSSL calls can be confusing but in both functions I retrieve a list of supported methods during the initialization and then query for specific details on each method as needed. There's no reason why I couldn't cache the specific details during initialization but I would like to know exactly what I'm missing in the iterative part.
Bear