| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
| |
submission query
|
| |
|
|
|
| |
This should allow running pipelines again per freedesktop/freedesktop#540
|
|
|
|
|
|
| |
Thanks to all who contributed to this release!
Closes: #172
|
| |
|
|
|
|
| |
Redact the API key, if a 'key' parameter is found in the URL string.
|
|
|
|
|
| |
Meson 0.56.0 deprecated get_pkgconfig_variable(),
use get_variable() instead.
|
|
|
|
|
| |
Meson 0.56.0 deprecated source_root(),
use project_source_root() instead.
|
|
|
|
| |
Mention conf.d overwrites in man page
|
|
|
|
|
| |
Print out the extracted config including conf.d overwrites
for debugging-only.
|
|
|
|
|
| |
Bump to meson 0.60.0 for install_emptydir support
to install conf.d directory.
|
|
|
|
|
|
|
|
|
|
| |
Distros may want to overwrite various parameters of GeoClue's config
file without shipping a complete config file which may result into
out-of-sync config files when newer GeoClue versions are released.
Support /etc/geoclue/conf.d/ as a config directory in which distros
can place overwrites, the config files are loaded in alphabetic order
and overwrite the original config file parameters stored in
/etc/geoclue/geoclue.conf
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
There were many requests to provide a static location source for systems
which don't normally move but where the existing location sources provide
poor location estimate.
An example of such system would be a desktop PC without WiFi or 3G modem.
So let's add a source that reads location from "geolocation" file in
@sysconfdir@ (normally /etc) to cover this use case.
This file is constantly monitored for changes during Geoclue operation
and the reported static location is updated accordingly.
The geoclue(5) man page should be consulted for the format description of
this file.
|
| |
|
|
|
|
|
|
| |
Remove explicit g_free () calls and convert char* allocations to
g_autofree.
Fixes at least one memory leak in gclue_service_agent_handle_authorize_app ().
|
|
|
|
|
|
|
|
|
| |
Remove the soup_session_remove_feature_by_type () call, it always prints
a "No feature manager for feature of type 'GProxyResolver'" warning on
startup.
Disable proxy by setting the 'proxy-resolver' property of SoupSession to
NULL.
|
| |
|
| |
|
| |
|
|
|
|
|
|
| |
Let's regard locate / submit URLs as reachable if Internet is available,
otherwise temporary DNS resolving problems can cause these to be regarded
as unreachable until a new network change causes new probes to be sent.
|
|
|
|
|
| |
This way there won't be multiple outstanding reachability checks if
network configuration changes quickly multiple times.
|
|
|
|
|
| |
This way we won't be waiting inter-submission intervals even though we
aren't actually submitting anything.
|
|
|
|
|
|
| |
The "continue" statement in the inner for loop in load_app_configs ()
should obviously be a "break" statement instead, since there's no need to
continue that loop once first matching element is found.
|
| |
|
| |
|
| |
|
|
|
|
|
|
|
|
|
|
| |
Remove soup2 build option, based on
https://gitlab.freedesktop.org/geoclue/geoclue/-/merge_requests/83
Original commit message:
Add soup2 build option, enabled by default. When disabled, libsoup3 will
be used instead.
|
| |
|
| |
|
|
|
|
|
| |
While old /v1/submit API is still active right now, it has been
deprecated since 2015. It's better to migrate to new /v2/geosubmit API.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Add instance variables locate_url and submit_url and setter functions
for them. Set these URLs in the initializers of child classes GClue3G
and GClueWifi.
Do separate connectivity checks for submit_url and locate_url using
g_network_monitor_can_reach_async(). This allows location and submission
servers running on localhost to be reached when there is no outside
connectivity.
Add a GCancellable priv->cancellable and use it in
g_network_monitor_can_reach_async() calls.
|
|
|
|
| |
Use them when creating queries.
|
| |
|
|
|
|
|
|
|
|
|
|
| |
Set tower_valid to true only on valid TowerTec values in
gclue_mozilla_set_tower().
Add towertec_to_radiotype() function which converts a TowerTec value to
an MLS API 'radioType' string. If TowerTec does not correspond to values
known to MLS, skip the creation of 'radioType' and 'cellTowers' members
in the MLS locate query.
|
| |
|
| |
|
|
|
|
|
|
| |
This prevents "Read-only file system. dconf will not work properly."
warnings from the dconf GSettings backend, when GeoClue is run with
ProtectSystem=strict, i.e. a read-only homedir.
|
|
|
|
|
| |
This can abort at runtime if the object pointed to by user_data is already
gone by the time the callback is run.
|
| |
|
|
|
|
| |
So it's obvious which location source provided them.
|
|
|
|
| |
Since it has exactly the same implementation for every derived class.
|
|
|
|
| |
And consolidate duplicate ones.
|
|
|
|
|
|
| |
Make sure we pass an appropriate GCancellable to various async calls in
gclue-wifi and handle the resulting cancellation gracefully to avoid
hitting UAFs when stopping the source.
|
|
|
|
|
|
|
|
|
| |
Add a random gdouble distance between 0 km and 3 km to the latitude when
scrambling a location instead of just one of two possible integer
distances: 1 km or 2 km.
If the location source is already pretty inaccurate do just a limited range
scrambling (up to 1 km) - just to be sure.
|
|
|
|
| |
And mark these levels which are currently unused for reference.
|
|
|
|
|
| |
Instead of open-coding its equivalent in gclue-wifi.c (future location
sources will also make use of this function).
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Currently, there is no combining of WiFi Access Points data and 3GPP tower
data to make a single, combined MLS geolocation request.
Instead, the code does two separate MLS requests if both of these sources
are available, each containing only either WiFi AP data or 3GPP tower data.
This results in two different location determinations.
If these two locations differ (which happens often) the Geoclue location
jumps between these two locations as WiFi and 3GPP location sources are
refreshed.
There is also a problem of reduced accuracy since with two separate
requests the MLS backend can't cross-correlate data between both.
Instead, one is supposed to send a MLS query containing all the collected
data at the same time, like the example at MLS API page shows.
The same goes for MLS location submissions.
Sending WiFi and 3GPP tower data combined makes Geoclue location
determination significantly more stable indeed when both of these sources
are active.
|
|
|
|
|
|
| |
source base class
This way the 3G source will be able to make use of it, too.
|
|
|
|
|
|
|
| |
tower data is lost
And make sure that we emit tower data unconditionally when 3G source is
started in order to prime it.
|