Added support for SASL EXTERNAL
A user can now generate a x509 certificate, register it with a server, and provide the PEM file to tiny for use over TLS.
Closes #196
Overview:
- Bumped rustls crates
- Added configuration for SASL EXTERNAL, where a user specifies a path to a PEM file with a certificate inside (generated with instructions from server).
- Use user provided certificate in TLS connector config for client authorization (crates/libtiny_client/src/stream.rs)
Native TLS using openssl is waiting on https://github.com/sfackler/rust-native-tls/pull/209, which will make it much more convenient to add the user's certificate.
Are you currently using this? I didn't test it myself.
Yes, I think I will continue once merged too.
Fixed conflicts after pass cmd feature.
Needs testing still.
@osa1 Tested using new password commands and SASL EXTERNAL. Both working as expected! If you still want to merge this, it should be a fairly quick code review.
I will have to read a bit about SASL EXTERNAL
Links that I also put in code comments: https://ircv3.net/docs/sasl-mechs https://www.alphachat.net/sasl.xhtml
@osa1 Updated CHANGELOG. I created a stub page on the wiki to add configuration details later.