typedef dbus_bool_t (* BusConnectionForeachFunction) (DBusConnection *connection,
void *data);
+DBusLoop* bus_connection_get_loop (DBusConnection *connection);
BusConnections* bus_connections_new (BusContext *context);
BusConnections* bus_connections_ref (BusConnections *connections);
BusMatchmaker* bus_connection_get_matchmaker (DBusConnection *connection);
const char * bus_connection_get_loginfo (DBusConnection *connection);
BusSELinuxID* bus_connection_get_selinux_id (DBusConnection *connection);
+BusAppArmorConfinement* bus_connection_dup_apparmor_confinement (DBusConnection *connection);
dbus_bool_t bus_connections_check_limits (BusConnections *connections,
DBusConnection *requesting_completion,
+ const char **limit_name_out,
+ int *limit_out,
DBusError *error);
void bus_connections_expire_incomplete (BusConnections *connections);
void bus_connection_send_oom_error (DBusConnection *connection,
DBusMessage *in_reply_to);
+dbus_bool_t bus_connection_has_deferred_messages (DBusConnection *connection);
+dbus_bool_t bus_connection_queue_deferred_message (DBusConnection *connection,
+ BusDeferredMessage *message,
+ dbus_bool_t prepend);
+BusDeferredMessage *bus_connection_pop_deferred_message (DBusConnection *connection);
+dbus_bool_t bus_connection_putback_deferred_message (DBusConnection *connection,
+ BusDeferredMessage *message);
+void bus_connection_remove_deferred_message (DBusConnection *connection,
+ BusDeferredMessage *message);
+void bus_connection_dispatch_deferred (DBusConnection *connection);
+void bus_connection_clear_deferred_messages (DBusConnection *connection);
+
+/* called by policy.c */
+dbus_bool_t bus_connection_is_service_owner_by_prefix (DBusConnection *connection,
+ const char *name_prefix);
+const DBusList *bus_connection_get_owned_services_list (DBusConnection *connection);
+
/* called by signals.c */
dbus_bool_t bus_connection_add_match_rule (DBusConnection *connection,
BusMatchRule *rule);
DBusError *error);
BusClientPolicy* bus_connection_get_policy (DBusConnection *connection);
-dbus_bool_t bus_connection_is_monitor (DBusConnection *connection);
-dbus_bool_t bus_connection_be_monitor (DBusConnection *connection,
- BusTransaction *transaction,
- DBusError *error);
+dbus_bool_t bus_connection_is_monitor (DBusConnection *connection);
+dbus_bool_t bus_connection_be_monitor (DBusConnection *connection,
+ BusTransaction *transaction,
+ DBusList **rules,
+ DBusError *error);
+#ifdef DBUS_ENABLE_CYNARA
+const char *bus_connection_get_cynara_session_id (DBusConnection *connection);
+#endif
/* transaction API so we can send or not send a block of messages as a whole */
BusContext* bus_transaction_get_context (BusTransaction *transaction);
dbus_bool_t bus_transaction_send (BusTransaction *transaction,
DBusConnection *connection,
+ DBusMessage *message,
+ dbus_bool_t deferred_dispatch);
+dbus_bool_t bus_transaction_capture (BusTransaction *transaction,
+ DBusConnection *connection,
+ DBusConnection *addressed_recipient,
DBusMessage *message);
+dbus_bool_t bus_transaction_capture_error_reply (BusTransaction *transaction,
+ DBusConnection *addressed_recipient,
+ const DBusError *error,
+ DBusMessage *in_reply_to);
dbus_bool_t bus_transaction_send_from_driver (BusTransaction *transaction,
DBusConnection *connection,
DBusMessage *message);
DBusMessage *in_reply_to);
void bus_transaction_cancel_and_free (BusTransaction *transaction);
void bus_transaction_execute_and_free (BusTransaction *transaction);
+DBusList * bus_transaction_copy_connections (BusTransaction *transaction);
dbus_bool_t bus_transaction_add_cancel_hook (BusTransaction *transaction,
BusTransactionCancelFunction cancel_function,
void *data,
int bus_connection_get_peak_match_rules (DBusConnection *connection);
int bus_connection_get_peak_bus_names (DBusConnection *connection);
+int bus_connection_get_n_pending_replies (DBusConnection *connection);
+int bus_connection_get_peak_pending_replies (DBusConnection *connection);
+
#endif /* BUS_CONNECTION_H */