Skip to content

reliability: guard PPP connection cleanup paths#3305

Open
geraldo-netto wants to merge 3 commits into
blueman-project:mainfrom
geraldo-netto:fix/ppp-crash-guards
Open

reliability: guard PPP connection cleanup paths#3305
geraldo-netto wants to merge 3 commits into
blueman-project:mainfrom
geraldo-netto:fix/ppp-crash-guards

Conversation

@geraldo-netto

Copy link
Copy Markdown
Contributor

Summary

Fix PPP connection crash paths by making connection cleanup and polling state safe before the RFCOMM fd or pppd process exists.

Changes

  • Initialize PPP lifecycle fields in PPPConnection.__init__
  • Make cleanup() idempotent and resilient to os.close failures
  • Avoid polling pppd before the process is created
  • Remove timeout / IO watch sources on socket error, read error, and modem-init timeout paths
  • Add focused tests for cleanup, early polling, socket errors, read errors, and timeout cleanup

Testing

  • python -m py_compile blueman/main/PPPConnection.py test/main/test_pppconnection.py
  • git diff --check

@sonarqubecloud

Copy link
Copy Markdown

@geraldo-netto geraldo-netto changed the title fix: guard PPP connection cleanup paths reliability: guard PPP connection cleanup paths Jun 15, 2026
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

Successfully merging this pull request may close these issues.

1 participant