00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
#ifndef DBUS_SERVER_PROTECTED_H
00024
#define DBUS_SERVER_PROTECTED_H
00025
00026
#include <dbus/dbus-internals.h>
00027
#include <dbus/dbus-server.h>
00028
#include <dbus/dbus-timeout.h>
00029
#include <dbus/dbus-watch.h>
00030
#include <dbus/dbus-resources.h>
00031
#include <dbus/dbus-dataslot.h>
00032
00033
DBUS_BEGIN_DECLS;
00034
00035
typedef struct DBusServerVTable DBusServerVTable;
00036
00040 struct DBusServerVTable
00041 {
00042 void (*
finalize) (
DBusServer *server);
00045 void (*
disconnect) (
DBusServer *server);
00047 };
00048
00052 struct DBusServer
00053 {
00054 int refcount;
00055 const DBusServerVTable *
vtable;
00056 DBusWatchList *
watches;
00057 DBusTimeoutList *
timeouts;
00059 char *
address;
00061 int max_connections;
00063 DBusDataSlotList slot_list;
00065 DBusNewConnectionFunction
new_connection_function;
00067
void *
new_connection_data;
00069
DBusFreeFunction new_connection_free_data_function;
00074 char **
auth_mechanisms;
00076 unsigned int disconnected : 1;
00077 };
00078
00079
dbus_bool_t _dbus_server_init_base (
DBusServer *server,
00080
const DBusServerVTable *vtable,
00081
const DBusString *address);
00082
void _dbus_server_finalize_base (
DBusServer *server);
00083
dbus_bool_t _dbus_server_add_watch (
DBusServer *server,
00084
DBusWatch *watch);
00085
void _dbus_server_remove_watch (
DBusServer *server,
00086
DBusWatch *watch);
00087
void _dbus_server_toggle_watch (
DBusServer *server,
00088
DBusWatch *watch,
00089
dbus_bool_t enabled);
00090
dbus_bool_t _dbus_server_add_timeout (
DBusServer *server,
00091
DBusTimeout *timeout);
00092
void _dbus_server_remove_timeout (
DBusServer *server,
00093
DBusTimeout *timeout);
00094
void _dbus_server_toggle_timeout (
DBusServer *server,
00095
DBusTimeout *timeout,
00096
dbus_bool_t enabled);
00097
00098
00099
00100
DBUS_END_DECLS;
00101
00102
#endif