D-Bus 1.12.20

Data Fields
DBusConnection Struct Reference
D-Bus secret internal implementation details » DBusConnection implementation details

Implementation details of DBusConnection. More...

## Data Fields
DBusAtomic | refcount
| Reference count.
DBusRMutex * | mutex
| Lock on the entire DBusConnection.
DBusCMutex * | dispatch_mutex
| Protects dispatch_acquired.
DBusCondVar * | dispatch_cond
| Notify when dispatch_acquired is available.
DBusCMutex * | io_path_mutex
| Protects io_path_acquired.
DBusCondVar * | io_path_cond
| Notify when io_path_acquired is available.
DBusList * | outgoing_messages
| Queue of messages we need to send, send the end of the list first.
DBusList * | incoming_messages
| Queue of messages we have received, end of the list received most recently.
DBusList * | expired_messages
| Messages that will be released when we next unlock.
DBusMessage * | message_borrowed
| Filled in if the first incoming message has been borrowed; dispatch_acquired will be set by the borrower.
int | n_outgoing
| Length of outgoing queue.
int | n_incoming
| Length of incoming queue.
DBusCounter * | outgoing_counter
| Counts size of outgoing messages.
DBusTransport * | transport
| Object that sends/receives messages over network.
DBusWatchList * | watches
| Stores active watches.
DBusTimeoutList * | timeouts
| Stores active timeouts.
DBusList * | filter_list
| List of filters.
DBusRMutex * | slot_mutex
| Lock on slot_list so overall connection lock need not be taken.
DBusDataSlotList | slot_list
| Data stored by allocated integer ID.
DBusHashTable * | pending_replies
| Hash of message serials to DBusPendingCall.
dbus_uint32_t | client_serial
| Client serial. More...
DBusList * | disconnect_message_link
| Preallocated list node for queueing the disconnection message.
DBusWakeupMainFunction | wakeup_main_function
| Function to wake up the mainloop
void * | wakeup_main_data
| Application data for wakeup_main_function.
DBusFreeFunction | free_wakeup_main_data
| free wakeup_main_data
DBusDispatchStatusFunction | dispatch_status_function
| Function on dispatch status changes
void * | dispatch_status_data
| Application data for dispatch_status_function.
DBusFreeFunction | free_dispatch_status_data
| free dispatch_status_data
DBusDispatchStatus | last_dispatch_status
| The last dispatch status we reported to the application.
DBusObjectTree * | objects
| Object path handlers registered with this connection.
char * | server_guid
| GUID of server if we are in shared_connections, NULL if server GUID is unknown or connection is private.
dbus_bool_t | dispatch_acquired
| Someone has dispatch path (can drain incoming queue)
dbus_bool_t | io_path_acquired
| Someone has transport io path (can use the transport to read/write messages)
unsigned int | shareable: 1
| TRUE if libdbus owns a reference to the connection and can return it from dbus_connection_open() more than once
unsigned int | exit_on_disconnect: 1
| If TRUE, exit after handling disconnect signal.
unsigned int | route_peer_messages: 1
| If TRUE, if org.freedesktop.DBus.Peer messages have a bus name, don't handle them automatically.
unsigned int | disconnected_message_arrived: 1
| We popped or are dispatching the disconnected message. More...
unsigned int | disconnected_message_processed: 1
| We did our default handling of the disconnected message, such as closing the connection.
unsigned int | have_connection_lock: 1
| Used to check locking.

## Detailed Description

Implementation details of DBusConnection.

All fields are private.

Definition at line 256 of file dbus-connection.c.

## Field Documentation

## ◆ client_serial

dbus_uint32_t DBusConnection::client_serial

Client serial.

Increments each time a message is sent

Definition at line 291 of file dbus-connection.c.

## ◆ disconnected_message_arrived

unsigned int DBusConnection::disconnected_message_arrived

We popped or are dispatching the disconnected message.

if the disconnect_message_link is NULL then we queued it, but this flag is whether it got to the head of the queue.

Definition at line 321 of file dbus-connection.c.

The documentation for this struct was generated from the following file:

- dbus-connection.c