Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

"Disconnect" not responding when using some DoH servers #502

Closed
jyyi1 opened this issue Feb 15, 2024 · 1 comment
Closed

"Disconnect" not responding when using some DoH servers #502

jyyi1 opened this issue Feb 15, 2024 · 1 comment
Assignees
Labels
network Network layer technical problem

Comments

@jyyi1
Copy link
Contributor

jyyi1 commented Feb 15, 2024

Steps

  1. Launch the app
  2. Switch the DoH server to "Snopyta"
  3. Wait for some time and tap "Disconnect"
  4. The app won't respond any more

Root Cause

  • lwIP device receives DNS request from the app
  • lwIP holds a global lock and invokes our UDP handler
  • It calls our DoH server's Query method
  • We will try to connect to the DoH server, but it might take up to 3 minutes due to routing timeout
  • User tries to disconnect, and we will call lwIP's Close method
  • lwIP's Close will block because the global lock is not released
@jyyi1 jyyi1 changed the title "Disconnect" not responding when DoH connection times out "Disconnect" not responding when using some DoH servers Feb 15, 2024
@jyyi1 jyyi1 added the network Network layer technical problem label Feb 15, 2024
@jyyi1 jyyi1 self-assigned this Feb 15, 2024
@jyyi1
Copy link
Contributor Author

jyyi1 commented Mar 26, 2024

Fixed in #501

@jyyi1 jyyi1 closed this as completed Mar 26, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
network Network layer technical problem
Projects
None yet
Development

No branches or pull requests

1 participant