ConnMan will not set those. PrimaryDeviceType will be the only one
handled.
---
 gsupplicant/gsupplicant.h |  5 ++---
 gsupplicant/supplicant.c  | 44 +++-----------------------------------------
 plugins/wifi.c            |  2 +-
 3 files changed, 6 insertions(+), 45 deletions(-)

diff --git a/gsupplicant/gsupplicant.h b/gsupplicant/gsupplicant.h
index 9c33ed8..e49aaa6 100644
--- a/gsupplicant/gsupplicant.h
+++ b/gsupplicant/gsupplicant.h
@@ -294,9 +294,8 @@ int g_supplicant_interface_set_country(GSupplicantInterface 
*interface,
                                                        void *user_data);
 bool g_supplicant_interface_has_p2p(GSupplicantInterface *interface);
 int g_supplicant_interface_set_p2p_device_config(GSupplicantInterface 
*interface,
-                                       const char *device_name,
-                                       const char *primary_dev_type,
-                                       const char *secondary_dev_types);
+                                               const char *device_name,
+                                               const char *primary_dev_type);
 GSupplicantPeer *g_supplicant_interface_peer_lookup(GSupplicantInterface 
*interface,
                                                const char *identifier);
 bool g_supplicant_interface_is_p2p_finding(GSupplicantInterface *interface);
diff --git a/gsupplicant/supplicant.c b/gsupplicant/supplicant.c
index 176d705..8fd3ab4 100644
--- a/gsupplicant/supplicant.c
+++ b/gsupplicant/supplicant.c
@@ -3255,7 +3255,6 @@ bool g_supplicant_interface_has_p2p(GSupplicantInterface 
*interface)
 struct supplicant_p2p_dev_config {
        char *device_name;
        char *dev_type;
-       char **sec_dev_types;
 };
 
 static void p2p_device_config_result(const char *error,
@@ -3269,7 +3268,6 @@ static void p2p_device_config_result(const char *error,
 
        g_free(config->device_name);
        g_free(config->dev_type);
-       g_strfreev(config->sec_dev_types);
        dbus_free(config);
 }
 
@@ -3297,30 +3295,6 @@ static int dev_type_str2bin(const char *type, unsigned 
char dev_type[8])
        return 8;
 }
 
-static void append_secondary_dev_types(DBusMessageIter *iter, void *user_data)
-{
-       struct supplicant_p2p_dev_config *config = user_data;
-       unsigned char dev_type[8] = {}, *type;
-       char **types;
-       int len;
-
-       type = dev_type;
-
-       for (types = config->sec_dev_types; *types; types++) {
-               DBusMessageIter array;
-
-               len = dev_type_str2bin(*types, dev_type);
-               if (!len)
-                       continue;
-
-               dbus_message_iter_open_container(iter, DBUS_TYPE_ARRAY,
-                                       DBUS_TYPE_BYTE_AS_STRING, &array);
-               dbus_message_iter_append_fixed_array(&array, DBUS_TYPE_BYTE,
-                                       &type, len);
-               dbus_message_iter_close_container(iter, &array);
-       }
-}
-
 static void p2p_device_config_params(DBusMessageIter *iter, void *user_data)
 {
        struct supplicant_p2p_dev_config *config = user_data;
@@ -3344,26 +3318,18 @@ static void p2p_device_config_params(DBusMessageIter 
*iter, void *user_data)
                }
        }
 
-       if (config->sec_dev_types) {
-               supplicant_dbus_dict_append_array(&dict,
-                               "SecondaryDeviceTypes",
-                               DBUS_TYPE_BYTE, append_secondary_dev_types,
-                               config);
-       }
-
        supplicant_dbus_dict_close(iter, &dict);
 }
 
 int g_supplicant_interface_set_p2p_device_config(GSupplicantInterface 
*interface,
                                        const char *device_name,
-                                       const char *primary_dev_type,
-                                       const char *secondary_dev_types)
+                                       const char *primary_dev_type)
 {
        struct supplicant_p2p_dev_config *config;
        int ret;
 
-       SUPPLICANT_DBG("P2P Device settings %s/%s/%s", device_name,
-                               primary_dev_type, secondary_dev_types);
+       SUPPLICANT_DBG("P2P Device settings %s/%s",
+                                       device_name, primary_dev_type);
 
        config = dbus_malloc0(sizeof(*config));
        if (!config)
@@ -3371,9 +3337,6 @@ int 
g_supplicant_interface_set_p2p_device_config(GSupplicantInterface *interface
 
        config->device_name = g_strdup(device_name);
        config->dev_type = g_strdup(primary_dev_type);
-       if (secondary_dev_types)
-               config->sec_dev_types = g_strsplit(secondary_dev_types,
-                                                               " ", 5);
 
        ret = supplicant_dbus_property_set(interface->path,
                                SUPPLICANT_INTERFACE ".Interface.P2PDevice",
@@ -3388,7 +3351,6 @@ int 
g_supplicant_interface_set_p2p_device_config(GSupplicantInterface *interface
        if (ret < 0) {
                g_free(config->device_name);
                g_free(config->dev_type);
-               g_strfreev(config->sec_dev_types);
                dbus_free(config);
                SUPPLICANT_DBG("Unable to set P2P Device configuration");
        }
diff --git a/plugins/wifi.c b/plugins/wifi.c
index 849243b..40402e2 100644
--- a/plugins/wifi.c
+++ b/plugins/wifi.c
@@ -2466,7 +2466,7 @@ static void p2p_support(GSupplicantInterface *interface)
                hostname = "ConnMan";
 
        g_supplicant_interface_set_p2p_device_config(interface,
-                                                       hostname, NULL, NULL);
+                                                       hostname, NULL);
        connman_peer_driver_register(&peer_driver);
 }
 
-- 
1.8.5.5

_______________________________________________
connman mailing list
[email protected]
https://lists.connman.net/mailman/listinfo/connman

Reply via email to