Lines Matching full:message
72 * @message: Message with GetAll call
75 * Returns: Message with dict of variants as argument with properties values
79 * specified as argument. Returned message contains one dict argument
82 static DBusMessage * get_all_properties(DBusMessage *message, char *interface,
89 reply = dbus_message_new_method_return(message);
91 return wpas_dbus_error_no_memory(message);
96 return wpas_dbus_error_no_memory(message);
105 message, &error, DBUS_ERROR_INVALID_ARGS,
113 return wpas_dbus_error_no_memory(message);
120 static int is_signature_correct(DBusMessage *message,
126 const char *sig = dbus_message_get_signature(message);
148 static DBusMessage * properties_get_all(DBusMessage *message, char *interface,
151 if (os_strcmp(dbus_message_get_signature(message), "s") != 0)
152 return dbus_message_new_error(message, DBUS_ERROR_INVALID_ARGS,
155 return get_all_properties(message, interface, obj_dsc);
159 static DBusMessage * properties_get(DBusMessage *message,
167 if (os_strcmp(dbus_message_get_signature(message), "ss")) {
168 return dbus_message_new_error(message, DBUS_ERROR_INVALID_ARGS,
173 return dbus_message_new_error(message, DBUS_ERROR_INVALID_ARGS,
177 reply = dbus_message_new_method_return(message);
184 message, &error, DBUS_ERROR_FAILED,
193 static DBusMessage * properties_set(DBusMessage *message,
201 if (os_strcmp(dbus_message_get_signature(message), "ssv")) {
202 return dbus_message_new_error(message, DBUS_ERROR_INVALID_ARGS,
207 return dbus_message_new_error(message, DBUS_ERROR_INVALID_ARGS,
211 dbus_message_iter_init(message, &iter);
220 reply = dbus_message_new_method_return(message);
223 message, &error, DBUS_ERROR_FAILED,
233 properties_get_or_set(DBusMessage *message, DBusMessageIter *iter,
241 method = dbus_message_get_member(message);
247 return dbus_message_new_error(message, DBUS_ERROR_INVALID_ARGS,
266 dbus_message_get_path(message));
267 return dbus_message_new_error(message, DBUS_ERROR_INVALID_ARGS,
274 return properties_get(message, property_dsc,
279 return properties_set(message, property_dsc, obj_dsc->user_data);
283 static DBusMessage * properties_handler(DBusMessage *message,
290 method = dbus_message_get_member(message);
291 dbus_message_iter_init(message, &iter);
301 return dbus_message_new_error(message,
311 return properties_get_all(message, interface, obj_dsc);
314 return properties_get_or_set(message, &iter, interface,
317 return dbus_message_new_error(message, DBUS_ERROR_UNKNOWN_METHOD,
322 static DBusMessage * msg_method_handler(DBusMessage *message,
329 method = dbus_message_get_member(message);
330 msg_interface = dbus_message_get_interface(message);
346 dbus_message_get_path(message));
347 return dbus_message_new_error(message,
351 if (!is_signature_correct(message, method_dsc)) {
352 return dbus_message_new_error(message, DBUS_ERROR_INVALID_ARGS,
356 return method_dsc->method_handler(message, obj_dsc->user_data);
362 * @connection: DBus connection on which message was received
363 * @message: Received message
364 * @user_data: pointer to description of object to which message was sent
365 * Returns: Returns information whether message was handled or not
367 * Reads message interface and method name, then checks if they matches one
370 * and tries to match method's name and interface to those read from message
372 * response is sent. Otherwise, the DBUS_ERROR_UNKNOWN_METHOD error message
376 DBusMessage *message, void *user_data)
384 /* get method, interface and path the message is addressed to */
385 method = dbus_message_get_member(message);
386 path = dbus_message_get_path(message);
387 msg_interface = dbus_message_get_interface(message);
393 dbus_message_get_signature(message));
395 /* if message is introspection method call */
401 reply = wpa_dbus_introspect(message, obj_dsc);
404 message, DBUS_ERROR_UNKNOWN_METHOD,
409 /* if message is properties method call */
410 reply = properties_handler(message, obj_dsc);
412 reply = msg_method_handler(message, obj_dsc);
415 /* If handler succeed returning NULL, reply empty message */
417 reply = dbus_message_new_method_return(message);
419 if (!dbus_message_get_no_reply(message))
485 /* Register the message handler for the global dbus interface */
488 wpa_printf(MSG_ERROR, "dbus: Could not set up message handler");
492 /* Register our service with the message bus */
507 error.name, error.message);
551 /* Register the message handler for the interface functions */
555 wpa_printf(MSG_DEBUG, "dbus: %s", error.message);
558 "dbus: Could not set up message handler for interface %s object %s (error: %s message: %s)",
559 ifname, path, error.name, error.message);
638 error.name, error.message);
817 * message, so if you marked a property changed as a result of DBus call
908 * @iter: DBus message iter at which to append property dictionary.
934 wpa_printf(MSG_ERROR, "dbus: %s: failed to open message dict",
947 dbus_error_is_set(&error) ? error.message : "none");
1015 * wpas_dbus_reply_new_from_error - Create a new D-Bus error message from a
1017 * @message: The original request message for which the error is a reply
1021 * Returns: A new D-Bus error message
1023 * Given a DBusMessage structure, creates a new D-Bus error message using
1026 DBusMessage * wpas_dbus_reply_new_from_error(DBusMessage *message,
1031 if (error && error->name && error->message) {
1032 return dbus_message_new_error(message, error->name,
1033 error->message);
1036 return dbus_message_new_error(message, fallback_name,
1063 * @msg: Pointer to message to append fields to
1064 * @si: Pointer to wpa_signal_info to add to the message