Compelete Renaming and Some Refactoring #2
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.
I am not sure if this project is still being maintained but this is still worth a try. Quick disclaimer: I have never implemented a SOCKS5 client before nor have I done extensive work in crystal.
A summary of the changes are as follows:
soxbinary to.gitignore(along with vim swap files)Sox::TCP:Socketconnects to directly but is the actual SOCKS5 proxy server used bySox::Client... This may still need some work to be absolutely clear what is meant wheresocketmethod inSox::Clientto match the current version implemented in HTTP::ClientThere are still many things I have not tested (extensively) and other things I am not sure are implemented in a very "crystal way". Anyway, for the time being, this pull request should allow at least the
Sox::TCP::SocketandSox::Clientclasses to work.Moving forward, crystal version should probably be updated to 0.36.1 and test done to ensure te client's IP is not leaked, particularly when TLS is turned on while using the
Sox::Client(another disclaimer: I am not a cybersecurity expert by any stretch of the imagination)Until this pull request is merged into this project I will try my best to maintain my fork as an alternative.