Error getting position: Router mac address query failed

Stefan Kost ensonic at hora-obscura.de
Tue Aug 31 02:16:12 PDT 2010


On 28.08.2010 14:43, Bastien Nocera wrote:
> On Wed, 2010-08-25 at 17:37 +0300, Stefan Kost wrote:
>   
>> On 25.08.2010 15:44, Bastien Nocera wrote:
>>     
>>> On Wed, 2010-08-25 at 15:11 +0300, Jussi Kukkonen wrote:
>>>   
>>>       
>>>> On 08/25/2010 02:06 PM, Stefan Kost wrote:
>>>>  > yes, I am on a wired connection...
>>>>
>>>> Hmmm, it's unfortunate that the wired router MAC isn't available via 
>>>> this connman implementation. It would be just as useful.
>>>>
>>>>  >.. and indeed if I enable wireless I get those warnings instead:
>>>>  > ** (geoclue-test-gui:27072): WARNING **: Error getting position: Could
>>>>  > not understand reply from server
>>>>  > ** (geoclue-test-gui:27072): WARNING **: Error getting address: Could
>>>>  > not understand reply from server
>>>>
>>>> The warning comes from a web provider that cannot parse the response 
>>>> from the service. I see that at least Plazes does that now, they seem to 
>>>> expect a lower case mac address... not sure if this is a new phenomenon.
>>>>     
>>>>         
>>> Does something like the attached work for you, Stefan?
>>>
>>> Cheers
>>>   
>>>       
>> Thanks for the patch, now I am getting:
>> ** (geoclue-test-gui:6888): WARNING **: Error getting position: Could
>> not understand reply from server
>> ** (geoclue-test-gui:6888): WARNING **: Error getting address: Could not
>> understand reply from server
>> ** (geoclue-test-gui:6888): WARNING **: Error getting address: Could not
>> get current gateway mac address
>>
>> I also killed all /usr/libexec/geoclue-* instances and again:
>> ** (geoclue-test-gui:7185): WARNING **: Error getting position: Could
>> not understand reply from server
>> ** (geoclue-test-gui:7185): WARNING **: Error getting address: Could not
>> understand reply from server
>> ** (geoclue-test-gui:7185): WARNING **: Error getting address: Could not
>> get current gateway mac address
>> ** (geoclue-test-gui:7185): WARNING **: Error getting position: Failed
>> to query web service
>>     
> Now it looks like the plazes backend changed the format of its answers,
> or we have a bug in the parsing code.
>
> Any chance you could add some debug and make it dump the response?
>
>   
I basically now added this in the two places in the plazes provider
after gc_web_service_query()

    {
      gchar *str;
      if (gc_web_service_get_string (plazes->web_service, &str, "/")) {
        g_debug ("PLAZES: got string: '%s'", str);
        g_debug ("PLAZES: reponse: '%s'", plazes->web_service->response);
        g_free (str);
      }
    }
    // DEBUG

rebuilt and run the places backend manually.

$ /usr/libexec/geoclue-plazes
** (process:24878): DEBUG: PLAZES: got string: '
'
** (process:24878): DEBUG: PLAZES: reponse: '<?xml version="1.0"
encoding="UTF-8"?>
<suggestions>
</suggestions>
\u0011'
** (process:24878): DEBUG: PLAZES: got string: '
'
** (process:24878): DEBUG: PLAZES: reponse: '<?xml version="1.0"
encoding="UTF-8"?>
<suggestions>
</suggestions>
\x81'


This is the same as using the webbrowser and going to the PLAZES_URL
(http://plazes.com/suggestions.xml).

Would be nice to get all the debug logging to logfiles if the providers
are activated from dbus. Also if the client (geoclue-test-ui) could
actually tell which provider gave the error that would ease debugging.


More information about the GeoClue mailing list