1 module ddbus.c_lib;
2 import core.stdc.config;
3 import core.stdc.stdarg;
4 extern (C):
5 // START dbus/dbus-arch-deps.d
6 alias c_long dbus_int64_t;
7 alias c_ulong dbus_uint64_t;
8 alias int dbus_int32_t;
9 alias uint dbus_uint32_t;
10 alias short dbus_int16_t;
11 alias ushort dbus_uint16_t;
12 // END dbus/dbus-arch-deps.d
13 // START dbus/dbus-types.d
14 alias uint dbus_unichar_t;
15 alias uint dbus_bool_t;
16 
17 
18 
19 struct DBus8ByteStruct
20 {
21     dbus_uint32_t first32;
22     dbus_uint32_t second32;
23 }
24 
25 union DBusBasicValue
26 {
27     ubyte[8] bytes;
28     dbus_int16_t i16;
29     dbus_uint16_t u16;
30     dbus_int32_t i32;
31     dbus_uint32_t u32;
32     dbus_bool_t bool_val;
33     dbus_int64_t i64;
34     dbus_uint64_t u64;
35     DBus8ByteStruct eight;
36     double dbl;
37     ubyte byt;
38     char* str;
39     int fd;
40 }
41 // END dbus/dbus-types.d
42 // START dbus/dbus-protocol.d
43 
44 // END dbus/dbus-protocol.d
45 // START dbus/dbus-errors.d
46 struct DBusError
47 {
48     const(char)* name;
49     const(char)* message;
50     uint dummy1;
51     uint dummy2;
52     uint dummy3;
53     uint dummy4;
54     uint dummy5;
55     void* padding1;
56 }
57 
58 void dbus_error_init (DBusError* error);
59 void dbus_error_free (DBusError* error);
60 void dbus_set_error (DBusError* error, const(char)* name, const(char)* message, ...);
61 void dbus_set_error_const (DBusError* error, const(char)* name, const(char)* message);
62 void dbus_move_error (DBusError* src, DBusError* dest);
63 dbus_bool_t dbus_error_has_name (const(DBusError)* error, const(char)* name);
64 dbus_bool_t dbus_error_is_set (const(DBusError)* error);
65 // END dbus/dbus-errors.d
66 // START dbus/dbus-macros.d
67 
68 // END dbus/dbus-macros.d
69 // START dbus/dbus-memory.d
70 alias void function (void*) DBusFreeFunction;
71 
72 void* dbus_malloc (size_t bytes);
73 void* dbus_malloc0 (size_t bytes);
74 void* dbus_realloc (void* memory, size_t bytes);
75 void dbus_free (void* memory);
76 void dbus_free_string_array (char** str_array);
77 void dbus_shutdown ();
78 // END dbus/dbus-memory.d
79 // START dbus/dbus-shared.d
80 enum DBusBusType
81 {
82     DBUS_BUS_SESSION = 0,
83     DBUS_BUS_SYSTEM = 1,
84     DBUS_BUS_STARTER = 2
85 }
86 
87 enum DBusHandlerResult
88 {
89     DBUS_HANDLER_RESULT_HANDLED = 0,
90     DBUS_HANDLER_RESULT_NOT_YET_HANDLED = 1,
91     DBUS_HANDLER_RESULT_NEED_MEMORY = 2
92 }
93 // END dbus/dbus-shared.d
94 // START dbus/dbus-address.d
95 struct DBusAddressEntry;
96 
97 
98 dbus_bool_t dbus_parse_address (const(char)* address, DBusAddressEntry*** entry, int* array_len, DBusError* error);
99 const(char)* dbus_address_entry_get_value (DBusAddressEntry* entry, const(char)* key);
100 const(char)* dbus_address_entry_get_method (DBusAddressEntry* entry);
101 void dbus_address_entries_free (DBusAddressEntry** entries);
102 char* dbus_address_escape_value (const(char)* value);
103 char* dbus_address_unescape_value (const(char)* value, DBusError* error);
104 // END dbus/dbus-address.d
105 // START dbus/dbus-syntax.d
106 dbus_bool_t dbus_validate_path (const(char)* path, DBusError* error);
107 dbus_bool_t dbus_validate_interface (const(char)* name, DBusError* error);
108 dbus_bool_t dbus_validate_member (const(char)* name, DBusError* error);
109 dbus_bool_t dbus_validate_error_name (const(char)* name, DBusError* error);
110 dbus_bool_t dbus_validate_bus_name (const(char)* name, DBusError* error);
111 dbus_bool_t dbus_validate_utf8 (const(char)* alleged_utf8, DBusError* error);
112 // END dbus/dbus-syntax.d
113 // START dbus/dbus-signature.d
114 struct DBusSignatureIter
115 {
116     void* dummy1;
117     void* dummy2;
118     dbus_uint32_t dummy8;
119     int dummy12;
120     int dummy17;
121 }
122 
123 void dbus_signature_iter_init (DBusSignatureIter* iter, const(char)* signature);
124 int dbus_signature_iter_get_current_type (const(DBusSignatureIter)* iter);
125 char* dbus_signature_iter_get_signature (const(DBusSignatureIter)* iter);
126 int dbus_signature_iter_get_element_type (const(DBusSignatureIter)* iter);
127 dbus_bool_t dbus_signature_iter_next (DBusSignatureIter* iter);
128 void dbus_signature_iter_recurse (const(DBusSignatureIter)* iter, DBusSignatureIter* subiter);
129 dbus_bool_t dbus_signature_validate (const(char)* signature, DBusError* error);
130 dbus_bool_t dbus_signature_validate_single (const(char)* signature, DBusError* error);
131 dbus_bool_t dbus_type_is_valid (int typecode);
132 dbus_bool_t dbus_type_is_basic (int typecode);
133 dbus_bool_t dbus_type_is_container (int typecode);
134 dbus_bool_t dbus_type_is_fixed (int typecode);
135 // END dbus/dbus-signature.d
136 // START dbus/dbus-misc.d
137 char* dbus_get_local_machine_id ();
138 void dbus_get_version (int* major_version_p, int* minor_version_p, int* micro_version_p);
139 dbus_bool_t dbus_setenv (const(char)* variable, const(char)* value);
140 // END dbus/dbus-misc.d
141 // START dbus/dbus-threads.d
142 alias DBusMutex* function () DBusMutexNewFunction;
143 alias void function (DBusMutex*) DBusMutexFreeFunction;
144 alias uint function (DBusMutex*) DBusMutexLockFunction;
145 alias uint function (DBusMutex*) DBusMutexUnlockFunction;
146 alias DBusMutex* function () DBusRecursiveMutexNewFunction;
147 alias void function (DBusMutex*) DBusRecursiveMutexFreeFunction;
148 alias void function (DBusMutex*) DBusRecursiveMutexLockFunction;
149 alias void function (DBusMutex*) DBusRecursiveMutexUnlockFunction;
150 alias DBusCondVar* function () DBusCondVarNewFunction;
151 alias void function (DBusCondVar*) DBusCondVarFreeFunction;
152 alias void function (DBusCondVar*, DBusMutex*) DBusCondVarWaitFunction;
153 alias uint function (DBusCondVar*, DBusMutex*, int) DBusCondVarWaitTimeoutFunction;
154 alias void function (DBusCondVar*) DBusCondVarWakeOneFunction;
155 alias void function (DBusCondVar*) DBusCondVarWakeAllFunction;
156 
157 
158 
159 enum DBusThreadFunctionsMask
160 {
161     DBUS_THREAD_FUNCTIONS_MUTEX_NEW_MASK = 1,
162     DBUS_THREAD_FUNCTIONS_MUTEX_FREE_MASK = 2,
163     DBUS_THREAD_FUNCTIONS_MUTEX_LOCK_MASK = 4,
164     DBUS_THREAD_FUNCTIONS_MUTEX_UNLOCK_MASK = 8,
165     DBUS_THREAD_FUNCTIONS_CONDVAR_NEW_MASK = 16,
166     DBUS_THREAD_FUNCTIONS_CONDVAR_FREE_MASK = 32,
167     DBUS_THREAD_FUNCTIONS_CONDVAR_WAIT_MASK = 64,
168     DBUS_THREAD_FUNCTIONS_CONDVAR_WAIT_TIMEOUT_MASK = 128,
169     DBUS_THREAD_FUNCTIONS_CONDVAR_WAKE_ONE_MASK = 256,
170     DBUS_THREAD_FUNCTIONS_CONDVAR_WAKE_ALL_MASK = 512,
171     DBUS_THREAD_FUNCTIONS_RECURSIVE_MUTEX_NEW_MASK = 1024,
172     DBUS_THREAD_FUNCTIONS_RECURSIVE_MUTEX_FREE_MASK = 2048,
173     DBUS_THREAD_FUNCTIONS_RECURSIVE_MUTEX_LOCK_MASK = 4096,
174     DBUS_THREAD_FUNCTIONS_RECURSIVE_MUTEX_UNLOCK_MASK = 8192,
175     DBUS_THREAD_FUNCTIONS_ALL_MASK = 16383
176 }
177 
178 struct DBusThreadFunctions
179 {
180     uint mask;
181     DBusMutexNewFunction mutex_new;
182     DBusMutexFreeFunction mutex_free;
183     DBusMutexLockFunction mutex_lock;
184     DBusMutexUnlockFunction mutex_unlock;
185     DBusCondVarNewFunction condvar_new;
186     DBusCondVarFreeFunction condvar_free;
187     DBusCondVarWaitFunction condvar_wait;
188     DBusCondVarWaitTimeoutFunction condvar_wait_timeout;
189     DBusCondVarWakeOneFunction condvar_wake_one;
190     DBusCondVarWakeAllFunction condvar_wake_all;
191     DBusRecursiveMutexNewFunction recursive_mutex_new;
192     DBusRecursiveMutexFreeFunction recursive_mutex_free;
193     DBusRecursiveMutexLockFunction recursive_mutex_lock;
194     DBusRecursiveMutexUnlockFunction recursive_mutex_unlock;
195     void function () padding1;
196     void function () padding2;
197     void function () padding3;
198     void function () padding4;
199 }
200 
201 struct DBusCondVar;
202 
203 
204 struct DBusMutex;
205 
206 
207 dbus_bool_t dbus_threads_init (const(DBusThreadFunctions)* functions);
208 dbus_bool_t dbus_threads_init_default ();
209 // END dbus/dbus-threads.d
210 // START dbus/dbus-message.d
211 struct DBusMessageIter
212 {
213     void* dummy1;
214     void* dummy2;
215     dbus_uint32_t dummy3;
216     int dummy4;
217     int dummy5;
218     int dummy6;
219     int dummy7;
220     int dummy8;
221     int dummy9;
222     int dummy10;
223     int dummy11;
224     int pad1;
225     int pad2;
226     void* pad3;
227 }
228 
229 struct DBusMessage;
230 
231 
232 DBusMessage* dbus_message_new (int message_type);
233 DBusMessage* dbus_message_new_method_call (const(char)* bus_name, const(char)* path, const(char)* iface, const(char)* method);
234 DBusMessage* dbus_message_new_method_return (DBusMessage* method_call);
235 DBusMessage* dbus_message_new_signal (const(char)* path, const(char)* iface, const(char)* name);
236 DBusMessage* dbus_message_new_error (DBusMessage* reply_to, const(char)* error_name, const(char)* error_message);
237 DBusMessage* dbus_message_new_error_printf (DBusMessage* reply_to, const(char)* error_name, const(char)* error_format, ...);
238 DBusMessage* dbus_message_copy (const(DBusMessage)* message);
239 DBusMessage* dbus_message_ref (DBusMessage* message);
240 void dbus_message_unref (DBusMessage* message);
241 int dbus_message_get_type (DBusMessage* message);
242 dbus_bool_t dbus_message_set_path (DBusMessage* message, const(char)* object_path);
243 const(char)* dbus_message_get_path (DBusMessage* message);
244 dbus_bool_t dbus_message_has_path (DBusMessage* message, const(char)* object_path);
245 dbus_bool_t dbus_message_set_interface (DBusMessage* message, const(char)* iface);
246 const(char)* dbus_message_get_interface (DBusMessage* message);
247 dbus_bool_t dbus_message_has_interface (DBusMessage* message, const(char)* iface);
248 dbus_bool_t dbus_message_set_member (DBusMessage* message, const(char)* member);
249 const(char)* dbus_message_get_member (DBusMessage* message);
250 dbus_bool_t dbus_message_has_member (DBusMessage* message, const(char)* member);
251 dbus_bool_t dbus_message_set_error_name (DBusMessage* message, const(char)* name);
252 const(char)* dbus_message_get_error_name (DBusMessage* message);
253 dbus_bool_t dbus_message_set_destination (DBusMessage* message, const(char)* destination);
254 const(char)* dbus_message_get_destination (DBusMessage* message);
255 dbus_bool_t dbus_message_set_sender (DBusMessage* message, const(char)* sender);
256 const(char)* dbus_message_get_sender (DBusMessage* message);
257 const(char)* dbus_message_get_signature (DBusMessage* message);
258 void dbus_message_set_no_reply (DBusMessage* message, dbus_bool_t no_reply);
259 dbus_bool_t dbus_message_get_no_reply (DBusMessage* message);
260 dbus_bool_t dbus_message_is_method_call (DBusMessage* message, const(char)* iface, const(char)* method);
261 dbus_bool_t dbus_message_is_signal (DBusMessage* message, const(char)* iface, const(char)* signal_name);
262 dbus_bool_t dbus_message_is_error (DBusMessage* message, const(char)* error_name);
263 dbus_bool_t dbus_message_has_destination (DBusMessage* message, const(char)* bus_name);
264 dbus_bool_t dbus_message_has_sender (DBusMessage* message, const(char)* unique_bus_name);
265 dbus_bool_t dbus_message_has_signature (DBusMessage* message, const(char)* signature);
266 dbus_uint32_t dbus_message_get_serial (DBusMessage* message);
267 void dbus_message_set_serial (DBusMessage* message, dbus_uint32_t serial);
268 dbus_bool_t dbus_message_set_reply_serial (DBusMessage* message, dbus_uint32_t reply_serial);
269 dbus_uint32_t dbus_message_get_reply_serial (DBusMessage* message);
270 void dbus_message_set_auto_start (DBusMessage* message, dbus_bool_t auto_start);
271 dbus_bool_t dbus_message_get_auto_start (DBusMessage* message);
272 dbus_bool_t dbus_message_get_path_decomposed (DBusMessage* message, char*** path);
273 dbus_bool_t dbus_message_append_args (DBusMessage* message, int first_arg_type, ...);
274 dbus_bool_t dbus_message_append_args_valist (DBusMessage* message, int first_arg_type, va_list var_args);
275 dbus_bool_t dbus_message_get_args (DBusMessage* message, DBusError* error, int first_arg_type, ...);
276 dbus_bool_t dbus_message_get_args_valist (DBusMessage* message, DBusError* error, int first_arg_type, va_list var_args);
277 dbus_bool_t dbus_message_contains_unix_fds (DBusMessage* message);
278 dbus_bool_t dbus_message_iter_init (DBusMessage* message, DBusMessageIter* iter);
279 dbus_bool_t dbus_message_iter_has_next (DBusMessageIter* iter);
280 dbus_bool_t dbus_message_iter_next (DBusMessageIter* iter);
281 char* dbus_message_iter_get_signature (DBusMessageIter* iter);
282 int dbus_message_iter_get_arg_type (DBusMessageIter* iter);
283 int dbus_message_iter_get_element_type (DBusMessageIter* iter);
284 void dbus_message_iter_recurse (DBusMessageIter* iter, DBusMessageIter* sub);
285 void dbus_message_iter_get_basic (DBusMessageIter* iter, void* value);
286 int dbus_message_iter_get_array_len (DBusMessageIter* iter);
287 void dbus_message_iter_get_fixed_array (DBusMessageIter* iter, void* value, int* n_elements);
288 void dbus_message_iter_init_append (DBusMessage* message, DBusMessageIter* iter);
289 dbus_bool_t dbus_message_iter_append_basic (DBusMessageIter* iter, int type, const(void)* value);
290 dbus_bool_t dbus_message_iter_append_fixed_array (DBusMessageIter* iter, int element_type, const(void)* value, int n_elements);
291 dbus_bool_t dbus_message_iter_open_container (DBusMessageIter* iter, int type, const(char)* contained_signature, DBusMessageIter* sub);
292 dbus_bool_t dbus_message_iter_close_container (DBusMessageIter* iter, DBusMessageIter* sub);
293 void dbus_message_iter_abandon_container (DBusMessageIter* iter, DBusMessageIter* sub);
294 void dbus_message_lock (DBusMessage* message);
295 dbus_bool_t dbus_set_error_from_message (DBusError* error, DBusMessage* message);
296 dbus_bool_t dbus_message_allocate_data_slot (dbus_int32_t* slot_p);
297 void dbus_message_free_data_slot (dbus_int32_t* slot_p);
298 dbus_bool_t dbus_message_set_data (DBusMessage* message, dbus_int32_t slot, void* data, DBusFreeFunction free_data_func);
299 void* dbus_message_get_data (DBusMessage* message, dbus_int32_t slot);
300 int dbus_message_type_from_string (const(char)* type_str);
301 const(char)* dbus_message_type_to_string (int type);
302 dbus_bool_t dbus_message_marshal (DBusMessage* msg, char** marshalled_data_p, int* len_p);
303 DBusMessage* dbus_message_demarshal (const(char)* str, int len, DBusError* error);
304 int dbus_message_demarshal_bytes_needed (const(char)* str, int len);
305 // END dbus/dbus-message.d
306 // START dbus/dbus-connection.d
307 alias uint function (DBusWatch*, void*) DBusAddWatchFunction;
308 alias void function (DBusWatch*, void*) DBusWatchToggledFunction;
309 alias void function (DBusWatch*, void*) DBusRemoveWatchFunction;
310 alias uint function (DBusTimeout*, void*) DBusAddTimeoutFunction;
311 alias void function (DBusTimeout*, void*) DBusTimeoutToggledFunction;
312 alias void function (DBusTimeout*, void*) DBusRemoveTimeoutFunction;
313 alias void function (DBusConnection*, DBusDispatchStatus, void*) DBusDispatchStatusFunction;
314 alias void function (void*) DBusWakeupMainFunction;
315 alias uint function (DBusConnection*, c_ulong, void*) DBusAllowUnixUserFunction;
316 alias uint function (DBusConnection*, const(char)*, void*) DBusAllowWindowsUserFunction;
317 alias void function (DBusPendingCall*, void*) DBusPendingCallNotifyFunction;
318 alias DBusHandlerResult function (DBusConnection*, DBusMessage*, void*) DBusHandleMessageFunction;
319 alias void function (DBusConnection*, void*) DBusObjectPathUnregisterFunction;
320 alias DBusHandlerResult function (DBusConnection*, DBusMessage*, void*) DBusObjectPathMessageFunction;
321 
322 enum DBusWatchFlags
323 {
324     DBUS_WATCH_READABLE = 1,
325     DBUS_WATCH_WRITABLE = 2,
326     DBUS_WATCH_ERROR = 4,
327     DBUS_WATCH_HANGUP = 8
328 }
329 
330 enum DBusDispatchStatus
331 {
332     DBUS_DISPATCH_DATA_REMAINS = 0,
333     DBUS_DISPATCH_COMPLETE = 1,
334     DBUS_DISPATCH_NEED_MEMORY = 2
335 }
336 
337 struct DBusObjectPathVTable
338 {
339     DBusObjectPathUnregisterFunction unregister_function;
340     DBusObjectPathMessageFunction message_function;
341     void function (void*) dbus_internal_pad1;
342     void function (void*) dbus_internal_pad2;
343     void function (void*) dbus_internal_pad3;
344     void function (void*) dbus_internal_pad4;
345 }
346 
347 struct DBusPreallocatedSend;
348 
349 
350 struct DBusTimeout;
351 
352 
353 struct DBusPendingCall;
354 
355 
356 struct DBusConnection;
357 
358 
359 struct DBusWatch;
360 
361 
362 DBusConnection* dbus_connection_open (const(char)* address, DBusError* error);
363 DBusConnection* dbus_connection_open_private (const(char)* address, DBusError* error);
364 DBusConnection* dbus_connection_ref (DBusConnection* connection);
365 void dbus_connection_unref (DBusConnection* connection);
366 void dbus_connection_close (DBusConnection* connection);
367 dbus_bool_t dbus_connection_get_is_connected (DBusConnection* connection);
368 dbus_bool_t dbus_connection_get_is_authenticated (DBusConnection* connection);
369 dbus_bool_t dbus_connection_get_is_anonymous (DBusConnection* connection);
370 char* dbus_connection_get_server_id (DBusConnection* connection);
371 dbus_bool_t dbus_connection_can_send_type (DBusConnection* connection, int type);
372 void dbus_connection_set_exit_on_disconnect (DBusConnection* connection, dbus_bool_t exit_on_disconnect);
373 void dbus_connection_flush (DBusConnection* connection);
374 dbus_bool_t dbus_connection_read_write_dispatch (DBusConnection* connection, int timeout_milliseconds);
375 dbus_bool_t dbus_connection_read_write (DBusConnection* connection, int timeout_milliseconds);
376 DBusMessage* dbus_connection_borrow_message (DBusConnection* connection);
377 void dbus_connection_return_message (DBusConnection* connection, DBusMessage* message);
378 void dbus_connection_steal_borrowed_message (DBusConnection* connection, DBusMessage* message);
379 DBusMessage* dbus_connection_pop_message (DBusConnection* connection);
380 DBusDispatchStatus dbus_connection_get_dispatch_status (DBusConnection* connection);
381 DBusDispatchStatus dbus_connection_dispatch (DBusConnection* connection);
382 dbus_bool_t dbus_connection_has_messages_to_send (DBusConnection* connection);
383 dbus_bool_t dbus_connection_send (DBusConnection* connection, DBusMessage* message, dbus_uint32_t* client_serial);
384 dbus_bool_t dbus_connection_send_with_reply (DBusConnection* connection, DBusMessage* message, DBusPendingCall** pending_return, int timeout_milliseconds);
385 DBusMessage* dbus_connection_send_with_reply_and_block (DBusConnection* connection, DBusMessage* message, int timeout_milliseconds, DBusError* error);
386 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);
387 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);
388 void dbus_connection_set_wakeup_main_function (DBusConnection* connection, DBusWakeupMainFunction wakeup_main_function, void* data, DBusFreeFunction free_data_function);
389 void dbus_connection_set_dispatch_status_function (DBusConnection* connection, DBusDispatchStatusFunction function_, void* data, DBusFreeFunction free_data_function);
390 dbus_bool_t dbus_connection_get_unix_user (DBusConnection* connection, c_ulong* uid);
391 dbus_bool_t dbus_connection_get_unix_process_id (DBusConnection* connection, c_ulong* pid);
392 dbus_bool_t dbus_connection_get_adt_audit_session_data (DBusConnection* connection, void** data, dbus_int32_t* data_size);
393 void dbus_connection_set_unix_user_function (DBusConnection* connection, DBusAllowUnixUserFunction function_, void* data, DBusFreeFunction free_data_function);
394 dbus_bool_t dbus_connection_get_windows_user (DBusConnection* connection, char** windows_sid_p);
395 void dbus_connection_set_windows_user_function (DBusConnection* connection, DBusAllowWindowsUserFunction function_, void* data, DBusFreeFunction free_data_function);
396 void dbus_connection_set_allow_anonymous (DBusConnection* connection, dbus_bool_t value);
397 void dbus_connection_set_route_peer_messages (DBusConnection* connection, dbus_bool_t value);
398 dbus_bool_t dbus_connection_add_filter (DBusConnection* connection, DBusHandleMessageFunction function_, void* user_data, DBusFreeFunction free_data_function);
399 void dbus_connection_remove_filter (DBusConnection* connection, DBusHandleMessageFunction function_, void* user_data);
400 dbus_bool_t dbus_connection_allocate_data_slot (dbus_int32_t* slot_p);
401 void dbus_connection_free_data_slot (dbus_int32_t* slot_p);
402 dbus_bool_t dbus_connection_set_data (DBusConnection* connection, dbus_int32_t slot, void* data, DBusFreeFunction free_data_func);
403 void* dbus_connection_get_data (DBusConnection* connection, dbus_int32_t slot);
404 void dbus_connection_set_change_sigpipe (dbus_bool_t will_modify_sigpipe);
405 void dbus_connection_set_max_message_size (DBusConnection* connection, c_long size);
406 c_long dbus_connection_get_max_message_size (DBusConnection* connection);
407 void dbus_connection_set_max_received_size (DBusConnection* connection, c_long size);
408 c_long dbus_connection_get_max_received_size (DBusConnection* connection);
409 void dbus_connection_set_max_message_unix_fds (DBusConnection* connection, c_long n);
410 c_long dbus_connection_get_max_message_unix_fds (DBusConnection* connection);
411 void dbus_connection_set_max_received_unix_fds (DBusConnection* connection, c_long n);
412 c_long dbus_connection_get_max_received_unix_fds (DBusConnection* connection);
413 c_long dbus_connection_get_outgoing_size (DBusConnection* connection);
414 c_long dbus_connection_get_outgoing_unix_fds (DBusConnection* connection);
415 DBusPreallocatedSend* dbus_connection_preallocate_send (DBusConnection* connection);
416 void dbus_connection_free_preallocated_send (DBusConnection* connection, DBusPreallocatedSend* preallocated);
417 void dbus_connection_send_preallocated (DBusConnection* connection, DBusPreallocatedSend* preallocated, DBusMessage* message, dbus_uint32_t* client_serial);
418 dbus_bool_t dbus_connection_try_register_object_path (DBusConnection* connection, const(char)* path, const(DBusObjectPathVTable)* vtable, void* user_data, DBusError* error);
419 dbus_bool_t dbus_connection_register_object_path (DBusConnection* connection, const(char)* path, const(DBusObjectPathVTable)* vtable, void* user_data);
420 dbus_bool_t dbus_connection_try_register_fallback (DBusConnection* connection, const(char)* path, const(DBusObjectPathVTable)* vtable, void* user_data, DBusError* error);
421 dbus_bool_t dbus_connection_register_fallback (DBusConnection* connection, const(char)* path, const(DBusObjectPathVTable)* vtable, void* user_data);
422 dbus_bool_t dbus_connection_unregister_object_path (DBusConnection* connection, const(char)* path);
423 dbus_bool_t dbus_connection_get_object_path_data (DBusConnection* connection, const(char)* path, void** data_p);
424 dbus_bool_t dbus_connection_list_registered (DBusConnection* connection, const(char)* parent_path, char*** child_entries);
425 dbus_bool_t dbus_connection_get_unix_fd (DBusConnection* connection, int* fd);
426 dbus_bool_t dbus_connection_get_socket (DBusConnection* connection, int* fd);
427 int dbus_watch_get_fd (DBusWatch* watch);
428 int dbus_watch_get_unix_fd (DBusWatch* watch);
429 int dbus_watch_get_socket (DBusWatch* watch);
430 uint dbus_watch_get_flags (DBusWatch* watch);
431 void* dbus_watch_get_data (DBusWatch* watch);
432 void dbus_watch_set_data (DBusWatch* watch, void* data, DBusFreeFunction free_data_function);
433 dbus_bool_t dbus_watch_handle (DBusWatch* watch, uint flags);
434 dbus_bool_t dbus_watch_get_enabled (DBusWatch* watch);
435 int dbus_timeout_get_interval (DBusTimeout* timeout);
436 void* dbus_timeout_get_data (DBusTimeout* timeout);
437 void dbus_timeout_set_data (DBusTimeout* timeout, void* data, DBusFreeFunction free_data_function);
438 dbus_bool_t dbus_timeout_handle (DBusTimeout* timeout);
439 dbus_bool_t dbus_timeout_get_enabled (DBusTimeout* timeout);
440 // END dbus/dbus-connection.d
441 // START dbus/dbus-pending-call.d
442 DBusPendingCall* dbus_pending_call_ref (DBusPendingCall* pending);
443 void dbus_pending_call_unref (DBusPendingCall* pending);
444 dbus_bool_t dbus_pending_call_set_notify (DBusPendingCall* pending, DBusPendingCallNotifyFunction function_, void* user_data, DBusFreeFunction free_user_data);
445 void dbus_pending_call_cancel (DBusPendingCall* pending);
446 dbus_bool_t dbus_pending_call_get_completed (DBusPendingCall* pending);
447 DBusMessage* dbus_pending_call_steal_reply (DBusPendingCall* pending);
448 void dbus_pending_call_block (DBusPendingCall* pending);
449 dbus_bool_t dbus_pending_call_allocate_data_slot (dbus_int32_t* slot_p);
450 void dbus_pending_call_free_data_slot (dbus_int32_t* slot_p);
451 dbus_bool_t dbus_pending_call_set_data (DBusPendingCall* pending, dbus_int32_t slot, void* data, DBusFreeFunction free_data_func);
452 void* dbus_pending_call_get_data (DBusPendingCall* pending, dbus_int32_t slot);
453 // END dbus/dbus-pending-call.d
454 // START dbus/dbus-server.d
455 alias void function (DBusServer*, DBusConnection*, void*) DBusNewConnectionFunction;
456 
457 struct DBusServer;
458 
459 
460 DBusServer* dbus_server_listen (const(char)* address, DBusError* error);
461 DBusServer* dbus_server_ref (DBusServer* server);
462 void dbus_server_unref (DBusServer* server);
463 void dbus_server_disconnect (DBusServer* server);
464 dbus_bool_t dbus_server_get_is_connected (DBusServer* server);
465 char* dbus_server_get_address (DBusServer* server);
466 char* dbus_server_get_id (DBusServer* server);
467 void dbus_server_set_new_connection_function (DBusServer* server, DBusNewConnectionFunction function_, void* data, DBusFreeFunction free_data_function);
468 dbus_bool_t dbus_server_set_watch_functions (DBusServer* server, DBusAddWatchFunction add_function, DBusRemoveWatchFunction remove_function, DBusWatchToggledFunction toggled_function, void* data, DBusFreeFunction free_data_function);
469 dbus_bool_t dbus_server_set_timeout_functions (DBusServer* server, DBusAddTimeoutFunction add_function, DBusRemoveTimeoutFunction remove_function, DBusTimeoutToggledFunction toggled_function, void* data, DBusFreeFunction free_data_function);
470 dbus_bool_t dbus_server_set_auth_mechanisms (DBusServer* server, const(char*)* mechanisms);
471 dbus_bool_t dbus_server_allocate_data_slot (dbus_int32_t* slot_p);
472 void dbus_server_free_data_slot (dbus_int32_t* slot_p);
473 dbus_bool_t dbus_server_set_data (DBusServer* server, int slot, void* data, DBusFreeFunction free_data_func);
474 void* dbus_server_get_data (DBusServer* server, int slot);
475 // END dbus/dbus-server.d
476 // START dbus/dbus-bus.d
477 DBusConnection* dbus_bus_get (DBusBusType type, DBusError* error);
478 DBusConnection* dbus_bus_get_private (DBusBusType type, DBusError* error);
479 dbus_bool_t dbus_bus_register (DBusConnection* connection, DBusError* error);
480 dbus_bool_t dbus_bus_set_unique_name (DBusConnection* connection, const(char)* unique_name);
481 const(char)* dbus_bus_get_unique_name (DBusConnection* connection);
482 c_ulong dbus_bus_get_unix_user (DBusConnection* connection, const(char)* name, DBusError* error);
483 char* dbus_bus_get_id (DBusConnection* connection, DBusError* error);
484 int dbus_bus_request_name (DBusConnection* connection, const(char)* name, uint flags, DBusError* error);
485 int dbus_bus_release_name (DBusConnection* connection, const(char)* name, DBusError* error);
486 dbus_bool_t dbus_bus_name_has_owner (DBusConnection* connection, const(char)* name, DBusError* error);
487 dbus_bool_t dbus_bus_start_service_by_name (DBusConnection* connection, const(char)* name, dbus_uint32_t flags, dbus_uint32_t* reply, DBusError* error);
488 void dbus_bus_add_match (DBusConnection* connection, const(char)* rule, DBusError* error);
489 void dbus_bus_remove_match (DBusConnection* connection, const(char)* rule, DBusError* error);
490 // END dbus/dbus-bus.d
491 // START dbus/dbus.d
492 
493 // END dbus/dbus.d