23 #ifndef DBUS_SERVER_PROTECTED_H
24 #define DBUS_SERVER_PROTECTED_H
26 #include <dbus/dbus-internals.h>
27 #include <dbus/dbus-threads-internal.h>
28 #include <dbus/dbus-server.h>
29 #include <dbus/dbus-address.h>
30 #include <dbus/dbus-timeout.h>
31 #include <dbus/dbus-watch.h>
32 #include <dbus/dbus-resources.h>
33 #include <dbus/dbus-dataslot.h>
34 #include <dbus/dbus-string.h>
89 #ifndef DBUS_DISABLE_CHECKS
99 void _dbus_server_disconnect_unlocked (
DBusServer *server);
122 DBUS_SERVER_LISTEN_NOT_HANDLED,
123 DBUS_SERVER_LISTEN_OK,
124 DBUS_SERVER_LISTEN_BAD_ADDRESS,
125 DBUS_SERVER_LISTEN_DID_NOT_CONNECT,
126 DBUS_SERVER_LISTEN_ADDRESS_ALREADY_USED
127 } DBusServerListenResult;
133 #ifdef DBUS_ENABLE_VERBOSE_MODE
134 void _dbus_server_trace_ref (
DBusServer *server,
139 #define _dbus_server_trace_ref(s,o,n,w) \
147 #ifdef DBUS_DISABLE_CHECKS
148 #define TOOK_LOCK_CHECK(server)
149 #define RELEASING_LOCK_CHECK(server)
150 #define HAVE_LOCK_CHECK(server)
152 #define TOOK_LOCK_CHECK(server) do { \
153 _dbus_assert (!(server)->have_server_lock); \
154 (server)->have_server_lock = TRUE; \
156 #define RELEASING_LOCK_CHECK(server) do { \
157 _dbus_assert ((server)->have_server_lock); \
158 (server)->have_server_lock = FALSE; \
160 #define HAVE_LOCK_CHECK(server) _dbus_assert ((server)->have_server_lock)
164 #define TRACE_LOCKS 0
166 #define SERVER_LOCK(server) do { \
167 if (TRACE_LOCKS) { _dbus_verbose ("LOCK\n"); } \
168 _dbus_rmutex_lock ((server)->mutex); \
169 TOOK_LOCK_CHECK (server); \
172 #define SERVER_UNLOCK(server) do { \
173 if (TRACE_LOCKS) { _dbus_verbose ("UNLOCK\n"); } \
174 RELEASING_LOCK_CHECK (server); \
175 _dbus_rmutex_unlock ((server)->mutex); \