summaryrefslogtreecommitdiff
path: root/gsupplicant
diff options
context:
space:
mode:
authorDaniel Wagner <wagi@monom.org>2019-06-05 14:18:37 +0200
committerDaniel Wagner <wagi@monom.org>2019-06-05 14:18:37 +0200
commita99ad5dc0877cfee76c7a07cef5835760d7a404f (patch)
treeae67c1228a3baad99adc9e7bc19bc99dbe64d76e /gsupplicant
parentc2cf8f83761933072870f60270f5e00286098c48 (diff)
downloadconnman-a99ad5dc0877cfee76c7a07cef5835760d7a404f.tar.gz
gsupplicant: Add support for setting BSS expiration age
Diffstat (limited to 'gsupplicant')
-rw-r--r--gsupplicant/gsupplicant.h3
-rw-r--r--gsupplicant/supplicant.c18
2 files changed, 21 insertions, 0 deletions
diff --git a/gsupplicant/gsupplicant.h b/gsupplicant/gsupplicant.h
index bfb52db7..7935c3a6 100644
--- a/gsupplicant/gsupplicant.h
+++ b/gsupplicant/gsupplicant.h
@@ -268,6 +268,9 @@ int g_supplicant_interface_disconnect(GSupplicantInterface *interface,
GSupplicantInterfaceCallback callback,
void *user_data);
+int g_supplicant_interface_set_bss_expiration_age(GSupplicantInterface *interface,
+ unsigned int bss_expiration_age);
+
int g_supplicant_interface_set_apscan(GSupplicantInterface *interface,
unsigned int ap_scan);
diff --git a/gsupplicant/supplicant.c b/gsupplicant/supplicant.c
index 6052f7b6..f56b595f 100644
--- a/gsupplicant/supplicant.c
+++ b/gsupplicant/supplicant.c
@@ -981,6 +981,24 @@ static void interface_capability(const char *key, DBusMessageIter *iter,
key, dbus_message_iter_get_arg_type(iter));
}
+static void set_bss_expiration_age(DBusMessageIter *iter, void *user_data)
+{
+ unsigned int bss_expiration_age = GPOINTER_TO_UINT(user_data);
+
+ dbus_message_iter_append_basic(iter, DBUS_TYPE_UINT32,
+ &bss_expiration_age);
+}
+
+int g_supplicant_interface_set_bss_expiration_age(GSupplicantInterface *interface,
+ unsigned int bss_expiration_age)
+{
+ return supplicant_dbus_property_set(interface->path,
+ SUPPLICANT_INTERFACE ".Interface",
+ "BSSExpireAge", DBUS_TYPE_UINT32_AS_STRING,
+ set_bss_expiration_age, NULL,
+ GUINT_TO_POINTER(bss_expiration_age), NULL);
+}
+
struct set_apscan_data
{
unsigned int ap_scan;