Re: Problems with Plasma NetworkManagement



On Thu, 2011-06-30 at 20:38 -0300, Lamarque Vieira Souza wrote:
> Em Thursday 30 June 2011, Dan Williams escreveu:
> 
> > On Sun, 2011-06-26 at 15:40 -0300, Lamarque Vieira Souza wrote:
> 
> > > Hi,
> 
> > > 
> 
> > > 
> 
> > > I am trying to debug those two bugs http://bugs.kde.org/276485 and
> 
> > > http://bugs.kde.org/276486 and have found that NM is calling our
> 
> > > secret agent to save the old secret instead of the new one even
> though
> 
> > > Plasma NM passes the new secret to the NM's update connection
> method.
> 
> > 
> 
> > Hmm, seems like a bug in NM.
> 
> 
> That is what I thought :-/
> 
> > I've updated the documentation in introspection/nm-secret-agent.xml
> with
> 
> > the original intent. That intent was that if the agent is the thing
> 
> > creating the connection then the agent should save the secrets and
> not
> 
> > expect a SaveSecrets() request from NM. However, if an external
> 
> > connection editor is the thing that updates the secrets, then the
> agent
> 
> > should expect a SaveSecrets() request. Basically if the agent
> accepts
> 
> > changes to secrets it should save them itself; and that saves a
> D-Bus
> 
> > round-trip. Does that sound OK?
> 
> 
> That is what I had guessed by try and error, thanks for clarifying it.
> In Plasma NM the agent and the editor are two different process as I
> said. By what you are saying above NM calling SaveSecrets() is Ok,
> what is not Ok is it passing the old secrets instead of the new ones.
> I also do not understand how NM knows the agent is also the editor. I
> guess even nm-applet implements the connection editor as a separated
> process, right?

Yeah, the applet and editor are two separate processes.  We can send an
Update() along anyway if you wish though, I simply had to make a
behavior call at the time it was implemented, and we can change that
behavior.  Obviously agents should be smart enough to know when the
incoming secrets are different than what they already have and possibly
ignore the Update() if nothing has actually changed.

If NM is passing the old secrets, that's clearly not cool, and we need
to fix that.

> > If the agent is what called Update(), then we'd expect it to save
> the
> 
> > secrets itself after the Update() call returns successfully. I'm not
> 
> > sure the indirection here of having NM call SaveSecrets() on the
> process
> 
> > that already has the secrets is useful. Or?
> 
> 
> No, the agent does not call Update(), the editor does. They are two
> different process. The editor knows the secrets and the agent does not
> by the time Update() is called. Update() works as expected in 0.8.999
> as far as I remember. Since 0.8.9997 NM passes the old secrets in
> SaveSecrets(), which is strange. I do not see why it should pass the
> old secrets in SaveSecrets(). Or it passes the new secrets or does not
> call SaveSecrets() at all.
> 
> > There are probably a few bugs here to shake out...
> 
> Probably. I am busy doing other things these days, next week I will
> try to investigate this problem further, but if it really is a bug in
> NM then you have more chances to find it than me.

Please let me know what you figure out, I'll also take a look and try to
see what's going on.

Dan




[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]