On Fri, 2009-01-23 at 11:53 -0800, Dirk Brandewie wrote: > Hi All, > > I have updated the proposed dbus API for accessing the Linux WiMax > stack. This update incorporates the comments I have received to date. > > Overview of changes: > > Added proposed methods to the credential agent API > > Removed Get/SetProperty methods from adapter and network objects in > favor of using standard dbus properties API with the addition of the > PropertyChanged signal that Dan Williams will be proposing on the dbus list. David Zeuthen already beat me to it, sending the proprosal last week. It's going through the process as we speak. > Updated files to have BSD copyright notice. > > Added version number to interface names > > Many typo fix-ups > > Removed ScanWide() method from adapter and added argument to Scan() method > to control scanning behaviour. > > Moved credential agent related method from adapter to network object. > > The updated files are attached and are also available via git at > git://linuxwimax.org/dbus_wimaxapi.git > > Thanks to everyone for their comments and suggestions. Please have a > look at the updated API and let me know what you think. General: ------------------------ - Going along with the D-Bus interface versioning thing, I forgot to mention that we should change the D-Bus "Service" name to "org.wimax1" as well. Though that won't technically be necessary, it does keep consistency with the rest of the API. You've got the service name listed at the top of each of the -api.txt files. - The errors should *also* be versioned, ie like so: org.wimax1.InvalidArguments since that "org.wimax1" bit on the front actually is the D-Bus interface name. Errors are also "owned" by interfaces the same way methods are. Adapter: ------------------------ - for Scan(wide=False), how do the "adapter-specific configuration options" get set? Stored in NVRAM or OMA-DM stuff? - For the network signals: NetworkFound(string address) NetworkDisappeared(string address) what is the "address" referred to here? I think you probably want "object network" for both of these, so that one could immediately use the object path and get properties of the network like so... * receive NetworkFound(object network) * bsid = GetProperty(network, "org.wimax1.Network", "BSID") - In the comments for RadioOn and RadioOff, you reference a "Powered" property that doesn't exist; that's now "boolean RadioOn". Just need to update the doc for RadioOn()/RadioOff() here. - ListNetworks() can't possibly return the org.wimax.InvalidArguments error if it doesn't accept any arguments... Credentials ------------------------ - Should the 'cancel' method call also take a "uint32 context_value" argument? I'd think that if a credentials request is in-progress, you'd only want to cancel that request, and not others. But I also might misunderstand the intent and operation here. - See my reply to the Credentials API mail for more thoughts here Network ------------------------ - Putting the credentials stuff on the network object itself seems confusing at first look, but that depends on how you envision the credentials stuff working. I still don't quite understand that part yet, but see my replies to the credentials API mail for more on that. - Can you enumerate the values that "RoamingMode" could be set to? - The rest of Network looks fine to me Thanks! Dan