D-Bus  1.16.2
dbus-connection.h
1 /* -*- mode: C; c-file-style: "gnu"; indent-tabs-mode: nil; -*- */
2 /* dbus-connection.h DBusConnection object
3  *
4  * Copyright (C) 2002, 2003 Red Hat Inc.
5  *
6  * SPDX-License-Identifier: AFL-2.1 OR GPL-2.0-or-later
7  *
8  * Licensed under the Academic Free License version 2.1
9  *
10  * This program is free software; you can redistribute it and/or modify
11  * it under the terms of the GNU General Public License as published by
12  * the Free Software Foundation; either version 2 of the License, or
13  * (at your option) any later version.
14  *
15  * This program is distributed in the hope that it will be useful,
16  * but WITHOUT ANY WARRANTY; without even the implied warranty of
17  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
18  * GNU General Public License for more details.
19  *
20  * You should have received a copy of the GNU General Public License
21  * along with this program; if not, write to the Free Software
22  * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
23  *
24  */
25 #if !defined (DBUS_INSIDE_DBUS_H) && !defined (DBUS_COMPILATION)
26 #error "Only <dbus/dbus.h> can be included directly, this file may disappear or change contents."
27 #endif
28 
29 #ifndef DBUS_CONNECTION_H
30 #define DBUS_CONNECTION_H
31 
32 #include <dbus/dbus-errors.h>
33 #include <dbus/dbus-macros.h>
34 #include <dbus/dbus-memory.h>
35 #include <dbus/dbus-message.h>
36 #include <dbus/dbus-shared.h>
37 
39 
45 /* documented in dbus-watch.c */
46 typedef struct DBusWatch DBusWatch;
47 /* documented in dbus-timeout.c */
48 typedef struct DBusTimeout DBusTimeout;
52 typedef struct DBusPendingCall DBusPendingCall;
54 typedef struct DBusConnection DBusConnection;
57 
61 typedef enum
62 {
65  DBUS_WATCH_ERROR = 1 << 2,
70  DBUS_WATCH_HANGUP = 1 << 3
75  /* Internal to libdbus, there is also _DBUS_WATCH_NVAL in dbus-watch.h */
77 
82 typedef enum
83 {
88 
95  void *data);
100 typedef void (* DBusWatchToggledFunction) (DBusWatch *watch,
101  void *data);
106 typedef void (* DBusRemoveWatchFunction) (DBusWatch *watch,
107  void *data);
114  void *data);
120 typedef void (* DBusTimeoutToggledFunction) (DBusTimeout *timeout,
121  void *data);
126 typedef void (* DBusRemoveTimeoutFunction) (DBusTimeout *timeout,
127  void *data);
131 typedef void (* DBusDispatchStatusFunction) (DBusConnection *connection,
132  DBusDispatchStatus new_status,
133  void *data);
138 typedef void (* DBusWakeupMainFunction) (void *data);
139 
147  unsigned long uid,
148  void *data);
149 
157  const char *user_sid,
158  void *data);
159 
160 
166  void *user_data);
167 
173  DBusMessage *message,
174  void *user_data);
175 DBUS_EXPORT
176 DBusConnection* dbus_connection_open (const char *address,
177  DBusError *error);
178 DBUS_EXPORT
179 DBusConnection* dbus_connection_open_private (const char *address,
180  DBusError *error);
181 DBUS_EXPORT
183 DBUS_EXPORT
184 void dbus_connection_unref (DBusConnection *connection);
185 DBUS_EXPORT
186 void dbus_connection_close (DBusConnection *connection);
187 DBUS_EXPORT
189 DBUS_EXPORT
191 DBUS_EXPORT
193 DBUS_EXPORT
195 DBUS_EXPORT
197  int type);
198 
199 DBUS_EXPORT
201  dbus_bool_t exit_on_disconnect);
202 DBUS_EXPORT
203 void dbus_connection_flush (DBusConnection *connection);
204 DBUS_EXPORT
206  int timeout_milliseconds);
207 DBUS_EXPORT
209  int timeout_milliseconds);
210 DBUS_EXPORT
212 DBUS_EXPORT
214  DBusMessage *message);
215 DBUS_EXPORT
217  DBusMessage *message);
218 DBUS_EXPORT
220 DBUS_EXPORT
222 DBUS_EXPORT
224 DBUS_EXPORT
226 DBUS_EXPORT
228  DBusMessage *message,
229  dbus_uint32_t *client_serial);
230 DBUS_EXPORT
232  DBusMessage *message,
233  DBusPendingCall **pending_return,
234  int timeout_milliseconds);
235 DBUS_EXPORT
237  DBusMessage *message,
238  int timeout_milliseconds,
239  DBusError *error);
240 DBUS_EXPORT
242  DBusAddWatchFunction add_function,
243  DBusRemoveWatchFunction remove_function,
244  DBusWatchToggledFunction toggled_function,
245  void *data,
246  DBusFreeFunction free_data_function);
247 DBUS_EXPORT
249  DBusAddTimeoutFunction add_function,
250  DBusRemoveTimeoutFunction remove_function,
251  DBusTimeoutToggledFunction toggled_function,
252  void *data,
253  DBusFreeFunction free_data_function);
254 DBUS_EXPORT
256  DBusWakeupMainFunction wakeup_main_function,
257  void *data,
258  DBusFreeFunction free_data_function);
259 DBUS_EXPORT
262  void *data,
263  DBusFreeFunction free_data_function);
264 DBUS_EXPORT
266  unsigned long *uid);
267 DBUS_EXPORT
269  unsigned long *pid);
270 DBUS_EXPORT
272  void **data,
273  dbus_int32_t *data_size);
274 DBUS_EXPORT
276  DBusAllowUnixUserFunction function,
277  void *data,
278  DBusFreeFunction free_data_function);
279 DBUS_EXPORT
281  char **windows_sid_p);
282 DBUS_EXPORT
285  void *data,
286  DBusFreeFunction free_data_function);
287 DBUS_EXPORT
289  dbus_bool_t value);
290 DBUS_EXPORT
292  dbus_bool_t value);
293 DBUS_EXPORT
295  dbus_bool_t value);
296 
297 
298 /* Filters */
299 
300 DBUS_EXPORT
302  DBusHandleMessageFunction function,
303  void *user_data,
304  DBusFreeFunction free_data_function);
305 DBUS_EXPORT
307  DBusHandleMessageFunction function,
308  void *user_data);
309 
310 
311 /* Other */
312 DBUS_EXPORT
314 DBUS_EXPORT
316 DBUS_EXPORT
318  dbus_int32_t slot,
319  void *data,
320  DBusFreeFunction free_data_func);
321 DBUS_EXPORT
322 void* dbus_connection_get_data (DBusConnection *connection,
323  dbus_int32_t slot);
324 
325 DBUS_EXPORT
326 void dbus_connection_set_change_sigpipe (dbus_bool_t will_modify_sigpipe);
327 
328 DBUS_EXPORT
330  long size);
331 DBUS_EXPORT
333 DBUS_EXPORT
335  long size);
336 DBUS_EXPORT
338 
339 DBUS_EXPORT
341  long n);
342 DBUS_EXPORT
344 DBUS_EXPORT
346  long n);
347 DBUS_EXPORT
349 
350 DBUS_EXPORT
352 DBUS_EXPORT
354 
355 DBUS_EXPORT
357 DBUS_EXPORT
359  DBusPreallocatedSend *preallocated);
360 DBUS_EXPORT
362  DBusPreallocatedSend *preallocated,
363  DBusMessage *message,
364  dbus_uint32_t *client_serial);
365 
366 
367 /* Object tree functionality */
368 
373 typedef void (* DBusObjectPathUnregisterFunction) (DBusConnection *connection,
374  void *user_data);
381  DBusMessage *message,
382  void *user_data);
383 
391 {
395  void (* dbus_internal_pad1) (void *);
396  void (* dbus_internal_pad2) (void *);
397  void (* dbus_internal_pad3) (void *);
398  void (* dbus_internal_pad4) (void *);
399 };
400 
401 DBUS_EXPORT
403  const char *path,
404  const DBusObjectPathVTable *vtable,
405  void *user_data,
406  DBusError *error);
407 
408 DBUS_EXPORT
410  const char *path,
411  const DBusObjectPathVTable *vtable,
412  void *user_data);
413 
414 DBUS_EXPORT
416  const char *path,
417  const DBusObjectPathVTable *vtable,
418  void *user_data,
419  DBusError *error);
420 
421 DBUS_EXPORT
423  const char *path,
424  const DBusObjectPathVTable *vtable,
425  void *user_data);
426 DBUS_EXPORT
428  const char *path);
429 
430 DBUS_EXPORT
432  const char *path,
433  void **data_p);
434 
435 DBUS_EXPORT
437  const char *parent_path,
438  char ***child_entries);
439 
440 DBUS_EXPORT
442  int *fd);
443 DBUS_EXPORT
445  int *fd);
446 
469 static inline void
470 dbus_clear_connection (DBusConnection **pointer_to_connection)
471 {
472  _dbus_clear_pointer_impl (DBusConnection, pointer_to_connection,
474 }
475 
484 #ifndef DBUS_DISABLE_DEPRECATED
485 DBUS_EXPORT
487 #endif
488 
489 DBUS_EXPORT
490 int dbus_watch_get_unix_fd (DBusWatch *watch);
491 DBUS_EXPORT
492 int dbus_watch_get_socket (DBusWatch *watch);
493 DBUS_EXPORT
494 unsigned int dbus_watch_get_flags (DBusWatch *watch);
495 DBUS_EXPORT
496 void* dbus_watch_get_data (DBusWatch *watch);
497 DBUS_EXPORT
498 void dbus_watch_set_data (DBusWatch *watch,
499  void *data,
500  DBusFreeFunction free_data_function);
501 DBUS_EXPORT
503  unsigned int flags);
504 DBUS_EXPORT
506 
514 DBUS_EXPORT
516 DBUS_EXPORT
517 void* dbus_timeout_get_data (DBusTimeout *timeout);
518 DBUS_EXPORT
519 void dbus_timeout_set_data (DBusTimeout *timeout,
520  void *data,
521  DBusFreeFunction free_data_function);
522 DBUS_EXPORT
524 DBUS_EXPORT
526 
530 
531 #endif /* DBUS_CONNECTION_H */
DBusWatchFlags
Indicates the status of a DBusWatch.
void dbus_connection_return_message(DBusConnection *connection, DBusMessage *message)
Used to return a message after peeking at it using dbus_connection_borrow_message().
void(* DBusWatchToggledFunction)(DBusWatch *watch, void *data)
Called when dbus_watch_get_enabled() may return a different value than it did before.
dbus_bool_t dbus_connection_get_object_path_data(DBusConnection *connection, const char *path, void **data_p)
Gets the user data passed to dbus_connection_register_object_path() or dbus_connection_register_fallb...
void dbus_connection_set_max_message_size(DBusConnection *connection, long size)
Specifies the maximum size message this connection is allowed to receive.
void dbus_connection_flush(DBusConnection *connection)
Blocks until the outgoing message queue is empty.
long dbus_connection_get_max_message_unix_fds(DBusConnection *connection)
Gets the value set by dbus_connection_set_max_message_unix_fds().
void dbus_connection_set_exit_on_disconnect(DBusConnection *connection, dbus_bool_t exit_on_disconnect)
Set whether _exit() should be called when the connection receives a disconnect signal.
dbus_bool_t dbus_connection_get_socket(DBusConnection *connection, int *fd)
Gets the underlying Windows or UNIX socket file descriptor of the connection, if any.
DBusMessage * dbus_connection_pop_message(DBusConnection *connection)
Returns the first-received message from the incoming message queue, removing it from the queue.
long dbus_connection_get_max_received_unix_fds(DBusConnection *connection)
Gets the value set by dbus_connection_set_max_received_unix_fds().
dbus_bool_t dbus_connection_register_object_path(DBusConnection *connection, const char *path, const DBusObjectPathVTable *vtable, void *user_data)
Registers a handler for a given path in the object hierarchy.
void dbus_connection_close(DBusConnection *connection)
Closes a private connection, so no further data can be sent or received.
void dbus_connection_set_max_message_unix_fds(DBusConnection *connection, long n)
Specifies the maximum number of unix fds a message on this connection is allowed to receive.
void dbus_connection_set_wakeup_main_function(DBusConnection *connection, DBusWakeupMainFunction wakeup_main_function, void *data, DBusFreeFunction free_data_function)
Sets the mainloop wakeup function for the connection.
dbus_bool_t dbus_connection_get_windows_user(DBusConnection *connection, char **windows_sid_p)
Gets the Windows user SID of the connection if known.
DBusHandlerResult(* DBusObjectPathMessageFunction)(DBusConnection *connection, DBusMessage *message, void *user_data)
Called when a message is sent to a registered object path.
dbus_bool_t dbus_connection_get_is_authenticated(DBusConnection *connection)
Gets whether the connection was authenticated.
void dbus_connection_send_preallocated(DBusConnection *connection, DBusPreallocatedSend *preallocated, DBusMessage *message, dbus_uint32_t *client_serial)
Sends a message using preallocated resources.
dbus_bool_t dbus_connection_read_write(DBusConnection *connection, int timeout_milliseconds)
This function is intended for use with applications that don't want to write a main loop and deal wit...
long dbus_connection_get_max_received_size(DBusConnection *connection)
Gets the value set by dbus_connection_set_max_received_size().
dbus_bool_t dbus_connection_get_unix_fd(DBusConnection *connection, int *fd)
Get the UNIX file descriptor of the connection, if any.
void(* DBusDispatchStatusFunction)(DBusConnection *connection, DBusDispatchStatus new_status, void *data)
Called when the return value of dbus_connection_get_dispatch_status() may have changed.
dbus_bool_t dbus_connection_can_send_type(DBusConnection *connection, int type)
Tests whether a certain type can be send via the connection.
dbus_bool_t dbus_connection_list_registered(DBusConnection *connection, const char *parent_path, char ***child_entries)
Lists the registered fallback handlers and object path handlers at the given parent_path.
void * dbus_connection_get_data(DBusConnection *connection, dbus_int32_t slot)
Retrieves data previously set with dbus_connection_set_data().
DBusConnection * dbus_connection_open_private(const char *address, DBusError *error)
Opens a new, dedicated connection to a remote address.
long dbus_connection_get_outgoing_size(DBusConnection *connection)
Gets the approximate size in bytes of all messages in the outgoing message queue.
void dbus_connection_set_dispatch_status_function(DBusConnection *connection, DBusDispatchStatusFunction function, void *data, DBusFreeFunction free_data_function)
Set a function to be invoked when the dispatch status changes.
dbus_bool_t dbus_connection_read_write_dispatch(DBusConnection *connection, int timeout_milliseconds)
This function is intended for use with applications that don't want to write a main loop and deal wit...
DBusHandlerResult(* DBusHandleMessageFunction)(DBusConnection *connection, DBusMessage *message, void *user_data)
Called when a message needs to be handled.
void dbus_connection_remove_filter(DBusConnection *connection, DBusHandleMessageFunction function, void *user_data)
Removes a previously-added message filter.
dbus_bool_t dbus_connection_get_is_connected(DBusConnection *connection)
Gets whether the connection is currently open.
DBusPreallocatedSend * dbus_connection_preallocate_send(DBusConnection *connection)
Preallocates resources needed to send a message, allowing the message to be sent without the possibil...
void(* DBusObjectPathUnregisterFunction)(DBusConnection *connection, void *user_data)
Called when a DBusObjectPathVTable is unregistered (or its connection is freed).
dbus_bool_t(* DBusAddWatchFunction)(DBusWatch *watch, void *data)
Called when libdbus needs a new watch to be monitored by the main loop.
void dbus_connection_unref(DBusConnection *connection)
Decrements the reference count of a DBusConnection, and finalizes it if the count reaches zero.
void dbus_connection_set_max_received_size(DBusConnection *connection, long size)
Sets the maximum total number of bytes that can be used for all messages received on this connection.
void(* DBusTimeoutToggledFunction)(DBusTimeout *timeout, void *data)
Called when dbus_timeout_get_enabled() may return a different value than it did before.
DBusDispatchStatus dbus_connection_dispatch(DBusConnection *connection)
Processes any incoming data.
dbus_bool_t dbus_connection_unregister_object_path(DBusConnection *connection, const char *path)
Unregisters the handler registered with exactly the given path.
void dbus_connection_set_unix_user_function(DBusConnection *connection, DBusAllowUnixUserFunction function, void *data, DBusFreeFunction free_data_function)
Sets a predicate function used to determine whether a given user ID is allowed to connect.
dbus_bool_t dbus_connection_try_register_object_path(DBusConnection *connection, const char *path, const DBusObjectPathVTable *vtable, void *user_data, DBusError *error)
Registers a handler for a given path in the object hierarchy.
void dbus_connection_steal_borrowed_message(DBusConnection *connection, DBusMessage *message)
Used to keep a message after peeking at it using dbus_connection_borrow_message().
dbus_bool_t dbus_connection_allocate_data_slot(dbus_int32_t *slot_p)
Allocates an integer ID to be used for storing application-specific data on any DBusConnection.
void dbus_connection_set_change_sigpipe(dbus_bool_t will_modify_sigpipe)
This function sets a global flag for whether dbus_connection_new() will set SIGPIPE behavior to SIG_I...
long dbus_connection_get_max_message_size(DBusConnection *connection)
Gets the value set by dbus_connection_set_max_message_size().
void dbus_connection_free_data_slot(dbus_int32_t *slot_p)
Deallocates a global ID for connection data slots.
dbus_bool_t(* DBusAddTimeoutFunction)(DBusTimeout *timeout, void *data)
Called when libdbus needs a new timeout to be monitored by the main loop.
void dbus_connection_set_max_received_unix_fds(DBusConnection *connection, long n)
Sets the maximum total number of unix fds that can be used for all messages received on this connecti...
void(* DBusPendingCallNotifyFunction)(DBusPendingCall *pending, void *user_data)
Called when a pending call now has a reply available.
dbus_bool_t dbus_connection_set_data(DBusConnection *connection, dbus_int32_t slot, void *data, DBusFreeFunction free_data_func)
Stores a pointer on a DBusConnection, along with an optional function to be used for freeing the data...
DBusDispatchStatus dbus_connection_get_dispatch_status(DBusConnection *connection)
Gets the current state of the incoming message queue.
DBusMessage * dbus_connection_send_with_reply_and_block(DBusConnection *connection, DBusMessage *message, int timeout_milliseconds, DBusError *error)
Sends a message and blocks a certain time period while waiting for a reply.
dbus_bool_t dbus_connection_try_register_fallback(DBusConnection *connection, const char *path, const DBusObjectPathVTable *vtable, void *user_data, DBusError *error)
Registers a fallback handler for a given subsection of the object hierarchy.
dbus_bool_t dbus_connection_get_adt_audit_session_data(DBusConnection *connection, void **data, dbus_int32_t *data_size)
Gets the ADT audit data of the connection if any.
DBusMessage * dbus_connection_borrow_message(DBusConnection *connection)
Returns the first-received message from the incoming message queue, leaving it in the queue.
dbus_bool_t dbus_connection_send_with_reply(DBusConnection *connection, DBusMessage *message, DBusPendingCall **pending_return, int timeout_milliseconds)
Queues a message to send, as with dbus_connection_send(), but also returns a DBusPendingCall used to ...
void dbus_connection_set_windows_user_function(DBusConnection *connection, DBusAllowWindowsUserFunction function, void *data, DBusFreeFunction free_data_function)
Sets a predicate function used to determine whether a given user ID is allowed to connect.
dbus_bool_t dbus_connection_get_is_anonymous(DBusConnection *connection)
Gets whether the connection is not authenticated as a specific user.
dbus_bool_t dbus_connection_set_timeout_functions(DBusConnection *connection, DBusAddTimeoutFunction add_function, DBusRemoveTimeoutFunction remove_function, DBusTimeoutToggledFunction toggled_function, void *data, DBusFreeFunction free_data_function)
Sets the timeout functions for the connection.
void(* DBusRemoveWatchFunction)(DBusWatch *watch, void *data)
Called when libdbus no longer needs a watch to be monitored by the main loop.
dbus_bool_t(* DBusAllowUnixUserFunction)(DBusConnection *connection, unsigned long uid, void *data)
Called during authentication to check whether the given UNIX user ID is allowed to connect,...
DBusDispatchStatus
Indicates the status of incoming data on a DBusConnection.
DBUS_EXPORT dbus_bool_t dbus_connection_has_messages_to_send(DBusConnection *connection)
Checks whether there are messages in the outgoing message queue.
dbus_bool_t dbus_connection_register_fallback(DBusConnection *connection, const char *path, const DBusObjectPathVTable *vtable, void *user_data)
Registers a fallback handler for a given subsection of the object hierarchy.
DBusConnection * dbus_connection_open(const char *address, DBusError *error)
Gets a connection to a remote address.
void dbus_connection_free_preallocated_send(DBusConnection *connection, DBusPreallocatedSend *preallocated)
Frees preallocated message-sending resources from dbus_connection_preallocate_send().
long dbus_connection_get_outgoing_unix_fds(DBusConnection *connection)
Gets the approximate number of uni fds of all messages in the outgoing message queue.
void(* DBusWakeupMainFunction)(void *data)
Called when the main loop's thread should be notified that there's now work to do.
void dbus_connection_set_allow_anonymous(DBusConnection *connection, dbus_bool_t value)
This function must be called on the server side of a connection when the connection is first seen in ...
dbus_bool_t dbus_connection_add_filter(DBusConnection *connection, DBusHandleMessageFunction function, void *user_data, DBusFreeFunction free_data_function)
Adds a message filter.
dbus_bool_t dbus_connection_send(DBusConnection *connection, DBusMessage *message, dbus_uint32_t *serial)
Adds a message to the outgoing message queue.
DBusConnection * dbus_connection_ref(DBusConnection *connection)
Increments the reference count of a DBusConnection.
void dbus_connection_set_builtin_filters_enabled(DBusConnection *connection, dbus_bool_t value)
Enables the builtin filtering of messages.
char * dbus_connection_get_server_id(DBusConnection *connection)
Gets the ID of the server address we are authenticated to, if this connection is on the client side.
dbus_bool_t(* DBusAllowWindowsUserFunction)(DBusConnection *connection, const char *user_sid, void *data)
Called during authentication to check whether the given Windows user ID is allowed to connect,...
dbus_bool_t dbus_connection_set_watch_functions(DBusConnection *connection, DBusAddWatchFunction add_function, DBusRemoveWatchFunction remove_function, DBusWatchToggledFunction toggled_function, void *data, DBusFreeFunction free_data_function)
Sets the watch functions for the connection.
void(* DBusRemoveTimeoutFunction)(DBusTimeout *timeout, void *data)
Called when libdbus no longer needs a timeout to be monitored by the main loop.
dbus_bool_t dbus_connection_get_unix_process_id(DBusConnection *connection, unsigned long *pid)
Gets the process ID of the connection if any.
dbus_bool_t dbus_connection_get_unix_user(DBusConnection *connection, unsigned long *uid)
Gets the UNIX user ID of the connection if known.
void dbus_connection_set_route_peer_messages(DBusConnection *connection, dbus_bool_t value)
Normally DBusConnection automatically handles all messages to the org.freedesktop....
@ DBUS_WATCH_READABLE
As in POLLIN.
@ DBUS_WATCH_WRITABLE
As in POLLOUT.
@ DBUS_WATCH_HANGUP
As in POLLHUP (can't watch for it, but can be present in current state passed to dbus_watch_handle())...
@ DBUS_WATCH_ERROR
As in POLLERR (can't watch for this, but can be present in current state passed to dbus_watch_handle(...
@ DBUS_DISPATCH_NEED_MEMORY
More memory is needed to continue.
@ DBUS_DISPATCH_COMPLETE
All currently available data has been processed.
@ DBUS_DISPATCH_DATA_REMAINS
There is more data to potentially convert to messages.
#define DBUS_DEPRECATED
Tells the compiler to warn about a function or type if it's used.
#define DBUS_BEGIN_DECLS
Macro used prior to declaring functions in the D-Bus header files.
#define DBUS_END_DECLS
Macro used after declaring functions in the D-Bus header files.
void(* DBusFreeFunction)(void *memory)
The type of a function which frees a block of memory.
Definition: dbus-memory.h:65
DBusHandlerResult
Results that a message handler can return.
Definition: dbus-shared.h:69
DBUS_EXPORT dbus_bool_t dbus_timeout_handle(DBusTimeout *timeout)
Calls the timeout handler for this timeout.
Definition: dbus-timeout.c:500
DBUS_EXPORT dbus_bool_t dbus_timeout_get_enabled(DBusTimeout *timeout)
Returns whether a timeout is enabled or not.
Definition: dbus-timeout.c:514
DBUS_EXPORT int dbus_timeout_get_interval(DBusTimeout *timeout)
Gets the timeout interval.
Definition: dbus-timeout.c:444
DBUS_EXPORT void * dbus_timeout_get_data(DBusTimeout *timeout)
Gets data previously set with dbus_timeout_set_data() or NULL if none.
Definition: dbus-timeout.c:457
DBUS_EXPORT void dbus_timeout_set_data(DBusTimeout *timeout, void *data, DBusFreeFunction free_data_function)
Sets data which can be retrieved with dbus_timeout_get_data().
Definition: dbus-timeout.c:474
dbus_uint32_t dbus_bool_t
A boolean, valid values are TRUE and FALSE.
Definition: dbus-types.h:37
int dbus_int32_t
A 32-bit signed integer on all platforms.
unsigned int dbus_uint32_t
A 32-bit unsigned integer on all platforms.
DBUS_EXPORT int dbus_watch_get_unix_fd(DBusWatch *watch)
Returns a UNIX file descriptor to be watched, which may be a pipe, socket, or other type of descripto...
Definition: dbus-watch.c:566
DBUS_EXPORT void dbus_watch_set_data(DBusWatch *watch, void *data, DBusFreeFunction free_data_function)
Sets data which can be retrieved with dbus_watch_get_data().
Definition: dbus-watch.c:679
DBUS_EXPORT DBUS_DEPRECATED int dbus_watch_get_fd(DBusWatch *watch)
Deprecated former name of dbus_watch_get_unix_fd().
Definition: dbus-watch.c:545
DBUS_EXPORT void * dbus_watch_get_data(DBusWatch *watch)
Gets data previously set with dbus_watch_set_data() or NULL if none.
Definition: dbus-watch.c:660
DBUS_EXPORT int dbus_watch_get_socket(DBusWatch *watch)
Returns a socket to be watched, on UNIX this will return -1 if our transport is not socket-based so d...
Definition: dbus-watch.c:595
DBUS_EXPORT dbus_bool_t dbus_watch_handle(DBusWatch *watch, unsigned int flags)
Called to notify the D-Bus library when a previously-added watch is ready for reading or writing,...
Definition: dbus-watch.c:735
DBUS_EXPORT dbus_bool_t dbus_watch_get_enabled(DBusWatch *watch)
Returns whether a watch is enabled or not.
Definition: dbus-watch.c:704
DBUS_EXPORT unsigned int dbus_watch_get_flags(DBusWatch *watch)
Gets flags from DBusWatchFlags indicating what conditions should be monitored on the file descriptor.
Definition: dbus-watch.c:644
Implementation details of DBusConnection.
Object representing an exception.
Definition: dbus-errors.h:51
Internals of DBusMessage.
Virtual table that must be implemented to handle a portion of the object path hierarchy.
void(* dbus_internal_pad1)(void *)
Reserved for future expansion.
void(* dbus_internal_pad2)(void *)
Reserved for future expansion.
void(* dbus_internal_pad3)(void *)
Reserved for future expansion.
DBusObjectPathMessageFunction message_function
Function to handle messages.
DBusObjectPathUnregisterFunction unregister_function
Function to unregister this handler.
void(* dbus_internal_pad4)(void *)
Reserved for future expansion.
Implementation details of DBusPendingCall - all fields are private.
Internals of DBusPreallocatedSend.
Internals of DBusTimeout.
Definition: dbus-timeout.c:43
Implementation of DBusWatch.
Definition: dbus-watch.c:43