diff --git a/proximity/monitor.c b/proximity/monitor.c
index 50594f7..7ec1b4c 100644
--- a/proximity/monitor.c
+++ b/proximity/monitor.c
#include <config.h>
#endif
+#include <stdint.h>
#include <gdbus.h>
+#include "dbus-common.h"
#include "error.h"
#include "log.h"
static DBusMessage *get_properties(DBusConnection *conn,
DBusMessage *msg, void *data)
{
- return dbus_message_new_method_return(msg);
+ struct monitor *monitor = data;
+ DBusMessageIter iter;
+ DBusMessageIter dict;
+ DBusMessage *reply;
+
+ reply = dbus_message_new_method_return(msg);
+ if (!reply)
+ return NULL;
+
+ dbus_message_iter_init_append(reply, &iter);
+
+ dbus_message_iter_open_container(&iter, DBUS_TYPE_ARRAY,
+ DBUS_DICT_ENTRY_BEGIN_CHAR_AS_STRING
+ DBUS_TYPE_STRING_AS_STRING DBUS_TYPE_VARIANT_AS_STRING
+ DBUS_DICT_ENTRY_END_CHAR_AS_STRING, &dict);
+
+ dict_append_entry(&dict, "LinkLossAlertLevel",
+ DBUS_TYPE_STRING, &monitor->linklosslevel);
+
+ dbus_message_iter_close_container(&iter, &dict);
+
+ return reply;
}
static DBusMessage *set_property(DBusConnection *conn,