about summary refs log tree commit diff
path: root/clients/cli/connections.c
diff options
context:
space:
mode:
authorMichael Biebl <biebl@debian.org>2018-09-23 10:11:11 +0200
committerMichael Biebl <biebl@debian.org>2018-09-23 10:11:11 +0200
commit135c3be0fb0eedb7a1b493ffde6c1ab3d23771f6 (patch)
tree40408d2ad887437e3ca63ff7fc6334bf22ae3fe6 /clients/cli/connections.c
parent81e5928f26b40b0227604ccaf4b051fe14c9b3ef (diff)
parente126f3e804c35480c4f075777430419d6ece23da (diff)
Update upstream source from tag 'upstream/1.12.4'
Update to upstream version '1.12.4'
with Debian dir 650b52e60bf462f2972d0c33deec2cb171953445
Diffstat (limited to 'clients/cli/connections.c')
-rw-r--r--clients/cli/connections.c10
1 files changed, 9 insertions, 1 deletions
diff --git a/clients/cli/connections.c b/clients/cli/connections.c
index 1563178d..b547e34c 100644
--- a/clients/cli/connections.c
+++ b/clients/cli/connections.c
@@ -2565,7 +2565,15 @@ parse_passwords (const char *passwd_file, GError **error)
 			return NULL;
 		}
 
-		pwd_spec = g_strdup_printf ("%s.%s", setting, prop);
+		if (   nm_streq (setting, "vpn")
+		    && g_str_has_prefix (prop, "secret.")) {
+			/* in 1.12.0, we wrongly required the VPN secrets to be named
+			 * "vpn.secret". It should be "vpn.secrets". Work around it
+			 * (rh#1628833). */
+			pwd_spec = g_strdup_printf ("vpn.secrets.%s", &prop[NM_STRLEN ("secret.")]);
+		} else
+			pwd_spec = g_strdup_printf ("%s.%s", setting, prop);
+
 		g_hash_table_insert (pwds_hash, pwd_spec, g_strdup (pwd));
 	}
 	return g_steal_pointer (&pwds_hash);