tladesignz / IPtProxy

Obfs4proxy and Snowflake Pluggable Transports for iOS
MIT License
53 stars 12 forks source link

Snowflake Proxy Work #16

Closed bitmold closed 2 years ago

bitmold commented 2 years ago

This makes the snowflake proxy start and stop again. I added doc strings to the new properties that you created recently. Also updated the building documentation with things I ran into getting IPtProxy hooked into a new Android project.

I noticed that the callback function does not work when the snowflake proxy logs "Connection successful.". I started looking into this but the coffee shop I connect to the Internet in is about to close so this remains unfinished.

As far as the callback works, I did notice this. I locally created a go function Test that takes a SnowflakeClientConnectedDelegate. In Kotlin/Java I call it and immediately the callback fires off in Androidworld. This leads me to suspect that the callback isn't working because it is being invoked from within a go routine on another thread and this somehow severs the interface back to the Android app.

This code can be tested against the android app here: https://github.com/bitmold/TestSnowflakeProxy - I haven't yet ran any of this code in Orbot yet

tladesignz commented 2 years ago

Great catch! Thanks a lot for your work!