Geoclue provider requires root permissions

Leonid Yurchenko nocturne at qarea.com
Tue Apr 5 04:56:07 PDT 2011


On 03/31/2011 06:52 PM, Michael Leibowitz wrote:
>>
>> Hi, Bastien. Thanks for your answer.
>>
>> As far as I know, both connman and NetworkManager are unable to initiate
>> a scan. They are passively collecting available access points. That
>> isn't enough for my case, I need to get freshest APs, and initiate a
>> wifi scan (that's easily done with wireless_tools, but requires superuser).
> The connman manager has a method called RequestScan()
> http://git.kernel.org/?p=network/connman/connman.git;a=blob;f=doc/manager-api.txt;h=332f6cdaf400e6427e490cbeb62511a3bf6a1184;hb=HEAD

Thank you, I'll look into possibility to move to connman.

>> Isn't it possible to dbus service to be automatically launched by demand
>> with root privileges?
> On the System bus, sure.  On the session bus, it's a bad idea.  You
> could have a setuid helper or something, but I think what you are trying
> to do is done by the connection managers, so you might as well use them.

Is it technically possible to create geoclue provider and place it on a 
system bus? Will it be recognized by a regular geoclue clients? I tried 
to place it's service definition to /usr/share/dbus-1/system/services/ 
and to add permissions file to /etc/dbus-1/system.d/ (allowing user to 
own, to send and to work with interfaces for my provider) - but still 
regular geoclue clients are unable to get location from it (and started 
with sudo as well - so when moved to system-services - it's disappeared 
for regular geoclue clients).

I saw that geoclue has switch to be built to use system bus, but 
building replacement for default build of geoclue (and unstable one - I 
saw problems reported with building geoclue on system bus) - isn't seems 
like a solution.

Thanks,
Leonid.


More information about the GeoClue mailing list