Re: Porting KDE3 NetworkManager to 0.9



On Sat, 2011-10-08 at 14:15 -0400, Robert Xu wrote:
> Hi all,
> 
> Given the fact that I am relatively new at this stuff, forgive me if I
> am asking very noobish questions...
> 
> I am trying to figure out how to implement the Register/Unregister
> functions and the SecretAgent interfaces.

http://projects.gnome.org/NetworkManager/developers/api/09/ref-migrating.html

has more information on the architecture changes in 0.9.  One big one is
that the session applets (knetworkmanager, nm-applet, etc) no longer
store whole connections; they only store secrets.  Thus they become
secret agents instead of full settings storage services.  They no longer
need to advertise a D-Bus service.

> - Where would I implement Register/Unregister? When the program starts
> up/closes down?

Yes, whenever the thing that's going to respond to secrets requests (ie,
the secret agent) starts up and shuts down.

>     - (what c++ call do I make to do that? >>;)

Probably the Qt D-Bus bindings, which I think is what the old KDE stuff used.

> - For SecretAgent interfaces, KNetworkManager has a storage file that
> handles this stuff. Should this all be depreciated for NM's new
> handling?

Not necessarily; you'd still need to store secrets somewhere, and the
storage files are probably as good as any.  But you wont' need to store
whole connections; just secrets.  So at a minimum you'll need to store
the secret itself, the key name of the secret (ie 'psk' or 'password' or
whatever), and the UUID of the connection the secret is for.

>     - (again, how do you call the functions in c++? relatively new to
> dbus calling in c++ >>;)

Usually with Qt/KDE you'd use the Qt D-Bus bindings to do anything D-Bus
related.  Unfortunately I don't know much about those, but others on
this list (like Will Stephenson and Eckhart Woerner) know the Qt/KDE
side of things.

Dan



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