[PW_SID:1047797] dbus: register interface before acquiring name#486
Open
IWDTestBot wants to merge 11 commits intoworkflowfrom
Open
[PW_SID:1047797] dbus: register interface before acquiring name#486IWDTestBot wants to merge 11 commits intoworkflowfrom
IWDTestBot wants to merge 11 commits intoworkflowfrom
Conversation
This is taken care of by the individual cache items and if none exist, tar fails.
If the interface isn't available by the time we acquire the well-known name, clients can get confused when the expected interfaces are missing during bus activation.
34cec50 to
720e28a
Compare
720e28a to
d0811d4
Compare
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
If the interface isn't available by the time we acquire the well-known
name, clients can get confused when the expected interfaces are missing
during bus activation.
This code seems backwards to me. Presently, if IWD is not running,
calling any IWD methods will fail:
$ busctl call net.connman.iwd /net/connman/iwd net.connman.iwd.Daemon GetInfo
Call failed: No matching method found
only to succeed immediately after once the bus activation is complete:
$ busctl call net.connman.iwd /net/connman/iwd net.connman.iwd.Daemon GetInfo
a{sv} 3 "NetworkConfigurationEnabled" b false "StateDirectory" s "/var/lib/iwd" "Version" s "3.10"
With this patch, we register IWD methods before acquiring the well-known
name, and the abovve call succeeds on the first try.
src/main.c | 46 +++++++++++++++++++++-------------------------
1 file changed, 21 insertions(+), 25 deletions(-)