From f791b98284c3b6037e74b7e487aa02e6ad38a1cf Mon Sep 17 00:00:00 2001 From: David Woodhouse Date: Thu, 11 May 2023 12:17:43 +0100 Subject: [PATCH] libnmc-base: report explicit error if not gateway configured for openconnect Rather than letting openconnect run, and whine that there's no gateway, and making the user scroll up past the openconnect usage information, give them an explicit error. --- src/libnmc-base/nm-vpn-helpers.c | 12 ++++++++++-- 1 file changed, 10 insertions(+), 2 deletions(-) diff --git a/src/libnmc-base/nm-vpn-helpers.c b/src/libnmc-base/nm-vpn-helpers.c index 1edc70d7d..1a43fbc1a 100644 --- a/src/libnmc-base/nm-vpn-helpers.c +++ b/src/libnmc-base/nm-vpn-helpers.c @@ -261,8 +261,16 @@ nm_vpn_openconnect_authenticate_helper(NMSettingVpn *s_vpn, GPtrArray *secrets, int i, oc_argc = 0; /* Get gateway and port */ - gw = nm_setting_vpn_get_data_item(s_vpn, "gateway"); - port = gw ? strrchr(gw, ':') : NULL; + gw = nm_setting_vpn_get_data_item(s_vpn, "gateway"); + if (!gw) { + g_set_error(error, + NM_VPN_PLUGIN_ERROR, + NM_VPN_PLUGIN_ERROR_FAILED, + _("no gateway configured")); + return FALSE; + } + + port = strrchr(gw, ':'); path = nm_utils_file_search_in_paths("openconnect", "/usr/sbin/openconnect",