aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--src/ap/ap_config.c3
-rw-r--r--src/ap/ap_config.h3
-rw-r--r--wpa_supplicant/config.c6
-rw-r--r--wpa_supplicant/config.h13
4 files changed, 25 insertions, 0 deletions
diff --git a/src/ap/ap_config.c b/src/ap/ap_config.c
index ec9e17d..b9e1c5f 100644
--- a/src/ap/ap_config.c
+++ b/src/ap/ap_config.c
@@ -474,6 +474,9 @@ static void hostapd_config_free_bss(struct hostapd_bss_config *conf)
}
#endif /* CONFIG_IEEE80211R */
+#ifdef ANDROID_P2P
+ os_free(conf->prioritize);
+#endif
#ifdef CONFIG_WPS
os_free(conf->wps_pin_requests);
os_free(conf->device_name);
diff --git a/src/ap/ap_config.h b/src/ap/ap_config.h
index a203599..4e10a0f 100644
--- a/src/ap/ap_config.h
+++ b/src/ap/ap_config.h
@@ -315,6 +315,9 @@ struct hostapd_bss_config {
u8 uuid[16];
char *wps_pin_requests;
char *device_name;
+#ifdef ANDROID_P2P
+ char *prioritize;
+#endif
char *manufacturer;
char *model_name;
char *model_number;
diff --git a/wpa_supplicant/config.c b/wpa_supplicant/config.c
index b254585..17952fc 100644
--- a/wpa_supplicant/config.c
+++ b/wpa_supplicant/config.c
@@ -1908,6 +1908,9 @@ void wpa_config_free(struct wpa_config *config)
wpabuf_free(config->wps_nfc_dh_pubkey);
wpabuf_free(config->wps_nfc_dh_privkey);
wpabuf_free(config->wps_nfc_dev_pw);
+#ifdef ANDROID_P2P
+ os_free(config->prioritize);
+#endif
os_free(config);
}
@@ -2965,6 +2968,9 @@ static const struct global_parse_data global_fields[] = {
{ INT(p2p_group_idle), 0 },
{ FUNC(p2p_pref_chan), CFG_CHANGED_P2P_PREF_CHAN },
#endif /* CONFIG_P2P */
+#ifdef ANDROID_P2P
+ { STR_RANGE(prioritize, 0, 32), CFG_CHANGED_IFACE_PRIORITY },
+#endif
{ FUNC(country), CFG_CHANGED_COUNTRY },
{ INT(bss_max_count), 0 },
{ INT(bss_expiration_age), 0 },
diff --git a/wpa_supplicant/config.h b/wpa_supplicant/config.h
index 94f5986..caa051e 100644
--- a/wpa_supplicant/config.h
+++ b/wpa_supplicant/config.h
@@ -171,6 +171,9 @@ struct wpa_cred {
#define CFG_CHANGED_P2P_LISTEN_CHANNEL BIT(11)
#define CFG_CHANGED_P2P_OPER_CHANNEL BIT(12)
#define CFG_CHANGED_P2P_PREF_CHAN BIT(13)
+#ifdef ANDROID_P2P
+#define CFG_CHANGED_IFACE_PRIORITY BIT(14)
+#endif
/**
* struct wpa_config - wpa_supplicant configuration data
@@ -694,6 +697,16 @@ struct wpa_config {
* sched_scan_num_short_intervals - see sched_scan_short_interval
*/
int sched_scan_num_short_intervals;
+
+#ifdef ANDROID_P2P
+ /**
+ * prioritize - Prioritize an Interface
+ * Interface name of the interface that needs to be proritized; Useful
+ * for resolving conflicts in connection. up to 16 octets encoded in
+ * UTF-8
+ */
+ char *prioritize;
+#endif
};