Support SASL EXTERNAL and proxies for TLS connections #138
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Hi, thanks for making this library.
These changes are pretty minimal but may not be useful enough to warrant inclusion. I can probably do better if it turns out folks are at all interested.
Update
I've changed things up slightly so the proxy settings affect non-TLS connections as well.
Most likely you know this, but in case there are new people around, it's sometimes convenient to use SSH as a SOCKS5 proxy service for trying things out locally. You can see the effects of both normal and TLS connections by running a simple server, like Oragono, on 6667 and 6697.
On Linux you'd then do something like the following:
and add your public key to
.ssh/authorized_keys
, perhaps temporarilysudo tcpdump -i lo -nnX "port 1080"
ssh -TND 1080 localhost
ALL_PROXY=socks5h://localhost:1080
To also try the
EXTERNAL
stuff using a similar setup, first connect with a normal client using the same TLS client cert and nick and run/msg NickServ REGISTER *
. Optionally, verify the fingerprint has indeed been added with/msg NickServ CERT LIST
.Note: this SASL business is basically orthogonal to the proxy stuff above, so I'd be happy to move it to a separate PR if that would help keep things sane. Thanks.
See also #136 and
examples/simple-tor.go
(related).