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

Prompt failure hangs packet processing for five minutes on each subsequent retry. #43

Open
ghost opened this issue Jul 13, 2017 · 0 comments
Assignees

Comments

@ghost
Copy link

ghost commented Jul 13, 2017

Consider following scenario:

  1. Disable Subgraph firewall gnome extension.
  2. Use an application without policy to trigger prompt request.
    Daemon logs an error "Error sending dbus RequestPrompt message" at this point.
  3. Enable Subgraph firewall gnome extension.
  4. Retry connection using the same application.

Expected result is that firewall continues processing packets as usual. What actually happens is that firewall hangs for five minutes each time you retry connecting using application for which prompting has failed before.

Cursory look at the source code suggest that this is a result of promptInProgress flag not having being cleared after a failure. Thus when next pending connection is queued for processing, the routine responsible for promptLoop is never signaled and remains waiting on condition variable. Neither is it woken up immediately by prompts triggered for different applications as packets are processed in sequential manner, one at a time, so that processing of first one must timeout before processing continues.

@shw700 shw700 self-assigned this Sep 30, 2017
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant