Skip to content

bridge: fix reentrant call for bluetooth NAP bridge

Currently NetworkManager fails to establish a NAP bridge because it never gets out of the stage2.

This is caused because when making the BlueZ callback reentrant we return NM_ACT_STAGE_RETURN_POSTPONE even after registration has succeeded.

This patch changes registration to a three state automaton instead of a boolean. This allows distinguishing when we are waiting for registration to finish and when it is done and therefore ensures that when the stage2 is called again by the callback the result is success so NetworkManager can proceed to the IP configuration.

Merge request reports

Loading