Message might not contain State field and CPS needs to be set to
unknown before processing message from neard. This fix processing
RequestOOB called without parameters.
---
plugins/neard.c | 3 +++
1 file changed, 3 insertions(+)
diff --git a/plugins/neard.c b/plugins/neard.c
index f46e20e..dfe4f23 100644
--- a/plugins/neard.c
+++ b/plugins/neard.c
@@ -527,6 +527,9 @@ static int process_message(DBusMessage *msg, struct oob_params *remote)
if (dbus_message_iter_get_arg_type(&iter) != DBUS_TYPE_ARRAY)
return -EINVAL;
+ /* set CPS to unknown in case State was not provided */
+ remote->power_state = CPS_UNKNOWN;
+
dbus_message_iter_recurse(&iter, &dict);
while (dbus_message_iter_get_arg_type(&dict) == DBUS_TYPE_DICT_ENTRY) {--
1.8.2.2