From: Patrik Flykt <[email protected]>
Implement functions to append 'Name' and 'SSID' fields to Agent API
RequestInput D-Bus method call. Add these fields if the service is
hidden.
---
src/agent.c | 33 +++++++++++++++++++++++++++++++++
1 files changed, 33 insertions(+), 0 deletions(-)
diff --git a/src/agent.c b/src/agent.c
index 0bbb266..ce72d50 100644
--- a/src/agent.c
+++ b/src/agent.c
@@ -261,6 +261,32 @@ static void request_input_append_wps(DBusMessageIter
*iter, void *user_data)
DBUS_TYPE_STRING, &str);
}
+static void request_input_append_name(DBusMessageIter *iter, void *user_data)
+{
+ const char *str = "string";
+
+ connman_dbus_dict_append_basic(iter, "Type",
+ DBUS_TYPE_STRING, &str);
+ str = "mandatory";
+ connman_dbus_dict_append_basic(iter, "Requirement",
+ DBUS_TYPE_STRING, &str);
+ connman_dbus_dict_append_array(iter, "Alternates",
+ DBUS_TYPE_STRING,
+ request_input_append_alternates,
+ "SSID");
+}
+
+static void request_input_append_ssid(DBusMessageIter *iter, void *user_data)
+{
+ const char *str = "ssid";
+
+ connman_dbus_dict_append_basic(iter, "Type",
+ DBUS_TYPE_STRING, &str);
+ str = "alternate";
+ connman_dbus_dict_append_basic(iter, "Requirement",
+ DBUS_TYPE_STRING, &str);
+}
+
static void request_input_append_password(DBusMessageIter *iter,
void *user_data)
{
@@ -353,6 +379,13 @@ int __connman_agent_request_passphrase_input(struct
connman_service *service,
connman_dbus_dict_open(&iter, &dict);
+ if (__connman_service_is_hidden(service)) {
+ connman_dbus_dict_append_dict(&dict, "Name",
+ request_input_append_name, NULL);
+ connman_dbus_dict_append_dict(&dict, "SSID",
+ request_input_append_ssid, NULL);
+ }
+
if (__connman_service_get_security(service) ==
CONNMAN_SERVICE_SECURITY_8021X) {
connman_dbus_dict_append_dict(&dict, "Identity",
--
1.7.2.5
_______________________________________________
connman mailing list
[email protected]
http://lists.connman.net/listinfo/connman