Update priority list after changing priority

Signed-off-by: Dmitry Shmidt <dimitrysh@google.com>
diff --git a/config.c b/config.c
index a1112b7..7e75aea 100644
--- a/config.c
+++ b/config.c
@@ -1295,7 +1295,7 @@
  * configuration when a network is being added or removed. This is also called
  * if a priority for a network is changed.
  */
-static int wpa_config_update_prio_list(struct wpa_config *config)
+int wpa_config_update_prio_list(struct wpa_config *config)
 {
 	struct wpa_ssid *ssid;
 	int ret = 0;
diff --git a/config.h b/config.h
index 3852f92..8db434a 100644
--- a/config.h
+++ b/config.h
@@ -288,7 +288,7 @@
 void wpa_config_update_psk(struct wpa_ssid *ssid);
 int wpa_config_add_prio_network(struct wpa_config *config,
 				struct wpa_ssid *ssid);
-
+int wpa_config_update_prio_list(struct wpa_config *config);
 const struct wpa_config_blob * wpa_config_get_blob(struct wpa_config *config,
 						   const char *name);
 void wpa_config_set_blob(struct wpa_config *config,
diff --git a/ctrl_iface.c b/ctrl_iface.c
index ef93533..c9d4f07 100644
--- a/ctrl_iface.c
+++ b/ctrl_iface.c
@@ -796,6 +796,10 @@
 		wpa_printf(MSG_DEBUG, "CTRL_IFACE: Failed to set network "
 			   "variable '%s'", name);
 		return -1;
+	} else {
+		if (os_strcmp(name, "priority") == 0) {
+			wpa_config_update_prio_list(wpa_s->conf);
+		}
 	}
 
 	if (wpa_s->current_ssid == ssid) {