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_TRANSPORT_H
00024 #define DBUS_TRANSPORT_H
00025
00026 #include <dbus/dbus-internals.h>
00027 #include <dbus/dbus-connection.h>
00028 #include <dbus/dbus-protocol.h>
00029 #include <dbus/dbus-address.h>
00030
00031 DBUS_BEGIN_DECLS
00032
00033 typedef struct DBusTransport DBusTransport;
00034
00035 DBusTransport* _dbus_transport_open (DBusAddressEntry *entry,
00036 DBusError *error);
00037 DBusTransport* _dbus_transport_ref (DBusTransport *transport);
00038 void _dbus_transport_unref (DBusTransport *transport);
00039 void _dbus_transport_disconnect (DBusTransport *transport);
00040 dbus_bool_t _dbus_transport_get_is_connected (DBusTransport *transport);
00041 dbus_bool_t _dbus_transport_peek_is_authenticated (DBusTransport *transport);
00042 dbus_bool_t _dbus_transport_try_to_authenticate (DBusTransport *transport);
00043 dbus_bool_t _dbus_transport_get_is_anonymous (DBusTransport *transport);
00044 dbus_bool_t _dbus_transport_can_pass_unix_fd (DBusTransport *transport);
00045
00046 const char* _dbus_transport_get_address (DBusTransport *transport);
00047 const char* _dbus_transport_get_server_id (DBusTransport *transport);
00048 dbus_bool_t _dbus_transport_handle_watch (DBusTransport *transport,
00049 DBusWatch *watch,
00050 unsigned int condition);
00051 dbus_bool_t _dbus_transport_set_connection (DBusTransport *transport,
00052 DBusConnection *connection);
00053 void _dbus_transport_do_iteration (DBusTransport *transport,
00054 unsigned int flags,
00055 int timeout_milliseconds);
00056 DBusDispatchStatus _dbus_transport_get_dispatch_status (DBusTransport *transport);
00057 dbus_bool_t _dbus_transport_queue_messages (DBusTransport *transport);
00058
00059 void _dbus_transport_set_max_message_size (DBusTransport *transport,
00060 long size);
00061 long _dbus_transport_get_max_message_size (DBusTransport *transport);
00062 void _dbus_transport_set_max_received_size (DBusTransport *transport,
00063 long size);
00064 long _dbus_transport_get_max_received_size (DBusTransport *transport);
00065
00066 void _dbus_transport_set_max_message_unix_fds (DBusTransport *transport,
00067 long n);
00068 long _dbus_transport_get_max_message_unix_fds (DBusTransport *transport);
00069 void _dbus_transport_set_max_received_unix_fds(DBusTransport *transport,
00070 long n);
00071 long _dbus_transport_get_max_received_unix_fds(DBusTransport *transport);
00072
00073 dbus_bool_t _dbus_transport_get_socket_fd (DBusTransport *transport,
00074 DBusSocket *fd_p);
00075 dbus_bool_t _dbus_transport_get_unix_user (DBusTransport *transport,
00076 unsigned long *uid);
00077 dbus_bool_t _dbus_transport_get_unix_process_id (DBusTransport *transport,
00078 unsigned long *pid);
00079 dbus_bool_t _dbus_transport_get_adt_audit_session_data (DBusTransport *transport,
00080 void **data,
00081 int *data_size);
00082 void _dbus_transport_set_unix_user_function (DBusTransport *transport,
00083 DBusAllowUnixUserFunction function,
00084 void *data,
00085 DBusFreeFunction free_data_function,
00086 void **old_data,
00087 DBusFreeFunction *old_free_data_function);
00088 dbus_bool_t _dbus_transport_get_windows_user (DBusTransport *transport,
00089 char **windows_sid_p);
00090 dbus_bool_t _dbus_transport_get_linux_security_label (DBusTransport *transport,
00091 char **label_p);
00092
00093 void _dbus_transport_set_windows_user_function (DBusTransport *transport,
00094 DBusAllowWindowsUserFunction function,
00095 void *data,
00096 DBusFreeFunction free_data_function,
00097 void **old_data,
00098 DBusFreeFunction *old_free_data_function);
00099 dbus_bool_t _dbus_transport_set_auth_mechanisms (DBusTransport *transport,
00100 const char **mechanisms);
00101 void _dbus_transport_set_allow_anonymous (DBusTransport *transport,
00102 dbus_bool_t value);
00103 int _dbus_transport_get_pending_fds_count (DBusTransport *transport);
00104 void _dbus_transport_set_pending_fds_function (DBusTransport *transport,
00105 void (* callback) (void *),
00106 void *data);
00107
00108
00109 void _dbus_transport_get_stats (DBusTransport *transport,
00110 dbus_uint32_t *queue_bytes,
00111 dbus_uint32_t *queue_fds,
00112 dbus_uint32_t *peak_queue_bytes,
00113 dbus_uint32_t *peak_queue_fds);
00114
00115 DBUS_END_DECLS
00116
00117 #endif