NetworkManager/src
Thomas Haller a68d027ba4 core: never fail reading host-id timestamp and never change it
The timestamp of the host-id is the timestamp of the secret_key file.
Under normal circumstances, reading the timestamp should never fail,
and reading it multiple times should always yield the same result.

If we unexpectedly fail to read the timestamp from the file we want:

- log a warning, so that the user can find out what's wrong. But
  do so only once.

- we don't want to handle errors or fail operation due to a missing
  timestamp. Remember, it's not supposed to ever fail, and if it does,
  just log a warning and proceed with a fake timestamp instead. In
  that case something is wrong, but using a non-stable, fake timestamp
  is the least of the problems here.
  We already have a stable identifier (the host-id) which we can use to
  generate a fake timestamp. Use it.

In case the user would replace the secret_key file, we also don't want
that accessing nm_utils_host_id_get_timestamp*() yields different
results. It's not implemented (nor necessary) to support reloading a
different timestamp. Hence, nm_utils_host_id_get_timestamp() should
memoize the value and ensure that it never changes.
2018-12-12 14:03:35 +01:00
..
devices core: never fail reading host-id timestamp and never change it 2018-12-12 14:03:35 +01:00
dhcp dhcp: always explicitly set IAID of internal DHCPv6 client 2018-11-29 07:48:20 +01:00
dns connectivity: honor "main.systemd-resolved" setting to not resolve names first 2018-12-11 09:23:47 +01:00
dnsmasq device/shared: set ANDROID_METERED option 43 for shared connections 2018-12-03 12:28:45 +01:00
initrd initrd: actually use the constructed filename 2018-11-27 11:18:08 +01:00
ndisc all: say Wi-Fi instead of "wifi" or "WiFi" 2018-11-29 17:53:35 +01:00
platform platform: don't consult cache before invoking netlink operation 2018-12-03 12:26:16 +01:00
ppp ppp: replace NMCmdLine API with plain GPtrArray in create_pppd_cmd_line() 2018-12-03 12:28:45 +01:00
settings keyfile: add helper functions to record loaded UUID files 2018-12-03 12:09:57 +01:00
supplicant all: cleanup GChecksum handling 2018-11-13 18:30:03 +01:00
systemd dhcp: disable systemd's dhcp_identifier_set_iaid() 2018-11-29 07:48:20 +01:00
tests core: fix match spec behavior for a list of all "except:" 2018-12-11 13:58:24 +01:00
vpn core: improve and fix keeping connection active based on "connection.permissions" 2018-12-09 14:47:32 +01:00
main-utils.c all: don't use gchar/gshort/gint/glong but C types 2018-07-11 12:02:06 +02:00
main-utils.h all: cleanup includes in header files 2016-08-17 19:51:17 +02:00
main.c config: warn about unknown keys in config files 2018-12-01 15:16:48 +01:00
meson.build build: check that the list of supported config options is up to date 2018-12-01 15:16:48 +01:00
NetworkManagerUtils.c device: add "dhcp-plugin" match spec for device 2018-11-01 11:17:12 +01:00
NetworkManagerUtils.h device: add "dhcp-plugin" match spec for device 2018-11-01 11:17:12 +01:00
nm-act-request.c core: improve and fix keeping connection active based on "connection.permissions" 2018-12-09 14:47:32 +01:00
nm-act-request.h core: improve and fix keeping connection active based on "connection.permissions" 2018-12-09 14:47:32 +01:00
nm-active-connection.c core: improve and fix keeping connection active based on "connection.permissions" 2018-12-09 14:47:32 +01:00
nm-active-connection.h core: improve and fix keeping connection active based on "connection.permissions" 2018-12-09 14:47:32 +01:00
nm-audit-manager.c config: use macros for config keys 2018-12-01 15:16:48 +01:00
nm-audit-manager.h checkpoint: allow resetting the rollback timeout via D-Bus 2018-04-04 14:02:13 +02:00
nm-auth-manager.c auth-manager: use the correct function to deallocate a GError 2018-05-02 14:55:01 +02:00
nm-auth-manager.h auth-manager: add helper function nm_auth_call_result_eval() 2018-04-13 09:09:46 +02:00
nm-auth-subject.c all: don't use gchar/gshort/gint/glong but C types 2018-07-11 12:02:06 +02:00
nm-auth-subject.h all: remove consecutive empty lines 2018-04-30 16:24:52 +02:00
nm-auth-utils.c docs: misc. typos pt2 2018-09-17 11:26:13 +02:00
nm-auth-utils.h core: add nm_auth_is_subject_in_acl_set_error() helper 2018-04-18 07:55:15 +02:00
nm-checkpoint-manager.c settings: use delegation instead of inheritance for NMSettingsConnection and NMConnection 2018-08-28 22:27:55 +02:00
nm-checkpoint-manager.h checkpoint: allow resetting the rollback timeout via D-Bus 2018-04-04 14:02:13 +02:00
nm-checkpoint.c core: improve and fix keeping connection active based on "connection.permissions" 2018-12-09 14:47:32 +01:00
nm-checkpoint.h checkpoint: allow resetting the rollback timeout via D-Bus 2018-04-04 14:02:13 +02:00
nm-config-data.c dns: fix connecting signals to DNS plugin in init_resolv_conf_mode() 2018-12-11 09:23:47 +01:00
nm-config-data.h core: add checks on connection default properties 2018-12-01 15:16:48 +01:00
nm-config.c config: use cleanup attribute for variables in init_sync() 2018-12-01 15:16:48 +01:00
nm-config.h build: check that the list of supported config options is up to date 2018-12-01 15:16:48 +01:00
nm-connectivity.c connectivity: use 443 port for https URIs 2018-12-11 09:23:47 +01:00
nm-connectivity.h libnm: add nm_connectivity_state_cmp() helper 2018-12-11 09:23:47 +01:00
nm-core-utils.c core: never fail reading host-id timestamp and never change it 2018-12-12 14:03:35 +01:00
nm-core-utils.h core: never fail reading host-id timestamp and never change it 2018-12-12 14:03:35 +01:00
nm-dbus-manager.c dbus: add nm_dbus_manager_get_dbus_connection() helper 2018-12-11 09:23:47 +01:00
nm-dbus-manager.h dbus: add nm_dbus_manager_get_dbus_connection() helper 2018-12-11 09:23:47 +01:00
nm-dbus-object.c core/dbus: stop NMDBusManager and reject future method calls 2018-04-24 10:25:26 +02:00
nm-dbus-object.h core/dbus: stop NMDBusManager and reject future method calls 2018-04-24 10:25:26 +02:00
nm-dbus-utils.c core: don't explicitly set D-Bus path properties to "/" 2018-04-18 07:55:15 +02:00
nm-dbus-utils.h core/dbus: stop NMDBusManager and reject future method calls 2018-04-24 10:25:26 +02:00
nm-dcb.c all: don't use gchar/gshort/gint/glong but C types 2018-07-11 12:02:06 +02:00
nm-dcb.h all: cleanup includes in header files 2016-08-17 19:51:17 +02:00
nm-dhcp4-config.c core: sort DHCP options that are exported on D-Bus 2018-04-23 15:43:39 +02:00
nm-dhcp4-config.h core: refactor private data in "src" 2016-10-04 09:50:56 +02:00
nm-dhcp6-config.c core: sort DHCP options that are exported on D-Bus 2018-04-23 15:43:39 +02:00
nm-dhcp6-config.h core: refactor private data in "src" 2016-10-04 09:50:56 +02:00
nm-dispatcher.c all: use the elvis operator wherever possible 2018-05-10 14:36:58 +02:00
nm-dispatcher.h all: remove consecutive empty lines 2018-04-30 16:24:52 +02:00
nm-firewall-manager.c all: use the elvis operator wherever possible 2018-05-10 14:36:58 +02:00
nm-firewall-manager.h firewall: merge "started" signal and "available" property 2017-04-21 09:09:01 +02:00
nm-hostname-manager.c hostname: drop define IFCFG_DIR which is only used once 2018-07-17 17:46:01 +02:00
nm-hostname-manager.h hostname: cache hostname-manager's hostname property 2017-05-12 17:29:33 +02:00
nm-iface-helper.c config: add --configure-and-quit=initrd mode 2018-09-18 17:40:47 +02:00
nm-ip4-config.c all: cleanup GChecksum handling 2018-11-13 18:30:03 +01:00
nm-ip4-config.h ip-config: add @intersect_routes argument to intersect functions 2018-09-26 11:49:37 +02:00
nm-ip6-config.c all: cleanup GChecksum handling 2018-11-13 18:30:03 +01:00
nm-ip6-config.h ip-config: add @intersect_routes argument to intersect functions 2018-09-26 11:49:37 +02:00
nm-keep-alive.c keep-alive: only declare keep-alive dead when connection becomes invisible 2018-12-09 14:47:32 +01:00
nm-keep-alive.h keep-alive: drop unused nm_keep_alive_set_forced() 2018-12-09 14:47:31 +01:00
nm-logging.c shared: thread safe initialization of nm_utils_get_monotonic_timestamp*() 2018-11-28 16:13:04 +01:00
nm-logging.h all: say Wi-Fi instead of "wifi" or "WiFi" 2018-11-29 17:53:35 +01:00
nm-manager.c connectivity: consider default route for global connectivity state 2018-12-11 09:23:47 +01:00
nm-manager.h core: improve and fix keeping connection active based on "connection.permissions" 2018-12-09 14:47:32 +01:00
nm-netns.c all: get rid of a handful of unused-but-set variables 2017-12-18 13:29:32 +01:00
nm-netns.h core: rework handling of default-routes and drop NMDefaultRouteManager 2017-09-08 11:11:21 +02:00
nm-pacrunner-manager.c docs: misc. typos pt2 2018-09-17 11:26:13 +02:00
nm-pacrunner-manager.h proxy: introduce call-id for clearing pacmanager configuration 2017-04-23 18:12:09 +02:00
nm-policy.c core: improve and fix keeping connection active based on "connection.permissions" 2018-12-09 14:47:32 +01:00
nm-policy.h policy: track best active connections rather than best devices 2018-07-09 14:56:59 +02:00
nm-proxy-config.c proxy: reorder parts in nm-proxy-config.c and nm-pacrunner-manager.c 2016-10-04 11:58:32 +02:00
nm-proxy-config.h proxy: remove unnecessary APIs 2016-10-04 11:44:44 +02:00
nm-rfkill-manager.c all: say Wi-Fi instead of "wifi" or "WiFi" 2018-11-29 17:53:35 +01:00
nm-rfkill-manager.h core: refactor private data in "src" 2016-10-04 09:50:56 +02:00
nm-session-monitor.c all: avoid g_memdup() 2018-09-07 11:24:17 +02:00
nm-session-monitor.h core: refactor private data in "src" 2016-10-04 09:50:56 +02:00
nm-sleep-monitor.c all: don't use gchar/gshort/gint/glong but C types 2018-07-11 12:02:06 +02:00
nm-sleep-monitor.h core: refactor private data in "src" 2016-10-04 09:50:56 +02:00
nm-test-utils-core.h build: avoid header conflict for <linux/if.h> and <net/if.h> with "nm-platform.h" 2018-11-12 16:02:35 +01:00
nm-types.h core: Introduce helper class to track connection keep alive 2018-11-17 12:15:40 +01:00
org.freedesktop.NetworkManager.conf all: replace "it's" with "its" where needed 2018-04-18 14:14:07 +02:00