static DBusMessage *map_list_filter_fields(DBusConnection *connection, DBusMessage *message, void *user_data) { char **filters = NULL; gint size; DBusMessage *reply; filters = get_filter_strs(FILTER_ALL, &size); reply = dbus_message_new_method_return(message); dbus_message_append_args(reply, DBUS_TYPE_ARRAY, DBUS_TYPE_STRING, &filters, size, DBUS_TYPE_INVALID); g_strfreev(filters); return reply; }
static DBusMessage *pbap_get_filter(DBusConnection *connection, DBusMessage *message, void *user_data) { struct pbap_data *pbap = user_data; gchar **filters = NULL; gint size; DBusMessage *reply; filters = get_filter_strs(pbap->filter, &size); reply = dbus_message_new_method_return(message); dbus_message_append_args(reply, DBUS_TYPE_ARRAY, DBUS_TYPE_STRING, &filters, size, DBUS_TYPE_INVALID); g_strfreev(filters); return reply; }