From 36cdfe703fcbe28330c19eab3365d72a59a8c660 Mon Sep 17 00:00:00 2001 From: Thomas Haller Date: Tue, 18 Jun 2019 09:36:41 +0200 Subject: [PATCH] connectivity: make platform argument to nm_connectivity_check_start() optional The platform is used to detect whether to skip the connectivity check right away. It should be an optional argument, so one could avoid this pre-check. (cherry picked from commit b626baa3136b9309b0dd1d1fad48677413103269) (cherry picked from commit a842280dbe43a3987f955ce4308d668069dd300b) --- src/nm-connectivity.c | 27 +++++++++++++++------------ 1 file changed, 15 insertions(+), 12 deletions(-) diff --git a/src/nm-connectivity.c b/src/nm-connectivity.c index 1424c906aa..dd73d0692a 100644 --- a/src/nm-connectivity.c +++ b/src/nm-connectivity.c @@ -870,6 +870,7 @@ nm_connectivity_check_start (NMConnectivity *self, g_return_val_if_fail (NM_IS_CONNECTIVITY (self), NULL); g_return_val_if_fail (callback, NULL); + nm_assert (!platform || NM_IS_PLATFORM (platform)); priv = NM_CONNECTIVITY_GET_PRIVATE (self); @@ -898,18 +899,20 @@ nm_connectivity_check_start (NMConnectivity *self, cb_data->concheck.ch_ifindex = ifindex; - state = check_platform_config (self, - platform, - ifindex, - addr_family, - &reason); - nm_assert ((state == NM_CONNECTIVITY_UNKNOWN) == !reason); - if (state != NM_CONNECTIVITY_UNKNOWN) { - _LOG2D ("skip connectivity check due to %s", reason); - cb_data->completed_state = state; - cb_data->completed_reason = reason; - cb_data->timeout_id = g_idle_add (_idle_cb, cb_data); - return cb_data; + if (platform) { + state = check_platform_config (self, + platform, + ifindex, + addr_family, + &reason); + nm_assert ((state == NM_CONNECTIVITY_UNKNOWN) == !reason); + if (state != NM_CONNECTIVITY_UNKNOWN) { + _LOG2D ("skip connectivity check due to %s", reason); + cb_data->completed_state = state; + cb_data->completed_reason = reason; + cb_data->timeout_id = g_idle_add (_idle_cb, cb_data); + return cb_data; + } } /* note that we pick up support for systemd-resolved right away when we need it.