diff options
Diffstat (limited to 'include/dbus-1/dbus')
69 files changed, 0 insertions, 8537 deletions
diff --git a/include/dbus-1/dbus/dbus-address.h b/include/dbus-1/dbus/dbus-address.h deleted file mode 100644 index e51ef0ae..00000000 --- a/include/dbus-1/dbus/dbus-address.h +++ /dev/null @@ -1,67 +0,0 @@ -/* -*- mode: C; c-file-style: "gnu"; indent-tabs-mode: nil; -*- */ -/* dbus-address.h Server address parser. - * - * Copyright (C) 2003 CodeFactory AB - * - * Licensed under the Academic Free License version 2.1 - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2 of the License, or - * (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with this program; if not, write to the Free Software - * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA - * - */ -#if !defined (DBUS_INSIDE_DBUS_H) && !defined (DBUS_COMPILATION) -#error "Only <dbus/dbus.h> can be included directly, this file may disappear or change contents." -#endif - -#ifndef DBUS_ADDRESS_H -#define DBUS_ADDRESS_H - -#include <dbus/dbus-types.h> -#include <dbus/dbus-errors.h> - -DBUS_BEGIN_DECLS - -/** - * @addtogroup DBusAddress - * @{ - */ - -/** Opaque type representing one of the semicolon-separated items in an address */ -typedef struct DBusAddressEntry DBusAddressEntry; - -DBUS_EXPORT -dbus_bool_t dbus_parse_address (const char *address, - DBusAddressEntry ***entry, - int *array_len, - DBusError *error); -DBUS_EXPORT -const char *dbus_address_entry_get_value (DBusAddressEntry *entry, - const char *key); -DBUS_EXPORT -const char *dbus_address_entry_get_method (DBusAddressEntry *entry); -DBUS_EXPORT -void dbus_address_entries_free (DBusAddressEntry **entries); - -DBUS_EXPORT -char* dbus_address_escape_value (const char *value); -DBUS_EXPORT -char* dbus_address_unescape_value (const char *value, - DBusError *error); - -/** @} */ - -DBUS_END_DECLS - -#endif /* DBUS_ADDRESS_H */ - diff --git a/include/dbus-1/dbus/dbus-arch-deps.h b/include/dbus-1/dbus/dbus-arch-deps.h deleted file mode 100644 index c8359c8c..00000000 --- a/include/dbus-1/dbus/dbus-arch-deps.h +++ /dev/null @@ -1,67 +0,0 @@ -/* -*- mode: C; c-file-style: "gnu" -*- */ -/* dbus-arch-deps.h Header with architecture/compiler specific information, installed to libdir - * - * Copyright (C) 2003 Red Hat, Inc. - * - * Licensed under the Academic Free License version 2.0 - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2 of the License, or - * (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with this program; if not, write to the Free Software - * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA - * - */ -#if !defined (DBUS_INSIDE_DBUS_H) && !defined (DBUS_COMPILATION) -#error "Only <dbus/dbus.h> can be included directly, this file may disappear or change contents." -#endif - -#ifndef DBUS_ARCH_DEPS_H -#define DBUS_ARCH_DEPS_H - -#include <dbus/dbus-macros.h> - -DBUS_BEGIN_DECLS - -#if 1 -#define DBUS_HAVE_INT64 1 -_DBUS_GNUC_EXTENSION typedef long long dbus_int64_t; -_DBUS_GNUC_EXTENSION typedef unsigned long long dbus_uint64_t; - -#define DBUS_INT64_CONSTANT(val) (_DBUS_GNUC_EXTENSION (val##LL)) -#define DBUS_UINT64_CONSTANT(val) (_DBUS_GNUC_EXTENSION (val##ULL)) - -#else -#undef DBUS_HAVE_INT64 -#undef DBUS_INT64_CONSTANT -#undef DBUS_UINT64_CONSTANT -#endif - -typedef int dbus_int32_t; -typedef unsigned int dbus_uint32_t; - -typedef short dbus_int16_t; -typedef unsigned short dbus_uint16_t; - -/* This is not really arch-dependent, but it's not worth - * creating an additional generated header just for this - */ -#define DBUS_MAJOR_VERSION 1 -#define DBUS_MINOR_VERSION 4 -#define DBUS_MICRO_VERSION 0 - -#define DBUS_VERSION_STRING "1.4.0" - -#define DBUS_VERSION ((1 << 16) | (4 << 8) | (0)) - -DBUS_END_DECLS - -#endif /* DBUS_ARCH_DEPS_H */ diff --git a/include/dbus-1/dbus/dbus-auth-script.h b/include/dbus-1/dbus/dbus-auth-script.h deleted file mode 100644 index 39e6c7c4..00000000 --- a/include/dbus-1/dbus/dbus-auth-script.h +++ /dev/null @@ -1,37 +0,0 @@ -/* -*- mode: C; c-file-style: "gnu"; indent-tabs-mode: nil; -*- */ -/* dbus-auth-script.h Test DBusAuth using a special script file (internal to D-Bus implementation) - * - * Copyright (C) 2003 Red Hat, Inc. - * - * Licensed under the Academic Free License version 2.1 - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2 of the License, or - * (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with this program; if not, write to the Free Software - * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA - * - */ - -#ifndef DBUS_AUTH_SCRIPT_H -#define DBUS_AUTH_SCRIPT_H - -#include <dbus/dbus-memory.h> -#include <dbus/dbus-types.h> -#include <dbus/dbus-string.h> - -DBUS_BEGIN_DECLS - -dbus_bool_t _dbus_auth_script_run (const DBusString *filename); - -DBUS_END_DECLS - -#endif /* DBUS_AUTH_SCRIPT_H */ diff --git a/include/dbus-1/dbus/dbus-auth.h b/include/dbus-1/dbus/dbus-auth.h deleted file mode 100644 index ae3f3647..00000000 --- a/include/dbus-1/dbus/dbus-auth.h +++ /dev/null @@ -1,83 +0,0 @@ -/* -*- mode: C; c-file-style: "gnu"; indent-tabs-mode: nil; -*- */ -/* dbus-auth.h Authentication - * - * Copyright (C) 2002 Red Hat Inc. - * - * Licensed under the Academic Free License version 2.1 - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2 of the License, or - * (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with this program; if not, write to the Free Software - * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA - * - */ -#ifndef DBUS_AUTH_H -#define DBUS_AUTH_H - -#include <dbus/dbus-macros.h> -#include <dbus/dbus-errors.h> -#include <dbus/dbus-string.h> -#include <dbus/dbus-sysdeps.h> - -DBUS_BEGIN_DECLS - -typedef struct DBusAuth DBusAuth; - -typedef enum -{ - DBUS_AUTH_STATE_WAITING_FOR_INPUT, - DBUS_AUTH_STATE_WAITING_FOR_MEMORY, - DBUS_AUTH_STATE_HAVE_BYTES_TO_SEND, - DBUS_AUTH_STATE_NEED_DISCONNECT, - DBUS_AUTH_STATE_AUTHENTICATED -} DBusAuthState; - -DBusAuth* _dbus_auth_server_new (const DBusString *guid); -DBusAuth* _dbus_auth_client_new (void); -DBusAuth* _dbus_auth_ref (DBusAuth *auth); -void _dbus_auth_unref (DBusAuth *auth); -dbus_bool_t _dbus_auth_set_mechanisms (DBusAuth *auth, - const char **mechanisms); -DBusAuthState _dbus_auth_do_work (DBusAuth *auth); -dbus_bool_t _dbus_auth_get_bytes_to_send (DBusAuth *auth, - const DBusString **str); -void _dbus_auth_bytes_sent (DBusAuth *auth, - int bytes_sent); -void _dbus_auth_get_buffer (DBusAuth *auth, - DBusString **buffer); -void _dbus_auth_return_buffer (DBusAuth *auth, - DBusString *buffer, - int bytes_read); -void _dbus_auth_get_unused_bytes (DBusAuth *auth, - const DBusString **str); -void _dbus_auth_delete_unused_bytes (DBusAuth *auth); -dbus_bool_t _dbus_auth_needs_encoding (DBusAuth *auth); -dbus_bool_t _dbus_auth_encode_data (DBusAuth *auth, - const DBusString *plaintext, - DBusString *encoded); -dbus_bool_t _dbus_auth_needs_decoding (DBusAuth *auth); -dbus_bool_t _dbus_auth_decode_data (DBusAuth *auth, - const DBusString *encoded, - DBusString *plaintext); -dbus_bool_t _dbus_auth_set_credentials (DBusAuth *auth, - DBusCredentials *credentials); -DBusCredentials* _dbus_auth_get_identity (DBusAuth *auth); -dbus_bool_t _dbus_auth_set_context (DBusAuth *auth, - const DBusString *context); -const char* _dbus_auth_get_guid_from_server(DBusAuth *auth); - -void _dbus_auth_set_unix_fd_possible(DBusAuth *auth, dbus_bool_t b); -dbus_bool_t _dbus_auth_get_unix_fd_negotiated(DBusAuth *auth); - -DBUS_END_DECLS - -#endif /* DBUS_AUTH_H */ diff --git a/include/dbus-1/dbus/dbus-bus.h b/include/dbus-1/dbus/dbus-bus.h deleted file mode 100644 index 02a95711..00000000 --- a/include/dbus-1/dbus/dbus-bus.h +++ /dev/null @@ -1,95 +0,0 @@ -/* -*- mode: C; c-file-style: "gnu"; indent-tabs-mode: nil; -*- */ -/* dbus-bus.h Convenience functions for communicating with the bus. - * - * Copyright (C) 2003 CodeFactory AB - * - * Licensed under the Academic Free License version 2.1 - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2 of the License, or - * (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with this program; if not, write to the Free Software - * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA - * - */ -#if !defined (DBUS_INSIDE_DBUS_H) && !defined (DBUS_COMPILATION) -#error "Only <dbus/dbus.h> can be included directly, this file may disappear or change contents." -#endif - -#ifndef DBUS_BUS_H -#define DBUS_BUS_H - -#include <dbus/dbus-connection.h> - -DBUS_BEGIN_DECLS - -/** - * @addtogroup DBusBus - * @{ - */ - -DBUS_EXPORT -DBusConnection *dbus_bus_get (DBusBusType type, - DBusError *error); -DBUS_EXPORT -DBusConnection *dbus_bus_get_private (DBusBusType type, - DBusError *error); - -DBUS_EXPORT -dbus_bool_t dbus_bus_register (DBusConnection *connection, - DBusError *error); -DBUS_EXPORT -dbus_bool_t dbus_bus_set_unique_name (DBusConnection *connection, - const char *unique_name); -DBUS_EXPORT -const char* dbus_bus_get_unique_name (DBusConnection *connection); -DBUS_EXPORT -unsigned long dbus_bus_get_unix_user (DBusConnection *connection, - const char *name, - DBusError *error); -DBUS_EXPORT -char* dbus_bus_get_id (DBusConnection *connection, - DBusError *error); -DBUS_EXPORT -int dbus_bus_request_name (DBusConnection *connection, - const char *name, - unsigned int flags, - DBusError *error); -DBUS_EXPORT -int dbus_bus_release_name (DBusConnection *connection, - const char *name, - DBusError *error); -DBUS_EXPORT -dbus_bool_t dbus_bus_name_has_owner (DBusConnection *connection, - const char *name, - DBusError *error); - -DBUS_EXPORT -dbus_bool_t dbus_bus_start_service_by_name (DBusConnection *connection, - const char *name, - dbus_uint32_t flags, - dbus_uint32_t *reply, - DBusError *error); - -DBUS_EXPORT -void dbus_bus_add_match (DBusConnection *connection, - const char *rule, - DBusError *error); -DBUS_EXPORT -void dbus_bus_remove_match (DBusConnection *connection, - const char *rule, - DBusError *error); - -/** @} */ - -DBUS_END_DECLS - -#endif /* DBUS_BUS_H */ diff --git a/include/dbus-1/dbus/dbus-connection-internal.h b/include/dbus-1/dbus/dbus-connection-internal.h deleted file mode 100644 index cdf3f59d..00000000 --- a/include/dbus-1/dbus/dbus-connection-internal.h +++ /dev/null @@ -1,121 +0,0 @@ -/* -*- mode: C; c-file-style: "gnu"; indent-tabs-mode: nil; -*- */ -/* dbus-connection-internal.h DBusConnection internal interfaces - * - * Copyright (C) 2002 Red Hat Inc. - * - * Licensed under the Academic Free License version 2.1 - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2 of the License, or - * (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with this program; if not, write to the Free Software - * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA - * - */ -#ifndef DBUS_CONNECTION_INTERNAL_H -#define DBUS_CONNECTION_INTERNAL_H - -#include <dbus/dbus-internals.h> -#include <dbus/dbus-connection.h> -#include <dbus/dbus-message.h> -#include <dbus/dbus-transport.h> -#include <dbus/dbus-resources.h> -#include <dbus/dbus-list.h> -#include <dbus/dbus-timeout.h> -#include <dbus/dbus-dataslot.h> - -DBUS_BEGIN_DECLS - -typedef enum -{ - DBUS_ITERATION_DO_WRITING = 1 << 0, /**< Write messages out. */ - DBUS_ITERATION_DO_READING = 1 << 1, /**< Read messages in. */ - DBUS_ITERATION_BLOCK = 1 << 2 /**< Block if nothing to do. */ -} DBusIterationFlags; - -/** default timeout value when waiting for a message reply, 25 seconds */ -#define _DBUS_DEFAULT_TIMEOUT_VALUE (25 * 1000) - -void _dbus_connection_lock (DBusConnection *connection); -void _dbus_connection_unlock (DBusConnection *connection); -DBusConnection * _dbus_connection_ref_unlocked (DBusConnection *connection); -void _dbus_connection_unref_unlocked (DBusConnection *connection); -dbus_bool_t _dbus_connection_queue_received_message (DBusConnection *connection, - DBusMessage *message); -void _dbus_connection_queue_received_message_link (DBusConnection *connection, - DBusList *link); -dbus_bool_t _dbus_connection_has_messages_to_send_unlocked (DBusConnection *connection); -DBusMessage* _dbus_connection_get_message_to_send (DBusConnection *connection); -void _dbus_connection_message_sent (DBusConnection *connection, - DBusMessage *message); -dbus_bool_t _dbus_connection_add_watch_unlocked (DBusConnection *connection, - DBusWatch *watch); -void _dbus_connection_remove_watch_unlocked (DBusConnection *connection, - DBusWatch *watch); -void _dbus_connection_toggle_watch_unlocked (DBusConnection *connection, - DBusWatch *watch, - dbus_bool_t enabled); -dbus_bool_t _dbus_connection_handle_watch (DBusWatch *watch, - unsigned int condition, - void *data); -dbus_bool_t _dbus_connection_add_timeout_unlocked (DBusConnection *connection, - DBusTimeout *timeout); -void _dbus_connection_remove_timeout_unlocked (DBusConnection *connection, - DBusTimeout *timeout); -void _dbus_connection_toggle_timeout_unlocked (DBusConnection *connection, - DBusTimeout *timeout, - dbus_bool_t enabled); -DBusConnection* _dbus_connection_new_for_transport (DBusTransport *transport); -void _dbus_connection_do_iteration_unlocked (DBusConnection *connection, - DBusPendingCall *pending, - unsigned int flags, - int timeout_milliseconds); -void _dbus_connection_close_possibly_shared (DBusConnection *connection); -void _dbus_connection_close_if_only_one_ref (DBusConnection *connection); - -DBusPendingCall* _dbus_pending_call_new (DBusConnection *connection, - int timeout_milliseconds, - DBusTimeoutHandler timeout_handler); -void _dbus_pending_call_notify (DBusPendingCall *pending); -void _dbus_connection_remove_pending_call (DBusConnection *connection, - DBusPendingCall *pending); -void _dbus_connection_block_pending_call (DBusPendingCall *pending); -void _dbus_pending_call_complete_and_unlock (DBusPendingCall *pending, - DBusMessage *message); -dbus_bool_t _dbus_connection_send_and_unlock (DBusConnection *connection, - DBusMessage *message, - dbus_uint32_t *client_serial); - -void _dbus_connection_queue_synthesized_message_link (DBusConnection *connection, - DBusList *link); -void _dbus_connection_test_get_locks (DBusConnection *conn, - DBusMutex **mutex_loc, - DBusMutex **dispatch_mutex_loc, - DBusMutex **io_path_mutex_loc, - DBusCondVar **dispatch_cond_loc, - DBusCondVar **io_path_cond_loc); - -/* This _dbus_bus_* stuff doesn't really belong here, but dbus-bus-internal.h seems - * silly for one function - */ -/** - * @addtogroup DBusBusInternals - * @{ - */ - -void _dbus_bus_notify_shared_connection_disconnected_unlocked (DBusConnection *connection); - -/** @} */ - - -DBUS_END_DECLS - -#endif /* DBUS_CONNECTION_INTERNAL_H */ diff --git a/include/dbus-1/dbus/dbus-connection.h b/include/dbus-1/dbus/dbus-connection.h deleted file mode 100644 index 3e2a7d8d..00000000 --- a/include/dbus-1/dbus/dbus-connection.h +++ /dev/null @@ -1,495 +0,0 @@ -/* -*- mode: C; c-file-style: "gnu"; indent-tabs-mode: nil; -*- */ -/* dbus-connection.h DBusConnection object - * - * Copyright (C) 2002, 2003 Red Hat Inc. - * - * Licensed under the Academic Free License version 2.1 - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2 of the License, or - * (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with this program; if not, write to the Free Software - * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA - * - */ -#if !defined (DBUS_INSIDE_DBUS_H) && !defined (DBUS_COMPILATION) -#error "Only <dbus/dbus.h> can be included directly, this file may disappear or change contents." -#endif - -#ifndef DBUS_CONNECTION_H -#define DBUS_CONNECTION_H - -#include <dbus/dbus-errors.h> -#include <dbus/dbus-memory.h> -#include <dbus/dbus-message.h> -#include <dbus/dbus-shared.h> - -DBUS_BEGIN_DECLS - -/** - * @addtogroup DBusConnection - * @{ - */ - -/* documented in dbus-watch.c */ -typedef struct DBusWatch DBusWatch; -/* documented in dbus-timeout.c */ -typedef struct DBusTimeout DBusTimeout; -/** Opaque type representing preallocated resources so a message can be sent without further memory allocation. */ -typedef struct DBusPreallocatedSend DBusPreallocatedSend; -/** Opaque type representing a method call that has not yet received a reply. */ -typedef struct DBusPendingCall DBusPendingCall; -/** Opaque type representing a connection to a remote application and associated incoming/outgoing message queues. */ -typedef struct DBusConnection DBusConnection; -/** Set of functions that must be implemented to handle messages sent to a particular object path. */ -typedef struct DBusObjectPathVTable DBusObjectPathVTable; - -/** - * Indicates the status of a #DBusWatch. - */ -typedef enum -{ - DBUS_WATCH_READABLE = 1 << 0, /**< As in POLLIN */ - DBUS_WATCH_WRITABLE = 1 << 1, /**< As in POLLOUT */ - DBUS_WATCH_ERROR = 1 << 2, /**< As in POLLERR (can't watch for - * this, but can be present in - * current state passed to - * dbus_watch_handle()). - */ - DBUS_WATCH_HANGUP = 1 << 3 /**< As in POLLHUP (can't watch for - * it, but can be present in current - * state passed to - * dbus_watch_handle()). - */ -} DBusWatchFlags; - -/** - * Indicates the status of incoming data on a #DBusConnection. This determines whether - * dbus_connection_dispatch() needs to be called. - */ -typedef enum -{ - DBUS_DISPATCH_DATA_REMAINS, /**< There is more data to potentially convert to messages. */ - DBUS_DISPATCH_COMPLETE, /**< All currently available data has been processed. */ - DBUS_DISPATCH_NEED_MEMORY /**< More memory is needed to continue. */ -} DBusDispatchStatus; - -/** Called when libdbus needs a new watch to be monitored by the main - * loop. Returns #FALSE if it lacks enough memory to add the - * watch. Set by dbus_connection_set_watch_functions() or - * dbus_server_set_watch_functions(). - */ -typedef dbus_bool_t (* DBusAddWatchFunction) (DBusWatch *watch, - void *data); -/** Called when dbus_watch_get_enabled() may return a different value - * than it did before. Set by dbus_connection_set_watch_functions() - * or dbus_server_set_watch_functions(). - */ -typedef void (* DBusWatchToggledFunction) (DBusWatch *watch, - void *data); -/** Called when libdbus no longer needs a watch to be monitored by the - * main loop. Set by dbus_connection_set_watch_functions() or - * dbus_server_set_watch_functions(). - */ -typedef void (* DBusRemoveWatchFunction) (DBusWatch *watch, - void *data); -/** Called when libdbus needs a new timeout to be monitored by the main - * loop. Returns #FALSE if it lacks enough memory to add the - * watch. Set by dbus_connection_set_timeout_functions() or - * dbus_server_set_timeout_functions(). - */ -typedef dbus_bool_t (* DBusAddTimeoutFunction) (DBusTimeout *timeout, - void *data); -/** Called when dbus_timeout_get_enabled() may return a different - * value than it did before. - * Set by dbus_connection_set_timeout_functions() or - * dbus_server_set_timeout_functions(). - */ -typedef void (* DBusTimeoutToggledFunction) (DBusTimeout *timeout, - void *data); -/** Called when libdbus no longer needs a timeout to be monitored by the - * main loop. Set by dbus_connection_set_timeout_functions() or - * dbus_server_set_timeout_functions(). - */ -typedef void (* DBusRemoveTimeoutFunction) (DBusTimeout *timeout, - void *data); -/** Called when the return value of dbus_connection_get_dispatch_status() - * may have changed. Set with dbus_connection_set_dispatch_status_function(). - */ -typedef void (* DBusDispatchStatusFunction) (DBusConnection *connection, - DBusDispatchStatus new_status, - void *data); -/** - * Called when the main loop's thread should be notified that there's now work - * to do. Set with dbus_connection_set_wakeup_main_function(). - */ -typedef void (* DBusWakeupMainFunction) (void *data); - -/** - * Called during authentication to check whether the given UNIX user - * ID is allowed to connect, if the client tried to auth as a UNIX - * user ID. Normally on Windows this would never happen. Set with - * dbus_connection_set_unix_user_function(). - */ -typedef dbus_bool_t (* DBusAllowUnixUserFunction) (DBusConnection *connection, - unsigned long uid, - void *data); - -/** - * Called during authentication to check whether the given Windows user - * ID is allowed to connect, if the client tried to auth as a Windows - * user ID. Normally on UNIX this would never happen. Set with - * dbus_connection_set_windows_user_function(). - */ -typedef dbus_bool_t (* DBusAllowWindowsUserFunction) (DBusConnection *connection, - const char *user_sid, - void *data); - - -/** - * Called when a pending call now has a reply available. Set with - * dbus_pending_call_set_notify(). - */ -typedef void (* DBusPendingCallNotifyFunction) (DBusPendingCall *pending, - void *user_data); - -/** - * Called when a message needs to be handled. The result indicates whether or - * not more handlers should be run. Set with dbus_connection_add_filter(). - */ -typedef DBusHandlerResult (* DBusHandleMessageFunction) (DBusConnection *connection, - DBusMessage *message, - void *user_data); -DBUS_EXPORT -DBusConnection* dbus_connection_open (const char *address, - DBusError *error); -DBUS_EXPORT -DBusConnection* dbus_connection_open_private (const char *address, - DBusError *error); -DBUS_EXPORT -DBusConnection* dbus_connection_ref (DBusConnection *connection); -DBUS_EXPORT -void dbus_connection_unref (DBusConnection *connection); -DBUS_EXPORT -void dbus_connection_close (DBusConnection *connection); -DBUS_EXPORT -dbus_bool_t dbus_connection_get_is_connected (DBusConnection *connection); -DBUS_EXPORT -dbus_bool_t dbus_connection_get_is_authenticated (DBusConnection *connection); -DBUS_EXPORT -dbus_bool_t dbus_connection_get_is_anonymous (DBusConnection *connection); -DBUS_EXPORT -char* dbus_connection_get_server_id (DBusConnection *connection); -DBUS_EXPORT -dbus_bool_t dbus_connection_can_send_type (DBusConnection *connection, - int type); - -DBUS_EXPORT -void dbus_connection_set_exit_on_disconnect (DBusConnection *connection, - dbus_bool_t exit_on_disconnect); -DBUS_EXPORT -void dbus_connection_flush (DBusConnection *connection); -DBUS_EXPORT -dbus_bool_t dbus_connection_read_write_dispatch (DBusConnection *connection, - int timeout_milliseconds); -DBUS_EXPORT -dbus_bool_t dbus_connection_read_write (DBusConnection *connection, - int timeout_milliseconds); -DBUS_EXPORT -DBusMessage* dbus_connection_borrow_message (DBusConnection *connection); -DBUS_EXPORT -void dbus_connection_return_message (DBusConnection *connection, - DBusMessage *message); -DBUS_EXPORT -void dbus_connection_steal_borrowed_message (DBusConnection *connection, - DBusMessage *message); -DBUS_EXPORT -DBusMessage* dbus_connection_pop_message (DBusConnection *connection); -DBUS_EXPORT -DBusDispatchStatus dbus_connection_get_dispatch_status (DBusConnection *connection); -DBUS_EXPORT -DBusDispatchStatus dbus_connection_dispatch (DBusConnection *connection); -DBUS_EXPORT -dbus_bool_t dbus_connection_has_messages_to_send (DBusConnection *connection); -DBUS_EXPORT -dbus_bool_t dbus_connection_send (DBusConnection *connection, - DBusMessage *message, - dbus_uint32_t *client_serial); -DBUS_EXPORT -dbus_bool_t dbus_connection_send_with_reply (DBusConnection *connection, - DBusMessage *message, - DBusPendingCall **pending_return, - int timeout_milliseconds); -DBUS_EXPORT -DBusMessage * dbus_connection_send_with_reply_and_block (DBusConnection *connection, - DBusMessage *message, - int timeout_milliseconds, - DBusError *error); -DBUS_EXPORT -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); -DBUS_EXPORT -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); -DBUS_EXPORT -void dbus_connection_set_wakeup_main_function (DBusConnection *connection, - DBusWakeupMainFunction wakeup_main_function, - void *data, - DBusFreeFunction free_data_function); -DBUS_EXPORT -void dbus_connection_set_dispatch_status_function (DBusConnection *connection, - DBusDispatchStatusFunction function, - void *data, - DBusFreeFunction free_data_function); -DBUS_EXPORT -dbus_bool_t dbus_connection_get_unix_user (DBusConnection *connection, - unsigned long *uid); -DBUS_EXPORT -dbus_bool_t dbus_connection_get_unix_process_id (DBusConnection *connection, - unsigned long *pid); -DBUS_EXPORT -dbus_bool_t dbus_connection_get_adt_audit_session_data (DBusConnection *connection, - void **data, - dbus_int32_t *data_size); -DBUS_EXPORT -void dbus_connection_set_unix_user_function (DBusConnection *connection, - DBusAllowUnixUserFunction function, - void *data, - DBusFreeFunction free_data_function); -DBUS_EXPORT -dbus_bool_t dbus_connection_get_windows_user (DBusConnection *connection, - char **windows_sid_p); -DBUS_EXPORT -void dbus_connection_set_windows_user_function (DBusConnection *connection, - DBusAllowWindowsUserFunction function, - void *data, - DBusFreeFunction free_data_function); -DBUS_EXPORT -void dbus_connection_set_allow_anonymous (DBusConnection *connection, - dbus_bool_t value); -DBUS_EXPORT -void dbus_connection_set_route_peer_messages (DBusConnection *connection, - dbus_bool_t value); - - -/* Filters */ - -DBUS_EXPORT -dbus_bool_t dbus_connection_add_filter (DBusConnection *connection, - DBusHandleMessageFunction function, - void *user_data, - DBusFreeFunction free_data_function); -DBUS_EXPORT -void dbus_connection_remove_filter (DBusConnection *connection, - DBusHandleMessageFunction function, - void *user_data); - - -/* Other */ -DBUS_EXPORT -dbus_bool_t dbus_connection_allocate_data_slot (dbus_int32_t *slot_p); -DBUS_EXPORT -void dbus_connection_free_data_slot (dbus_int32_t *slot_p); -DBUS_EXPORT -dbus_bool_t dbus_connection_set_data (DBusConnection *connection, - dbus_int32_t slot, - void *data, - DBusFreeFunction free_data_func); -DBUS_EXPORT -void* dbus_connection_get_data (DBusConnection *connection, - dbus_int32_t slot); - -DBUS_EXPORT -void dbus_connection_set_change_sigpipe (dbus_bool_t will_modify_sigpipe); - -DBUS_EXPORT -void dbus_connection_set_max_message_size (DBusConnection *connection, - long size); -DBUS_EXPORT -long dbus_connection_get_max_message_size (DBusConnection *connection); -DBUS_EXPORT -void dbus_connection_set_max_received_size (DBusConnection *connection, - long size); -DBUS_EXPORT -long dbus_connection_get_max_received_size (DBusConnection *connection); - -DBUS_EXPORT -void dbus_connection_set_max_message_unix_fds (DBusConnection *connection, - long n); -DBUS_EXPORT -long dbus_connection_get_max_message_unix_fds (DBusConnection *connection); -DBUS_EXPORT -void dbus_connection_set_max_received_unix_fds(DBusConnection *connection, - long n); -DBUS_EXPORT -long dbus_connection_get_max_received_unix_fds(DBusConnection *connection); - -DBUS_EXPORT -long dbus_connection_get_outgoing_size (DBusConnection *connection); -DBUS_EXPORT -long dbus_connection_get_outgoing_unix_fds (DBusConnection *connection); - -DBUS_EXPORT -DBusPreallocatedSend* dbus_connection_preallocate_send (DBusConnection *connection); -DBUS_EXPORT -void dbus_connection_free_preallocated_send (DBusConnection *connection, - DBusPreallocatedSend *preallocated); -DBUS_EXPORT -void dbus_connection_send_preallocated (DBusConnection *connection, - DBusPreallocatedSend *preallocated, - DBusMessage *message, - dbus_uint32_t *client_serial); - - -/* Object tree functionality */ - -/** - * Called when a #DBusObjectPathVTable is unregistered (or its connection is freed). - * Found in #DBusObjectPathVTable. - */ -typedef void (* DBusObjectPathUnregisterFunction) (DBusConnection *connection, - void *user_data); -/** - * Called when a message is sent to a registered object path. Found in - * #DBusObjectPathVTable which is registered with dbus_connection_register_object_path() - * or dbus_connection_register_fallback(). - */ -typedef DBusHandlerResult (* DBusObjectPathMessageFunction) (DBusConnection *connection, - DBusMessage *message, - void *user_data); - -/** - * Virtual table that must be implemented to handle a portion of the - * object path hierarchy. Attach the vtable to a particular path using - * dbus_connection_register_object_path() or - * dbus_connection_register_fallback(). - */ -struct DBusObjectPathVTable -{ - DBusObjectPathUnregisterFunction unregister_function; /**< Function to unregister this handler */ - DBusObjectPathMessageFunction message_function; /**< Function to handle messages */ - - 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 */ - void (* dbus_internal_pad4) (void *); /**< Reserved for future expansion */ -}; - -DBUS_EXPORT -dbus_bool_t dbus_connection_try_register_object_path (DBusConnection *connection, - const char *path, - const DBusObjectPathVTable *vtable, - void *user_data, - DBusError *error); - -DBUS_EXPORT -dbus_bool_t dbus_connection_register_object_path (DBusConnection *connection, - const char *path, - const DBusObjectPathVTable *vtable, - void *user_data); - -DBUS_EXPORT -dbus_bool_t dbus_connection_try_register_fallback (DBusConnection *connection, - const char *path, - const DBusObjectPathVTable *vtable, - void *user_data, - DBusError *error); - -DBUS_EXPORT -dbus_bool_t dbus_connection_register_fallback (DBusConnection *connection, - const char *path, - const DBusObjectPathVTable *vtable, - void *user_data); -DBUS_EXPORT -dbus_bool_t dbus_connection_unregister_object_path (DBusConnection *connection, - const char *path); - -DBUS_EXPORT -dbus_bool_t dbus_connection_get_object_path_data (DBusConnection *connection, - const char *path, - void **data_p); - -DBUS_EXPORT -dbus_bool_t dbus_connection_list_registered (DBusConnection *connection, - const char *parent_path, - char ***child_entries); - -DBUS_EXPORT -dbus_bool_t dbus_connection_get_unix_fd (DBusConnection *connection, - int *fd); -DBUS_EXPORT -dbus_bool_t dbus_connection_get_socket (DBusConnection *connection, - int *fd); - -/** @} */ - - -/** - * @addtogroup DBusWatch - * @{ - */ - -#ifndef DBUS_DISABLE_DEPRECATED -DBUS_EXPORT -DBUS_DEPRECATED int dbus_watch_get_fd (DBusWatch *watch); -#endif - -DBUS_EXPORT -int dbus_watch_get_unix_fd (DBusWatch *watch); -DBUS_EXPORT -int dbus_watch_get_socket (DBusWatch *watch); -DBUS_EXPORT -unsigned int dbus_watch_get_flags (DBusWatch *watch); -DBUS_EXPORT -void* dbus_watch_get_data (DBusWatch *watch); -DBUS_EXPORT -void dbus_watch_set_data (DBusWatch *watch, - void *data, - DBusFreeFunction free_data_function); -DBUS_EXPORT -dbus_bool_t dbus_watch_handle (DBusWatch *watch, - unsigned int flags); -DBUS_EXPORT -dbus_bool_t dbus_watch_get_enabled (DBusWatch *watch); - -/** @} */ - -/** - * @addtogroup DBusTimeout - * @{ - */ - -DBUS_EXPORT -int dbus_timeout_get_interval (DBusTimeout *timeout); -DBUS_EXPORT -void* dbus_timeout_get_data (DBusTimeout *timeout); -DBUS_EXPORT -void dbus_timeout_set_data (DBusTimeout *timeout, - void *data, - DBusFreeFunction free_data_function); -DBUS_EXPORT -dbus_bool_t dbus_timeout_handle (DBusTimeout *timeout); -DBUS_EXPORT -dbus_bool_t dbus_timeout_get_enabled (DBusTimeout *timeout); - -/** @} */ - -DBUS_END_DECLS - -#endif /* DBUS_CONNECTION_H */ diff --git a/include/dbus-1/dbus/dbus-credentials.h b/include/dbus-1/dbus/dbus-credentials.h deleted file mode 100644 index ef6124fd..00000000 --- a/include/dbus-1/dbus/dbus-credentials.h +++ /dev/null @@ -1,79 +0,0 @@ -/* -*- mode: C; c-file-style: "gnu"; indent-tabs-mode: nil; -*- */ -/* dbus-credentials.h Credentials provable through authentication - * - * Copyright (C) 2007 Red Hat Inc. - * - * Licensed under the Academic Free License version 2.1 - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2 of the License, or - * (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with this program; if not, write to the Free Software - * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA - * - */ -#ifndef DBUS_CREDENTIALS_H -#define DBUS_CREDENTIALS_H - -#include <dbus/dbus-macros.h> -#include <dbus/dbus-errors.h> -#include <dbus/dbus-string.h> -#include <dbus/dbus-sysdeps.h> - -DBUS_BEGIN_DECLS - -typedef enum { - DBUS_CREDENTIAL_UNIX_PROCESS_ID, - DBUS_CREDENTIAL_UNIX_USER_ID, - DBUS_CREDENTIAL_ADT_AUDIT_DATA_ID, - DBUS_CREDENTIAL_WINDOWS_SID -} DBusCredentialType; - -DBusCredentials* _dbus_credentials_new_from_current_process (void); -DBusCredentials* _dbus_credentials_new (void); -void _dbus_credentials_ref (DBusCredentials *credentials); -void _dbus_credentials_unref (DBusCredentials *credentials); -dbus_bool_t _dbus_credentials_add_unix_pid (DBusCredentials *credentials, - dbus_pid_t pid); -dbus_bool_t _dbus_credentials_add_unix_uid (DBusCredentials *credentials, - dbus_uid_t uid); -dbus_bool_t _dbus_credentials_add_windows_sid (DBusCredentials *credentials, - const char *windows_sid); -dbus_bool_t _dbus_credentials_add_adt_audit_data (DBusCredentials *credentials, - void *audit_data, - dbus_int32_t size); -dbus_bool_t _dbus_credentials_include (DBusCredentials *credentials, - DBusCredentialType type); -dbus_pid_t _dbus_credentials_get_unix_pid (DBusCredentials *credentials); -dbus_uid_t _dbus_credentials_get_unix_uid (DBusCredentials *credentials); -const char* _dbus_credentials_get_windows_sid (DBusCredentials *credentials); -void * _dbus_credentials_get_adt_audit_data (DBusCredentials *credentials); -dbus_int32_t _dbus_credentials_get_adt_audit_data_size (DBusCredentials *credentials); -dbus_bool_t _dbus_credentials_are_superset (DBusCredentials *credentials, - DBusCredentials *possible_subset); -dbus_bool_t _dbus_credentials_are_empty (DBusCredentials *credentials); -dbus_bool_t _dbus_credentials_are_anonymous (DBusCredentials *credentials); -dbus_bool_t _dbus_credentials_add_credentials (DBusCredentials *credentials, - DBusCredentials *other_credentials); -/* must silently allow 'which' to not exist */ -dbus_bool_t _dbus_credentials_add_credential (DBusCredentials *credentials, - DBusCredentialType which, - DBusCredentials *other_credentials); -void _dbus_credentials_clear (DBusCredentials *credentials); -DBusCredentials* _dbus_credentials_copy (DBusCredentials *credentials); -dbus_bool_t _dbus_credentials_same_user (DBusCredentials *credentials, - DBusCredentials *other_credentials); -dbus_bool_t _dbus_credentials_to_string_append (DBusCredentials *credentials, - DBusString *string); - -DBUS_END_DECLS - -#endif /* DBUS_CREDENTIALS_H */ diff --git a/include/dbus-1/dbus/dbus-dataslot.h b/include/dbus-1/dbus/dbus-dataslot.h deleted file mode 100644 index 2e706f72..00000000 --- a/include/dbus-1/dbus/dbus-dataslot.h +++ /dev/null @@ -1,96 +0,0 @@ -/* -*- mode: C; c-file-style: "gnu"; indent-tabs-mode: nil; -*- */ -/* dbus-dataslot.h storing data on objects - * - * Copyright (C) 2003 Red Hat, Inc. - * - * Licensed under the Academic Free License version 2.1 - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2 of the License, or - * (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with this program; if not, write to the Free Software - * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA - * - */ -#ifndef DBUS_DATASLOT_H -#define DBUS_DATASLOT_H - -#include <dbus/dbus-internals.h> - -DBUS_BEGIN_DECLS - -typedef struct DBusDataSlotAllocator DBusDataSlotAllocator; -typedef struct DBusDataSlotList DBusDataSlotList; - -/** Opaque typedef for DBusDataSlot */ -typedef struct DBusDataSlot DBusDataSlot; -/** DBusDataSlot is used to store application data on the connection */ -struct DBusDataSlot -{ - void *data; /**< The application data */ - DBusFreeFunction free_data_func; /**< Free the application data */ -}; - -typedef struct DBusAllocatedSlot DBusAllocatedSlot; - -/** An allocated slot for storing data - */ -struct DBusAllocatedSlot -{ - dbus_int32_t slot_id; /**< ID of this slot */ - int refcount; /**< Number of uses of the slot */ -}; - -/** - * An allocator that tracks a set of slot IDs. - */ -struct DBusDataSlotAllocator -{ - DBusAllocatedSlot *allocated_slots; /**< Allocated slots */ - int n_allocated_slots; /**< number of slots malloc'd */ - int n_used_slots; /**< number of slots used */ - DBusMutex **lock_loc; /**< location of thread lock */ -}; - -/** - * Data structure that stores the actual user data set at a given - * slot. - */ -struct DBusDataSlotList -{ - DBusDataSlot *slots; /**< Data slots */ - int n_slots; /**< Slots we have storage for in data_slots */ -}; - -dbus_bool_t _dbus_data_slot_allocator_init (DBusDataSlotAllocator *allocator); -dbus_bool_t _dbus_data_slot_allocator_alloc (DBusDataSlotAllocator *allocator, - DBusMutex **mutex_loc, - int *slot_id_p); -void _dbus_data_slot_allocator_free (DBusDataSlotAllocator *allocator, - int *slot_id_p); -void _dbus_data_slot_list_init (DBusDataSlotList *list); -dbus_bool_t _dbus_data_slot_list_set (DBusDataSlotAllocator *allocator, - DBusDataSlotList *list, - int slot, - void *data, - DBusFreeFunction free_data_func, - DBusFreeFunction *old_free_func, - void **old_data); -void* _dbus_data_slot_list_get (DBusDataSlotAllocator *allocator, - DBusDataSlotList *list, - int slot); -void _dbus_data_slot_list_clear (DBusDataSlotList *list); -void _dbus_data_slot_list_free (DBusDataSlotList *list); - - -DBUS_END_DECLS - -#endif /* DBUS_DATASLOT_H */ diff --git a/include/dbus-1/dbus/dbus-errors.h b/include/dbus-1/dbus/dbus-errors.h deleted file mode 100644 index e63139a0..00000000 --- a/include/dbus-1/dbus/dbus-errors.h +++ /dev/null @@ -1,90 +0,0 @@ -/* -*- mode: C; c-file-style: "gnu"; indent-tabs-mode: nil; -*- */ -/* dbus-errors.h Error reporting - * - * Copyright (C) 2002 Red Hat Inc. - * Copyright (C) 2003 CodeFactory AB - * - * Licensed under the Academic Free License version 2.1 - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2 of the License, or - * (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with this program; if not, write to the Free Software - * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA - * - */ -#if !defined (DBUS_INSIDE_DBUS_H) && !defined (DBUS_COMPILATION) -#error "Only <dbus/dbus.h> can be included directly, this file may disappear or change contents." -#endif - -#ifndef DBUS_ERROR_H -#define DBUS_ERROR_H - -#include <dbus/dbus-macros.h> -#include <dbus/dbus-types.h> -#include <dbus/dbus-protocol.h> - -DBUS_BEGIN_DECLS - -/** - * @addtogroup DBusErrors - * @{ - */ - -/** Mostly-opaque type representing an error that occurred */ -typedef struct DBusError DBusError; - -/** - * Object representing an exception. - */ -struct DBusError -{ - const char *name; /**< public error name field */ - const char *message; /**< public error message field */ - - unsigned int dummy1 : 1; /**< placeholder */ - unsigned int dummy2 : 1; /**< placeholder */ - unsigned int dummy3 : 1; /**< placeholder */ - unsigned int dummy4 : 1; /**< placeholder */ - unsigned int dummy5 : 1; /**< placeholder */ - - void *padding1; /**< placeholder */ -}; - -#define DBUS_ERROR_INIT { NULL, NULL, TRUE, 0, 0, 0, 0, NULL } - -DBUS_EXPORT -void dbus_error_init (DBusError *error); -DBUS_EXPORT -void dbus_error_free (DBusError *error); -DBUS_EXPORT -void dbus_set_error (DBusError *error, - const char *name, - const char *message, - ...); -DBUS_EXPORT -void dbus_set_error_const (DBusError *error, - const char *name, - const char *message); -DBUS_EXPORT -void dbus_move_error (DBusError *src, - DBusError *dest); -DBUS_EXPORT -dbus_bool_t dbus_error_has_name (const DBusError *error, - const char *name); -DBUS_EXPORT -dbus_bool_t dbus_error_is_set (const DBusError *error); - -/** @} */ - -DBUS_END_DECLS - -#endif /* DBUS_ERROR_H */ diff --git a/include/dbus-1/dbus/dbus-file.h b/include/dbus-1/dbus/dbus-file.h deleted file mode 100644 index 24837f47..00000000 --- a/include/dbus-1/dbus/dbus-file.h +++ /dev/null @@ -1,63 +0,0 @@ -/* -*- mode: C; c-file-style: "gnu"; indent-tabs-mode: nil; -*- */ -/* dbus-file.h dbus file related stuff (internal to D-Bus implementation) - * - * Copyright (C) 2002, 2003 Red Hat, Inc. - * Copyright (C) 2003 CodeFactory AB - * - * Licensed under the Academic Free License version 2.1 - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2 of the License, or - * (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with this program; if not, write to the Free Software - * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA - * - */ - -#ifndef DBUS_FILE_H -#define DBUS_FILE_H - -//#include <dbus/dbus-types.h> -#include <dbus/dbus-string.h> -#include <dbus/dbus-errors.h> - -DBUS_BEGIN_DECLS - -/** - * @addtogroup DBusFile - * @{ - */ - -/** - * File interface - */ -dbus_bool_t _dbus_file_exists (const char *file); -dbus_bool_t _dbus_file_get_contents (DBusString *str, - const DBusString *filename, - DBusError *error); -dbus_bool_t _dbus_string_save_to_file (const DBusString *str, - const DBusString *filename, - dbus_bool_t world_readable, - DBusError *error); - -dbus_bool_t _dbus_make_file_world_readable (const DBusString *filename, - DBusError *error); - -dbus_bool_t _dbus_create_file_exclusively (const DBusString *filename, - DBusError *error); -dbus_bool_t _dbus_delete_file (const DBusString *filename, - DBusError *error); - -/** @} */ - -DBUS_END_DECLS - -#endif diff --git a/include/dbus-1/dbus/dbus-hash.h b/include/dbus-1/dbus/dbus-hash.h deleted file mode 100644 index d1ca246c..00000000 --- a/include/dbus-1/dbus/dbus-hash.h +++ /dev/null @@ -1,151 +0,0 @@ -/* -*- mode: C; c-file-style: "gnu"; indent-tabs-mode: nil; -*- */ -/* dbus-hash.h Generic hash table utility (internal to D-Bus implementation) - * - * Copyright (C) 2002 Red Hat, Inc. - * - * Licensed under the Academic Free License version 2.1 - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2 of the License, or - * (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with this program; if not, write to the Free Software - * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA - * - */ - -#ifndef DBUS_HASH_H -#define DBUS_HASH_H - -#ifdef HAVE_STDINT_H -#include <stdint.h> -#endif - -#ifdef HAVE_INTTYPES_H -#include <inttypes.h> -#endif - -#include <dbus/dbus-memory.h> -#include <dbus/dbus-types.h> -#include <dbus/dbus-sysdeps.h> - -DBUS_BEGIN_DECLS - -/** - * @addtogroup DBusHashTable - * @{ - */ - -/** Hash iterator object. The iterator is on the stack, but its real - * fields are hidden privately. - */ -struct DBusHashIter -{ - void *dummy1; /**< Do not use. */ - void *dummy2; /**< Do not use. */ - void *dummy3; /**< Do not use. */ - void *dummy4; /**< Do not use. */ - int dummy5; /**< Do not use. */ - int dummy6; /**< Do not use. */ -}; - -typedef struct DBusHashTable DBusHashTable; -typedef struct DBusHashIter DBusHashIter; - -/* Allowing an arbitrary function as with GLib - * would be nicer for a public API, but for - * an internal API this saves typing, we can add - * more whenever we feel like it. - */ -typedef enum -{ - DBUS_HASH_STRING, /**< Hash keys are strings. */ - DBUS_HASH_TWO_STRINGS, /**< Hash key is two strings in one memory block, i.e. foo\\0bar\\0 */ - DBUS_HASH_INT, /**< Hash keys are integers. */ - DBUS_HASH_POINTER, /**< Hash keys are pointers. */ - DBUS_HASH_UINTPTR /**< Hash keys are integer capable to hold a pointer. */ -} DBusHashType; - -DBusHashTable* _dbus_hash_table_new (DBusHashType type, - DBusFreeFunction key_free_function, - DBusFreeFunction value_free_function); -DBusHashTable* _dbus_hash_table_ref (DBusHashTable *table); -void _dbus_hash_table_unref (DBusHashTable *table); -void _dbus_hash_table_remove_all (DBusHashTable *table); -void _dbus_hash_iter_init (DBusHashTable *table, - DBusHashIter *iter); -dbus_bool_t _dbus_hash_iter_next (DBusHashIter *iter); -void _dbus_hash_iter_remove_entry (DBusHashIter *iter); -void* _dbus_hash_iter_get_value (DBusHashIter *iter); -void _dbus_hash_iter_set_value (DBusHashIter *iter, - void *value); -int _dbus_hash_iter_get_int_key (DBusHashIter *iter); -const char* _dbus_hash_iter_get_string_key (DBusHashIter *iter); -const char* _dbus_hash_iter_get_two_strings_key (DBusHashIter *iter); -uintptr_t _dbus_hash_iter_get_uintptr_key (DBusHashIter *iter); -dbus_bool_t _dbus_hash_iter_lookup (DBusHashTable *table, - void *key, - dbus_bool_t create_if_not_found, - DBusHashIter *iter); -void* _dbus_hash_table_lookup_string (DBusHashTable *table, - const char *key); -void* _dbus_hash_table_lookup_two_strings (DBusHashTable *table, - const char *key); -void* _dbus_hash_table_lookup_int (DBusHashTable *table, - int key); -void* _dbus_hash_table_lookup_pointer (DBusHashTable *table, - void *key); -void* _dbus_hash_table_lookup_uintptr (DBusHashTable *table, - uintptr_t key); -dbus_bool_t _dbus_hash_table_remove_string (DBusHashTable *table, - const char *key); -dbus_bool_t _dbus_hash_table_remove_two_strings (DBusHashTable *table, - const char *key); -dbus_bool_t _dbus_hash_table_remove_int (DBusHashTable *table, - int key); -dbus_bool_t _dbus_hash_table_remove_pointer (DBusHashTable *table, - void *key); -dbus_bool_t _dbus_hash_table_remove_uintptr (DBusHashTable *table, - uintptr_t key); -dbus_bool_t _dbus_hash_table_insert_string (DBusHashTable *table, - char *key, - void *value); -dbus_bool_t _dbus_hash_table_insert_two_strings (DBusHashTable *table, - char *key, - void *value); -dbus_bool_t _dbus_hash_table_insert_int (DBusHashTable *table, - int key, - void *value); -dbus_bool_t _dbus_hash_table_insert_pointer (DBusHashTable *table, - void *key, - void *value); -dbus_bool_t _dbus_hash_table_insert_uintptr (DBusHashTable *table, - uintptr_t key, - void *value); -int _dbus_hash_table_get_n_entries (DBusHashTable *table); - -/* Preallocation */ - -/** A preallocated hash entry */ -typedef struct DBusPreallocatedHash DBusPreallocatedHash; - -DBusPreallocatedHash *_dbus_hash_table_preallocate_entry (DBusHashTable *table); -void _dbus_hash_table_free_preallocated_entry (DBusHashTable *table, - DBusPreallocatedHash *preallocated); -void _dbus_hash_table_insert_string_preallocated (DBusHashTable *table, - DBusPreallocatedHash *preallocated, - char *key, - void *value); - -/** @} */ - -DBUS_END_DECLS - -#endif /* DBUS_HASH_H */ diff --git a/include/dbus-1/dbus/dbus-internals.h b/include/dbus-1/dbus/dbus-internals.h deleted file mode 100644 index dcef7d7f..00000000 --- a/include/dbus-1/dbus/dbus-internals.h +++ /dev/null @@ -1,367 +0,0 @@ -/* -*- mode: C; c-file-style: "gnu"; indent-tabs-mode: nil; -*- */ -/* dbus-internals.h random utility stuff (internal to D-Bus implementation) - * - * Copyright (C) 2002, 2003 Red Hat, Inc. - * - * Licensed under the Academic Free License version 2.1 - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2 of the License, or - * (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with this program; if not, write to the Free Software - * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA - * - */ -#ifdef DBUS_INSIDE_DBUS_H -#error "You can't include dbus-internals.h in the public header dbus.h" -#endif - -#ifndef DBUS_INTERNALS_H -#define DBUS_INTERNALS_H - -#include <dbus/dbus-memory.h> -#include <dbus/dbus-types.h> -#include <dbus/dbus-errors.h> -#include <dbus/dbus-sysdeps.h> -#include <dbus/dbus-threads-internal.h> - -DBUS_BEGIN_DECLS - -#ifndef DBUS_SESSION_BUS_DEFAULT_ADDRESS -#define DBUS_SESSION_BUS_DEFAULT_ADDRESS "autolaunch:" -#endif - -void _dbus_warn (const char *format, - ...) _DBUS_GNUC_PRINTF (1, 2); - -void _dbus_warn_check_failed (const char *format, - ...) _DBUS_GNUC_PRINTF (1, 2); - - -#if defined (__STDC_VERSION__) && (__STDC_VERSION__ >= 199901L) -#define _DBUS_FUNCTION_NAME __func__ -#elif defined(__GNUC__) || defined(_MSC_VER) -#define _DBUS_FUNCTION_NAME __FUNCTION__ -#else -#define _DBUS_FUNCTION_NAME "unknown function" -#endif - -/* - * (code from GLib) - * - * The _DBUS_LIKELY and _DBUS_UNLIKELY macros let the programmer give hints to - * the compiler about the expected result of an expression. Some compilers - * can use this information for optimizations. - * - * The _DBUS_BOOLEAN_EXPR macro is intended to trigger a gcc warning when - * putting assignments in the macro arg - */ -#if defined(__GNUC__) && (__GNUC__ > 2) && defined(__OPTIMIZE__) -#define _DBUS_BOOLEAN_EXPR(expr) \ - __extension__ ({ \ - int _dbus_boolean_var_; \ - if (expr) \ - _dbus_boolean_var_ = 1; \ - else \ - _dbus_boolean_var_ = 0; \ - _dbus_boolean_var_; \ -}) -#define _DBUS_LIKELY(expr) (__builtin_expect (_DBUS_BOOLEAN_EXPR(expr), 1)) -#define _DBUS_UNLIKELY(expr) (__builtin_expect (_DBUS_BOOLEAN_EXPR(expr), 0)) -#else -#define _DBUS_LIKELY(expr) (expr) -#define _DBUS_UNLIKELY(expr) (expr) -#endif - -#ifdef DBUS_ENABLE_VERBOSE_MODE - -/* - at least gnu cc and msvc compiler are known to - have support for variable macro argument lists - add other compilers is required -*/ -#if defined(__GNUC__) || defined(_MSC_VER) -#define DBUS_CPP_SUPPORTS_VARIABLE_MACRO_ARGUMENTS -#endif - -#ifdef DBUS_CPP_SUPPORTS_VARIABLE_MACRO_ARGUMENTS -void _dbus_verbose_real (const char *file, const int line, const char *function, - const char *format,...) _DBUS_GNUC_PRINTF (4, 5); -# define _dbus_verbose(fmt,...) _dbus_verbose_real( __FILE__,__LINE__,__FUNCTION__,fmt, ## __VA_ARGS__) -#else -void _dbus_verbose_real (const char *format, - ...) _DBUS_GNUC_PRINTF (1, 2); -# define _dbus_verbose _dbus_verbose_real -#endif -void _dbus_verbose_reset_real (void); -dbus_bool_t _dbus_is_verbose_real (void); - -# define _dbus_verbose_reset _dbus_verbose_reset_real -# define _dbus_is_verbose _dbus_is_verbose_real -#else -# ifdef HAVE_ISO_VARARGS -# define _dbus_verbose(...) -# elif defined (HAVE_GNUC_VARARGS) -# define _dbus_verbose(format...) -# else -static void _dbus_verbose(const char * x,...) {;} -# endif -# define _dbus_verbose_reset() -# define _dbus_is_verbose() FALSE -#endif /* !DBUS_ENABLE_VERBOSE_MODE */ - -const char* _dbus_strerror (int error_number); - -#ifdef DBUS_DISABLE_ASSERT -#define _dbus_assert(condition) -#else -void _dbus_real_assert (dbus_bool_t condition, - const char *condition_text, - const char *file, - int line, - const char *func); -#define _dbus_assert(condition) \ - _dbus_real_assert ((condition) != 0, #condition, __FILE__, __LINE__, _DBUS_FUNCTION_NAME) -#endif /* !DBUS_DISABLE_ASSERT */ - -#ifdef DBUS_DISABLE_ASSERT -#define _dbus_assert_not_reached(explanation) -#else -void _dbus_real_assert_not_reached (const char *explanation, - const char *file, - int line) _DBUS_GNUC_NORETURN; -#define _dbus_assert_not_reached(explanation) \ - _dbus_real_assert_not_reached (explanation, __FILE__, __LINE__) -#endif /* !DBUS_DISABLE_ASSERT */ - -#ifdef DBUS_DISABLE_CHECKS -#define _dbus_return_if_fail(condition) -#define _dbus_return_val_if_fail(condition, val) -#else - -extern const char *_dbus_return_if_fail_warning_format; - -#define _dbus_return_if_fail(condition) do { \ - _dbus_assert ((*(const char*)_DBUS_FUNCTION_NAME) != '_'); \ - if (!(condition)) { \ - _dbus_warn_check_failed (_dbus_return_if_fail_warning_format, \ - _DBUS_FUNCTION_NAME, #condition, __FILE__, __LINE__); \ - return; \ - } } while (0) - -#define _dbus_return_val_if_fail(condition, val) do { \ - _dbus_assert ((*(const char*)_DBUS_FUNCTION_NAME) != '_'); \ - if (!(condition)) { \ - _dbus_warn_check_failed (_dbus_return_if_fail_warning_format, \ - _DBUS_FUNCTION_NAME, #condition, __FILE__, __LINE__); \ - return (val); \ - } } while (0) - -#endif /* !DBUS_DISABLE_ASSERT */ - -#define _DBUS_N_ELEMENTS(array) ((int) (sizeof ((array)) / sizeof ((array)[0]))) - -#define _DBUS_POINTER_TO_INT(pointer) ((intptr_t)(pointer)) -#define _DBUS_INT_TO_POINTER(integer) ((void*)((intptr_t)(integer))) - -#define _DBUS_ZERO(object) (memset (&(object), '\0', sizeof ((object)))) - -#define _DBUS_STRUCT_OFFSET(struct_type, member) \ - ((intptr_t) ((unsigned char*) &((struct_type*) 0)->member)) - -#ifdef DBUS_DISABLE_CHECKS -/* this is an assert and not an error, but in the typical --disable-checks case (you're trying - * to really minimize code size), disabling these assertions makes sense. - */ -#define _DBUS_ASSERT_ERROR_IS_SET(error) -#define _DBUS_ASSERT_ERROR_IS_CLEAR(error) -#else -#define _DBUS_ASSERT_ERROR_IS_SET(error) _dbus_assert ((error) == NULL || dbus_error_is_set ((error))) -#define _DBUS_ASSERT_ERROR_IS_CLEAR(error) _dbus_assert ((error) == NULL || !dbus_error_is_set ((error))) -#endif - -#define _dbus_return_if_error_is_set(error) _dbus_return_if_fail ((error) == NULL || !dbus_error_is_set ((error))) -#define _dbus_return_val_if_error_is_set(error, val) _dbus_return_val_if_fail ((error) == NULL || !dbus_error_is_set ((error)), (val)) - -/* This alignment thing is from ORBit2 */ -/* Align a value upward to a boundary, expressed as a number of bytes. - * E.g. align to an 8-byte boundary with argument of 8. - */ - -/* - * (this + boundary - 1) - * & - * ~(boundary - 1) - */ - -#define _DBUS_ALIGN_VALUE(this, boundary) \ - (( ((uintptr_t)(this)) + (((uintptr_t)(boundary)) -1)) & (~(((uintptr_t)(boundary))-1))) - -#define _DBUS_ALIGN_ADDRESS(this, boundary) \ - ((void*)_DBUS_ALIGN_VALUE(this, boundary)) - - -char* _dbus_strdup (const char *str); -void* _dbus_memdup (const void *mem, - size_t n_bytes); -dbus_bool_t _dbus_string_array_contains (const char **array, - const char *str); -char** _dbus_dup_string_array (const char **array); - -#define _DBUS_INT16_MIN ((dbus_int16_t) 0x8000) -#define _DBUS_INT16_MAX ((dbus_int16_t) 0x7fff) -#define _DBUS_UINT16_MAX ((dbus_uint16_t)0xffff) -#define _DBUS_INT32_MIN ((dbus_int32_t) 0x80000000) -#define _DBUS_INT32_MAX ((dbus_int32_t) 0x7fffffff) -#define _DBUS_UINT32_MAX ((dbus_uint32_t)0xffffffff) -/* using 32-bit here is sort of bogus */ -#define _DBUS_INT_MIN _DBUS_INT32_MIN -#define _DBUS_INT_MAX _DBUS_INT32_MAX -#define _DBUS_UINT_MAX _DBUS_UINT32_MAX -#ifdef DBUS_HAVE_INT64 -#define _DBUS_INT64_MAX DBUS_INT64_CONSTANT (0x7fffffffffffffff) -#define _DBUS_UINT64_MAX DBUS_UINT64_CONSTANT (0xffffffffffffffff) -#endif -#define _DBUS_ONE_KILOBYTE 1024 -#define _DBUS_ONE_MEGABYTE 1024 * _DBUS_ONE_KILOBYTE -#define _DBUS_ONE_HOUR_IN_MILLISECONDS (1000 * 60 * 60) -#define _DBUS_USEC_PER_SECOND (1000000) - -#undef MAX -#define MAX(a, b) (((a) > (b)) ? (a) : (b)) - -#undef MIN -#define MIN(a, b) (((a) < (b)) ? (a) : (b)) - -#undef ABS -#define ABS(a) (((a) < 0) ? -(a) : (a)) - -#define _DBUS_ISASCII(c) ((c) != '\0' && (((c) & ~0x7f) == 0)) - -typedef void (* DBusForeachFunction) (void *element, - void *data); - -dbus_bool_t _dbus_set_fd_nonblocking (int fd, - DBusError *error); - -void _dbus_verbose_bytes (const unsigned char *data, - int len, - int offset); -void _dbus_verbose_bytes_of_string (const DBusString *str, - int start, - int len); - -const char* _dbus_header_field_to_string (int header_field); - -extern const char *_dbus_no_memory_message; -#define _DBUS_SET_OOM(error) dbus_set_error_const ((error), DBUS_ERROR_NO_MEMORY, _dbus_no_memory_message) - -#ifdef DBUS_BUILD_TESTS -/* Memory debugging */ -void _dbus_set_fail_alloc_counter (int until_next_fail); -int _dbus_get_fail_alloc_counter (void); -void _dbus_set_fail_alloc_failures (int failures_per_failure); -int _dbus_get_fail_alloc_failures (void); -dbus_bool_t _dbus_decrement_fail_alloc_counter (void); -dbus_bool_t _dbus_disable_mem_pools (void); -int _dbus_get_malloc_blocks_outstanding (void); - -typedef dbus_bool_t (* DBusTestMemoryFunction) (void *data); -dbus_bool_t _dbus_test_oom_handling (const char *description, - DBusTestMemoryFunction func, - void *data); -#else -#define _dbus_set_fail_alloc_counter(n) -#define _dbus_get_fail_alloc_counter _DBUS_INT_MAX - -/* These are constant expressions so that blocks - * they protect should be optimized away - */ -#define _dbus_decrement_fail_alloc_counter() (FALSE) -#define _dbus_disable_mem_pools() (FALSE) -#define _dbus_get_malloc_blocks_outstanding (0) -#endif /* !DBUS_BUILD_TESTS */ - -typedef void (* DBusShutdownFunction) (void *data); -dbus_bool_t _dbus_register_shutdown_func (DBusShutdownFunction function, - void *data); - -extern int _dbus_current_generation; - -/* Thread initializers */ -#define _DBUS_LOCK_NAME(name) _dbus_lock_##name -#define _DBUS_DECLARE_GLOBAL_LOCK(name) extern DBusMutex *_dbus_lock_##name -#define _DBUS_DEFINE_GLOBAL_LOCK(name) DBusMutex *_dbus_lock_##name -#define _DBUS_LOCK(name) _dbus_mutex_lock (_dbus_lock_##name) -#define _DBUS_UNLOCK(name) _dbus_mutex_unlock (_dbus_lock_##name) - -/* 1-5 */ -_DBUS_DECLARE_GLOBAL_LOCK (list); -_DBUS_DECLARE_GLOBAL_LOCK (connection_slots); -_DBUS_DECLARE_GLOBAL_LOCK (pending_call_slots); -_DBUS_DECLARE_GLOBAL_LOCK (server_slots); -_DBUS_DECLARE_GLOBAL_LOCK (message_slots); -/* 5-10 */ -_DBUS_DECLARE_GLOBAL_LOCK (bus); -_DBUS_DECLARE_GLOBAL_LOCK (bus_datas); -_DBUS_DECLARE_GLOBAL_LOCK (shutdown_funcs); -_DBUS_DECLARE_GLOBAL_LOCK (system_users); -_DBUS_DECLARE_GLOBAL_LOCK (message_cache); -/* 10-14 */ -_DBUS_DECLARE_GLOBAL_LOCK (shared_connections); -_DBUS_DECLARE_GLOBAL_LOCK (win_fds); -_DBUS_DECLARE_GLOBAL_LOCK (sid_atom_cache); -_DBUS_DECLARE_GLOBAL_LOCK (machine_uuid); - -#if !DBUS_USE_SYNC -_DBUS_DECLARE_GLOBAL_LOCK (atomic); -#define _DBUS_N_GLOBAL_LOCKS (15) -#else -#define _DBUS_N_GLOBAL_LOCKS (14) -#endif - -dbus_bool_t _dbus_threads_init_debug (void); - -dbus_bool_t _dbus_address_append_escaped (DBusString *escaped, - const DBusString *unescaped); - -void _dbus_set_bad_address (DBusError *error, - const char *address_problem_type, - const char *address_problem_field, - const char *address_problem_other); - -#define DBUS_UUID_LENGTH_BYTES 16 -#define DBUS_UUID_LENGTH_WORDS (DBUS_UUID_LENGTH_BYTES / 4) -#define DBUS_UUID_LENGTH_HEX (DBUS_UUID_LENGTH_BYTES * 2) - -/** - * A globally unique ID ; we have one for each DBusServer, and also one for each - * machine with libdbus installed on it. - */ -union DBusGUID -{ - dbus_uint32_t as_uint32s[DBUS_UUID_LENGTH_WORDS]; /**< guid as four uint32 values */ - char as_bytes[DBUS_UUID_LENGTH_BYTES]; /**< guid as 16 single-byte values */ -}; - -void _dbus_generate_uuid (DBusGUID *uuid); -dbus_bool_t _dbus_uuid_encode (const DBusGUID *uuid, - DBusString *encoded); -dbus_bool_t _dbus_read_uuid_file (const DBusString *filename, - DBusGUID *uuid, - dbus_bool_t create_if_not_found, - DBusError *error); - -dbus_bool_t _dbus_get_local_machine_uuid_encoded (DBusString *uuid_str); - -DBUS_END_DECLS - -#endif /* DBUS_INTERNALS_H */ diff --git a/include/dbus-1/dbus/dbus-keyring.h b/include/dbus-1/dbus/dbus-keyring.h deleted file mode 100644 index 200e31bc..00000000 --- a/include/dbus-1/dbus/dbus-keyring.h +++ /dev/null @@ -1,52 +0,0 @@ -/* -*- mode: C; c-file-style: "gnu"; indent-tabs-mode: nil; -*- */ -/* dbus-keyring.h Store secret cookies in your homedir - * - * Copyright (C) 2003 Red Hat Inc. - * - * Licensed under the Academic Free License version 2.1 - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2 of the License, or - * (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with this program; if not, write to the Free Software - * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA - * - */ -#ifndef DBUS_KEYRING_H -#define DBUS_KEYRING_H - -#include <dbus/dbus-macros.h> -#include <dbus/dbus-errors.h> -#include <dbus/dbus-string.h> -#include <dbus/dbus-credentials.h> - -DBUS_BEGIN_DECLS - -typedef struct DBusKeyring DBusKeyring; - -DBusKeyring* _dbus_keyring_new_for_credentials (DBusCredentials *credentials, - const DBusString *context, - DBusError *error); -DBusKeyring* _dbus_keyring_ref (DBusKeyring *keyring); -void _dbus_keyring_unref (DBusKeyring *keyring); -dbus_bool_t _dbus_keyring_validate_context (const DBusString *context); -int _dbus_keyring_get_best_key (DBusKeyring *keyring, - DBusError *error); -dbus_bool_t _dbus_keyring_is_for_credentials (DBusKeyring *keyring, - DBusCredentials *credentials); -dbus_bool_t _dbus_keyring_get_hex_key (DBusKeyring *keyring, - int key_id, - DBusString *hex_key); - - -DBUS_END_DECLS - -#endif /* DBUS_KEYRING_H */ diff --git a/include/dbus-1/dbus/dbus-list.h b/include/dbus-1/dbus/dbus-list.h deleted file mode 100644 index 663ad257..00000000 --- a/include/dbus-1/dbus/dbus-list.h +++ /dev/null @@ -1,98 +0,0 @@ -/* -*- mode: C; c-file-style: "gnu"; indent-tabs-mode: nil; -*- */ -/* dbus-list.h Generic linked list utility (internal to D-Bus implementation) - * - * Copyright (C) 2002, 2003 Red Hat, Inc. - * - * Licensed under the Academic Free License version 2.1 - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2 of the License, or - * (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with this program; if not, write to the Free Software - * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA - * - */ - -#ifndef DBUS_LIST_H -#define DBUS_LIST_H - -#include <dbus/dbus-internals.h> -#include <dbus/dbus-memory.h> -#include <dbus/dbus-types.h> -#include <dbus/dbus-sysdeps.h> - -DBUS_BEGIN_DECLS - -struct DBusList -{ - DBusList *prev; /**< Previous list node. */ - DBusList *next; /**< Next list node. */ - void *data; /**< Data stored at this element. */ -}; -dbus_bool_t _dbus_list_append (DBusList **list, - void *data); -dbus_bool_t _dbus_list_prepend (DBusList **list, - void *data); -dbus_bool_t _dbus_list_insert_before (DBusList **list, - DBusList *before_this_link, - void *data); -dbus_bool_t _dbus_list_insert_after (DBusList **list, - DBusList *after_this_link, - void *data); -void _dbus_list_insert_before_link (DBusList **list, - DBusList *before_this_link, - DBusList *link); -void _dbus_list_insert_after_link (DBusList **list, - DBusList *after_this_link, - DBusList *link); -dbus_bool_t _dbus_list_remove (DBusList **list, - void *data); -dbus_bool_t _dbus_list_remove_last (DBusList **list, - void *data); -void _dbus_list_remove_link (DBusList **list, - DBusList *link); -DBusList* _dbus_list_find_last (DBusList **list, - void *data); -void _dbus_list_clear (DBusList **list); -DBusList* _dbus_list_get_first_link (DBusList **list); -DBusList* _dbus_list_get_last_link (DBusList **list); -void* _dbus_list_get_last (DBusList **list); -void* _dbus_list_get_first (DBusList **list); -void* _dbus_list_pop_first (DBusList **list); -void* _dbus_list_pop_last (DBusList **list); -DBusList* _dbus_list_pop_first_link (DBusList **list); -DBusList* _dbus_list_pop_last_link (DBusList **list); -dbus_bool_t _dbus_list_copy (DBusList **list, - DBusList **dest); -int _dbus_list_get_length (DBusList **list); -DBusList* _dbus_list_alloc_link (void *data); -void _dbus_list_free_link (DBusList *link); -void _dbus_list_unlink (DBusList **list, - DBusList *link); -void _dbus_list_append_link (DBusList **list, - DBusList *link); -void _dbus_list_prepend_link (DBusList **list, - DBusList *link); -dbus_bool_t _dbus_list_length_is_one (DBusList **list); - - - - -void _dbus_list_foreach (DBusList **list, - DBusForeachFunction function, - void *data); - -#define _dbus_list_get_next_link(list, link) ((link)->next == *(list) ? NULL : (link)->next) -#define _dbus_list_get_prev_link(list, link) ((link) == *(list) ? NULL : (link)->prev) - -DBUS_END_DECLS - -#endif /* DBUS_LIST_H */ diff --git a/include/dbus-1/dbus/dbus-macros.h b/include/dbus-1/dbus/dbus-macros.h deleted file mode 100644 index d1e40ecb..00000000 --- a/include/dbus-1/dbus/dbus-macros.h +++ /dev/null @@ -1,174 +0,0 @@ -/* -*- mode: C; c-file-style: "gnu"; indent-tabs-mode: nil; -*- */ -/* dbus-macros.h generic macros - * - * Copyright (C) 2002 Red Hat Inc. - * - * Licensed under the Academic Free License version 2.1 - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2 of the License, or - * (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with this program; if not, write to the Free Software - * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA - * - */ -#if !defined (DBUS_INSIDE_DBUS_H) && !defined (DBUS_COMPILATION) -#error "Only <dbus/dbus.h> can be included directly, this file may disappear or change contents." -#endif - -#ifndef DBUS_MACROS_H -#define DBUS_MACROS_H - -#ifdef __cplusplus -# define DBUS_BEGIN_DECLS extern "C" { -# define DBUS_END_DECLS } -#else -# define DBUS_BEGIN_DECLS -# define DBUS_END_DECLS -#endif - -#ifndef TRUE -# define TRUE 1 -#endif -#ifndef FALSE -# define FALSE 0 -#endif - -#ifndef NULL -# ifdef __cplusplus -# define NULL (0L) -# else /* !__cplusplus */ -# define NULL ((void*) 0) -# endif /* !__cplusplus */ -#endif - -#if __GNUC__ > 3 || (__GNUC__ == 3 && __GNUC_MINOR__ >= 1) -# define DBUS_DEPRECATED __attribute__ ((__deprecated__)) -#elif defined(_MSC_VER) && (_MSC_VER >= 1300) -# define DBUS_DEPRECATED __declspec(deprecated) -#else -# define DBUS_DEPRECATED -#endif - -#if __GNUC__ > 2 || (__GNUC__ == 2 && __GNUC_MINOR__ >= 8) -# define _DBUS_GNUC_EXTENSION __extension__ -#else -# define _DBUS_GNUC_EXTENSION -#endif - -#if __GNUC__ > 2 || (__GNUC__ == 2 && __GNUC_MINOR__ > 4) -#define _DBUS_GNUC_PRINTF( format_idx, arg_idx ) \ - __attribute__((__format__ (__printf__, format_idx, arg_idx))) -#define _DBUS_GNUC_NORETURN \ - __attribute__((__noreturn__)) -#else /* !__GNUC__ */ -#define _DBUS_GNUC_PRINTF( format_idx, arg_idx ) -#define _DBUS_GNUC_NORETURN -#endif /* !__GNUC__ */ - -/** @def _DBUS_GNUC_PRINTF - * used to tell gcc about printf format strings - */ -/** @def _DBUS_GNUC_NORETURN - * used to tell gcc about functions that never return, such as _dbus_abort() - */ - - -/* Normally docs are in .c files, but there isn't a .c file for this. */ -/** - * @defgroup DBusMacros Utility macros - * @ingroup DBus - * @brief #TRUE, #FALSE, #NULL, and so on - * - * Utility macros. - * - * @{ - */ - -/** - * @def DBUS_BEGIN_DECLS - * - * Macro used prior to declaring functions in the D-Bus header - * files. Expands to "extern "C"" when using a C++ compiler, - * and expands to nothing when using a C compiler. - * - * Please don't use this in your own code, consider it - * D-Bus internal. - */ -/** - * @def DBUS_END_DECLS - * - * Macro used after declaring functions in the D-Bus header - * files. Expands to "}" when using a C++ compiler, - * and expands to nothing when using a C compiler. - * - * Please don't use this in your own code, consider it - * D-Bus internal. - */ -/** - * @def TRUE - * - * Expands to "1" - */ -/** - * @def FALSE - * - * Expands to "0" - */ -/** - * @def NULL - * - * A null pointer, defined appropriately for C or C++. - */ -/** - * @def DBUS_DEPRECATED - * - * Tells the compiler to warn about a function or type if it's used. - * Code marked in this way should also be enclosed in - * @code - * #ifndef DBUS_DISABLE_DEPRECATED - * deprecated stuff here - * #endif - * @endcode - * - * Please don't use this in your own code, consider it - * D-Bus internal. - */ -/** - * @def _DBUS_GNUC_EXTENSION - * - * Tells gcc not to warn about extensions to the C standard in the - * following expression, even if compiling with -pedantic. Do not use - * this macro in your own code; please consider it to be internal to libdbus. - */ - -/* - * @def DBUS_EXPORT - * - * Declare the following symbol as public. This is currently a noop on - * platforms other than Windows. - */ - -#if defined(_WIN32) -# if defined(DBUS_STATIC_BUILD) -# define DBUS_EXPORT -# elif defined(dbus_1_EXPORTS) -# define DBUS_EXPORT __declspec(dllexport) -# else -# define DBUS_EXPORT __declspec(dllimport) -# endif -#else -#define DBUS_EXPORT -#endif - -/** @} */ - -#endif /* DBUS_MACROS_H */ diff --git a/include/dbus-1/dbus/dbus-mainloop.h b/include/dbus-1/dbus/dbus-mainloop.h deleted file mode 100644 index 656f8231..00000000 --- a/include/dbus-1/dbus/dbus-mainloop.h +++ /dev/null @@ -1,76 +0,0 @@ -/* -*- mode: C; c-file-style: "gnu"; indent-tabs-mode: nil; -*- */ -/* dbus-mainloop.h Main loop utility - * - * Copyright (C) 2003 Red Hat, Inc. - * - * Licensed under the Academic Free License version 2.1 - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2 of the License, or - * (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with this program; if not, write to the Free Software - * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA - * - */ - -#ifndef DBUS_MAINLOOP_H -#define DBUS_MAINLOOP_H - -#ifndef DOXYGEN_SHOULD_SKIP_THIS - -#include <dbus/dbus.h> - -typedef struct DBusLoop DBusLoop; - -typedef dbus_bool_t (* DBusWatchFunction) (DBusWatch *watch, - unsigned int condition, - void *data); -typedef void (* DBusTimeoutFunction) (DBusTimeout *timeout, - void *data); - -DBusLoop* _dbus_loop_new (void); -DBusLoop* _dbus_loop_ref (DBusLoop *loop); -void _dbus_loop_unref (DBusLoop *loop); -dbus_bool_t _dbus_loop_add_watch (DBusLoop *loop, - DBusWatch *watch, - DBusWatchFunction function, - void *data, - DBusFreeFunction free_data_func); -void _dbus_loop_remove_watch (DBusLoop *loop, - DBusWatch *watch, - DBusWatchFunction function, - void *data); -dbus_bool_t _dbus_loop_add_timeout (DBusLoop *loop, - DBusTimeout *timeout, - DBusTimeoutFunction function, - void *data, - DBusFreeFunction free_data_func); -void _dbus_loop_remove_timeout (DBusLoop *loop, - DBusTimeout *timeout, - DBusTimeoutFunction function, - void *data); - -dbus_bool_t _dbus_loop_queue_dispatch (DBusLoop *loop, - DBusConnection *connection); - -void _dbus_loop_run (DBusLoop *loop); -void _dbus_loop_quit (DBusLoop *loop); -dbus_bool_t _dbus_loop_iterate (DBusLoop *loop, - dbus_bool_t block); -dbus_bool_t _dbus_loop_dispatch (DBusLoop *loop); - -int _dbus_get_oom_wait (void); -void _dbus_wait_for_memory (void); - -#endif /* !DOXYGEN_SHOULD_SKIP_THIS */ - -#endif /* DBUS_MAINLOOP_H */ - diff --git a/include/dbus-1/dbus/dbus-marshal-basic.h b/include/dbus-1/dbus/dbus-marshal-basic.h deleted file mode 100644 index 0c27fc9e..00000000 --- a/include/dbus-1/dbus/dbus-marshal-basic.h +++ /dev/null @@ -1,273 +0,0 @@ -/* -*- mode: C; c-file-style: "gnu"; indent-tabs-mode: nil; -*- */ -/* dbus-marshal-basic.h Marshalling routines for basic (primitive) types - * - * Copyright (C) 2002 CodeFactory AB - * Copyright (C) 2004, 2005 Red Hat, Inc. - * - * Licensed under the Academic Free License version 2.1 - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2 of the License, or - * (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with this program; if not, write to the Free Software - * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA - * - */ - -#ifndef DBUS_MARSHAL_BASIC_H -#define DBUS_MARSHAL_BASIC_H - -#ifdef HAVE_BYTESWAP_H -#include <byteswap.h> -#endif - -#include <dbus/dbus-protocol.h> -#include <dbus/dbus-types.h> -#include <dbus/dbus-arch-deps.h> -#include <dbus/dbus-string.h> - -#ifdef WORDS_BIGENDIAN -#define DBUS_COMPILER_BYTE_ORDER DBUS_BIG_ENDIAN -#else -#define DBUS_COMPILER_BYTE_ORDER DBUS_LITTLE_ENDIAN -#endif - -#ifdef HAVE_BYTESWAP_H -#define DBUS_UINT16_SWAP_LE_BE_CONSTANT(val) bswap_16(val) -#define DBUS_UINT32_SWAP_LE_BE_CONSTANT(val) bswap_32(val) -#else /* HAVE_BYTESWAP_H */ - -#define DBUS_UINT16_SWAP_LE_BE_CONSTANT(val) ((dbus_uint16_t) ( \ - (dbus_uint16_t) ((dbus_uint16_t) (val) >> 8) | \ - (dbus_uint16_t) ((dbus_uint16_t) (val) << 8))) - -#define DBUS_UINT32_SWAP_LE_BE_CONSTANT(val) ((dbus_uint32_t) ( \ - (((dbus_uint32_t) (val) & (dbus_uint32_t) 0x000000ffU) << 24) | \ - (((dbus_uint32_t) (val) & (dbus_uint32_t) 0x0000ff00U) << 8) | \ - (((dbus_uint32_t) (val) & (dbus_uint32_t) 0x00ff0000U) >> 8) | \ - (((dbus_uint32_t) (val) & (dbus_uint32_t) 0xff000000U) >> 24))) - -#endif /* HAVE_BYTESWAP_H */ - -#ifdef DBUS_HAVE_INT64 - -#ifdef HAVE_BYTESWAP_H -#define DBUS_UINT64_SWAP_LE_BE_CONSTANT(val) bswap_64(val) -#else /* HAVE_BYTESWAP_H */ - -#define DBUS_UINT64_SWAP_LE_BE_CONSTANT(val) ((dbus_uint64_t) ( \ - (((dbus_uint64_t) (val) & \ - (dbus_uint64_t) DBUS_UINT64_CONSTANT (0x00000000000000ff)) << 56) | \ - (((dbus_uint64_t) (val) & \ - (dbus_uint64_t) DBUS_UINT64_CONSTANT (0x000000000000ff00)) << 40) | \ - (((dbus_uint64_t) (val) & \ - (dbus_uint64_t) DBUS_UINT64_CONSTANT (0x0000000000ff0000)) << 24) | \ - (((dbus_uint64_t) (val) & \ - (dbus_uint64_t) DBUS_UINT64_CONSTANT (0x00000000ff000000)) << 8) | \ - (((dbus_uint64_t) (val) & \ - (dbus_uint64_t) DBUS_UINT64_CONSTANT (0x000000ff00000000)) >> 8) | \ - (((dbus_uint64_t) (val) & \ - (dbus_uint64_t) DBUS_UINT64_CONSTANT (0x0000ff0000000000)) >> 24) | \ - (((dbus_uint64_t) (val) & \ - (dbus_uint64_t) DBUS_UINT64_CONSTANT (0x00ff000000000000)) >> 40) | \ - (((dbus_uint64_t) (val) & \ - (dbus_uint64_t) DBUS_UINT64_CONSTANT (0xff00000000000000)) >> 56))) -#endif /* DBUS_HAVE_INT64 */ - -#endif /* HAVE_BYTESWAP_H */ - -#define DBUS_UINT16_SWAP_LE_BE(val) (DBUS_UINT16_SWAP_LE_BE_CONSTANT (val)) -#define DBUS_INT16_SWAP_LE_BE(val) ((dbus_int16_t)DBUS_UINT16_SWAP_LE_BE_CONSTANT (val)) - -#define DBUS_UINT32_SWAP_LE_BE(val) (DBUS_UINT32_SWAP_LE_BE_CONSTANT (val)) -#define DBUS_INT32_SWAP_LE_BE(val) ((dbus_int32_t)DBUS_UINT32_SWAP_LE_BE_CONSTANT (val)) - -#ifdef DBUS_HAVE_INT64 -# define DBUS_UINT64_SWAP_LE_BE(val) (DBUS_UINT64_SWAP_LE_BE_CONSTANT (val)) -# define DBUS_INT64_SWAP_LE_BE(val) ((dbus_int64_t)DBUS_UINT64_SWAP_LE_BE_CONSTANT (val)) -#endif /* DBUS_HAVE_INT64 */ - -#ifdef WORDS_BIGENDIAN - -# define DBUS_INT16_TO_BE(val) ((dbus_int16_t) (val)) -# define DBUS_UINT16_TO_BE(val) ((dbus_uint16_t) (val)) -# define DBUS_INT16_TO_LE(val) (DBUS_INT16_SWAP_LE_BE (val)) -# define DBUS_UINT16_TO_LE(val) (DBUS_UINT16_SWAP_LE_BE (val)) -# define DBUS_INT32_TO_BE(val) ((dbus_int32_t) (val)) -# define DBUS_UINT32_TO_BE(val) ((dbus_uint32_t) (val)) -# define DBUS_INT32_TO_LE(val) (DBUS_INT32_SWAP_LE_BE (val)) -# define DBUS_UINT32_TO_LE(val) (DBUS_UINT32_SWAP_LE_BE (val)) -# ifdef DBUS_HAVE_INT64 -# define DBUS_INT64_TO_BE(val) ((dbus_int64_t) (val)) -# define DBUS_UINT64_TO_BE(val) ((dbus_uint64_t) (val)) -# define DBUS_INT64_TO_LE(val) (DBUS_INT64_SWAP_LE_BE (val)) -# define DBUS_UINT64_TO_LE(val) (DBUS_UINT64_SWAP_LE_BE (val)) -# endif /* DBUS_HAVE_INT64 */ - -#else /* WORDS_BIGENDIAN */ - -# define DBUS_INT16_TO_LE(val) ((dbus_int16_t) (val)) -# define DBUS_UINT16_TO_LE(val) ((dbus_uint16_t) (val)) -# define DBUS_INT16_TO_BE(val) ((dbus_int16_t) DBUS_UINT16_SWAP_LE_BE (val)) -# define DBUS_UINT16_TO_BE(val) (DBUS_UINT16_SWAP_LE_BE (val)) -# define DBUS_INT32_TO_LE(val) ((dbus_int32_t) (val)) -# define DBUS_UINT32_TO_LE(val) ((dbus_uint32_t) (val)) -# define DBUS_INT32_TO_BE(val) ((dbus_int32_t) DBUS_UINT32_SWAP_LE_BE (val)) -# define DBUS_UINT32_TO_BE(val) (DBUS_UINT32_SWAP_LE_BE (val)) -# ifdef DBUS_HAVE_INT64 -# define DBUS_INT64_TO_LE(val) ((dbus_int64_t) (val)) -# define DBUS_UINT64_TO_LE(val) ((dbus_uint64_t) (val)) -# define DBUS_INT64_TO_BE(val) ((dbus_int64_t) DBUS_UINT64_SWAP_LE_BE (val)) -# define DBUS_UINT64_TO_BE(val) (DBUS_UINT64_SWAP_LE_BE (val)) -# endif /* DBUS_HAVE_INT64 */ -#endif - -/* The transformation is symmetric, so the FROM just maps to the TO. */ -#define DBUS_INT16_FROM_LE(val) (DBUS_INT16_TO_LE (val)) -#define DBUS_UINT16_FROM_LE(val) (DBUS_UINT16_TO_LE (val)) -#define DBUS_INT16_FROM_BE(val) (DBUS_INT16_TO_BE (val)) -#define DBUS_UINT16_FROM_BE(val) (DBUS_UINT16_TO_BE (val)) -#define DBUS_INT32_FROM_LE(val) (DBUS_INT32_TO_LE (val)) -#define DBUS_UINT32_FROM_LE(val) (DBUS_UINT32_TO_LE (val)) -#define DBUS_INT32_FROM_BE(val) (DBUS_INT32_TO_BE (val)) -#define DBUS_UINT32_FROM_BE(val) (DBUS_UINT32_TO_BE (val)) -#ifdef DBUS_HAVE_INT64 -# define DBUS_INT64_FROM_LE(val) (DBUS_INT64_TO_LE (val)) -# define DBUS_UINT64_FROM_LE(val) (DBUS_UINT64_TO_LE (val)) -# define DBUS_INT64_FROM_BE(val) (DBUS_INT64_TO_BE (val)) -# define DBUS_UINT64_FROM_BE(val) (DBUS_UINT64_TO_BE (val)) -#endif /* DBUS_HAVE_INT64 */ - -#ifndef DBUS_HAVE_INT64 -/** - * An 8-byte struct you could use to access int64 without having - * int64 support - */ -typedef struct -{ - dbus_uint32_t first32; /**< first 32 bits in the 8 bytes (beware endian issues) */ - dbus_uint32_t second32; /**< second 32 bits in the 8 bytes (beware endian issues) */ -} DBus8ByteStruct; -#endif /* DBUS_HAVE_INT64 */ - -/** - * A simple 8-byte value union that lets you access 8 bytes as if they - * were various types; useful when dealing with basic types via - * void pointers and varargs. - */ -typedef union -{ - dbus_int16_t i16; /**< as int16 */ - dbus_uint16_t u16; /**< as int16 */ - dbus_int32_t i32; /**< as int32 */ - dbus_uint32_t u32; /**< as int32 */ -#ifdef DBUS_HAVE_INT64 - dbus_int64_t i64; /**< as int64 */ - dbus_uint64_t u64; /**< as int64 */ -#else - DBus8ByteStruct u64; /**< as 8-byte-struct */ -#endif - double dbl; /**< as double */ - unsigned char byt; /**< as byte */ - char *str; /**< as char* */ -} DBusBasicValue; - -#ifdef DBUS_DISABLE_ASSERT -#define _dbus_unpack_uint16(byte_order, data) \ - (((byte_order) == DBUS_LITTLE_ENDIAN) ? \ - DBUS_UINT16_FROM_LE (*(dbus_uint16_t*)(data)) : \ - DBUS_UINT16_FROM_BE (*(dbus_uint16_t*)(data))) - -#define _dbus_unpack_uint32(byte_order, data) \ - (((byte_order) == DBUS_LITTLE_ENDIAN) ? \ - DBUS_UINT32_FROM_LE (*(dbus_uint32_t*)(data)) : \ - DBUS_UINT32_FROM_BE (*(dbus_uint32_t*)(data))) -#endif - -#ifndef _dbus_unpack_uint16 -dbus_uint16_t _dbus_unpack_uint16 (int byte_order, - const unsigned char *data); -#endif - -void _dbus_pack_uint32 (dbus_uint32_t value, - int byte_order, - unsigned char *data); -#ifndef _dbus_unpack_uint32 -dbus_uint32_t _dbus_unpack_uint32 (int byte_order, - const unsigned char *data); -#endif - -dbus_bool_t _dbus_marshal_set_basic (DBusString *str, - int pos, - int type, - const void *value, - int byte_order, - int *old_end_pos, - int *new_end_pos); -dbus_bool_t _dbus_marshal_write_basic (DBusString *str, - int insert_at, - int type, - const void *value, - int byte_order, - int *pos_after); -dbus_bool_t _dbus_marshal_write_fixed_multi (DBusString *str, - int insert_at, - int element_type, - const void *value, - int n_elements, - int byte_order, - int *pos_after); -void _dbus_marshal_read_basic (const DBusString *str, - int pos, - int type, - void *value, - int byte_order, - int *new_pos); -void _dbus_marshal_read_fixed_multi (const DBusString *str, - int pos, - int element_type, - void *value, - int n_elements, - int byte_order, - int *new_pos); -void _dbus_marshal_skip_basic (const DBusString *str, - int type, - int byte_order, - int *pos); -void _dbus_marshal_skip_array (const DBusString *str, - int element_type, - int byte_order, - int *pos); -void _dbus_marshal_set_uint32 (DBusString *str, - int pos, - dbus_uint32_t value, - int byte_order); -dbus_uint32_t _dbus_marshal_read_uint32 (const DBusString *str, - int pos, - int byte_order, - int *new_pos); -dbus_bool_t _dbus_type_is_valid (int typecode); -int _dbus_type_get_alignment (int typecode); -dbus_bool_t _dbus_type_is_fixed (int typecode); -int _dbus_type_get_alignment (int typecode); -const char* _dbus_type_to_string (int typecode); - -int _dbus_first_type_in_signature (const DBusString *str, - int pos); - -int _dbus_first_type_in_signature_c_str (const char *str, - int pos); - -void _dbus_swap_array (unsigned char *data, - int n_elements, - int alignment); - -#endif /* DBUS_MARSHAL_BASIC_H */ diff --git a/include/dbus-1/dbus/dbus-marshal-byteswap.h b/include/dbus-1/dbus/dbus-marshal-byteswap.h deleted file mode 100644 index be2dd758..00000000 --- a/include/dbus-1/dbus/dbus-marshal-byteswap.h +++ /dev/null @@ -1,37 +0,0 @@ -/* -*- mode: C; c-file-style: "gnu"; indent-tabs-mode: nil; -*- */ -/* dbus-marshal-byteswap.h Swap a block of marshaled data - * - * Copyright (C) 2005 Red Hat, Inc. - * - * Licensed under the Academic Free License version 2.1 - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2 of the License, or - * (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with this program; if not, write to the Free Software - * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA - * - */ - -#ifndef DBUS_MARSHAL_BYTESWAP_H -#define DBUS_MARSHAL_BYTESWAP_H - -#include <dbus/dbus-protocol.h> -#include <dbus/dbus-marshal-recursive.h> - -void _dbus_marshal_byteswap (const DBusString *signature, - int signature_start, - int old_byte_order, - int new_byte_order, - DBusString *value_str, - int value_pos); - -#endif /* DBUS_MARSHAL_BYTESWAP_H */ diff --git a/include/dbus-1/dbus/dbus-marshal-header.h b/include/dbus-1/dbus/dbus-marshal-header.h deleted file mode 100644 index fd16c5f0..00000000 --- a/include/dbus-1/dbus/dbus-marshal-header.h +++ /dev/null @@ -1,128 +0,0 @@ -/* -*- mode: C; c-file-style: "gnu"; indent-tabs-mode: nil; -*- */ -/* dbus-marshal-header.h Managing marshaling/demarshaling of message headers - * - * Copyright (C) 2005 Red Hat, Inc. - * - * Licensed under the Academic Free License version 2.1 - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2 of the License, or - * (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with this program; if not, write to the Free Software - * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA - * - */ - -#ifndef DBUS_MARSHAL_HEADER_H -#define DBUS_MARSHAL_HEADER_H - -#include <dbus/dbus-marshal-basic.h> -#include <dbus/dbus-marshal-validate.h> - -typedef struct DBusHeader DBusHeader; -typedef struct DBusHeaderField DBusHeaderField; - -#define _DBUS_HEADER_FIELD_VALUE_UNKNOWN -1 -#define _DBUS_HEADER_FIELD_VALUE_NONEXISTENT -2 - -/** - * Cached information about a header field in the message - */ -struct DBusHeaderField -{ - int value_pos; /**< Position of field value, or -1/-2 */ -}; - -/** - * Message header data and some cached details of it. - */ -struct DBusHeader -{ - DBusString data; /**< Header network data, stored - * separately from body so we can - * independently realloc it. - */ - - DBusHeaderField fields[DBUS_HEADER_FIELD_LAST + 1]; /**< Track the location - * of each field in header - */ - - dbus_uint32_t padding : 3; /**< bytes of alignment in header */ - dbus_uint32_t byte_order : 8; /**< byte order of header */ -}; - -dbus_bool_t _dbus_header_init (DBusHeader *header, - int byte_order); -void _dbus_header_free (DBusHeader *header); -void _dbus_header_reinit (DBusHeader *header, - int byte_order); -dbus_bool_t _dbus_header_create (DBusHeader *header, - int type, - const char *destination, - const char *path, - const char *interface, - const char *member, - const char *error_name); -dbus_bool_t _dbus_header_copy (const DBusHeader *header, - DBusHeader *dest); -int _dbus_header_get_message_type (DBusHeader *header); -void _dbus_header_set_serial (DBusHeader *header, - dbus_uint32_t serial); -dbus_uint32_t _dbus_header_get_serial (DBusHeader *header); -void _dbus_header_update_lengths (DBusHeader *header, - int body_len); -dbus_bool_t _dbus_header_set_field_basic (DBusHeader *header, - int field, - int type, - const void *value); -dbus_bool_t _dbus_header_get_field_basic (DBusHeader *header, - int field, - int type, - void *value); -dbus_bool_t _dbus_header_get_field_raw (DBusHeader *header, - int field, - const DBusString **str, - int *pos); -dbus_bool_t _dbus_header_delete_field (DBusHeader *header, - int field); -void _dbus_header_toggle_flag (DBusHeader *header, - dbus_uint32_t flag, - dbus_bool_t value); -dbus_bool_t _dbus_header_get_flag (DBusHeader *header, - dbus_uint32_t flag); -dbus_bool_t _dbus_header_ensure_signature (DBusHeader *header, - DBusString **type_str, - int *type_pos); -dbus_bool_t _dbus_header_have_message_untrusted (int max_message_length, - DBusValidity *validity, - int *byte_order, - int *fields_array_len, - int *header_len, - int *body_len, - const DBusString *str, - int start, - int len); -dbus_bool_t _dbus_header_load (DBusHeader *header, - DBusValidationMode mode, - DBusValidity *validity, - int byte_order, - int fields_array_len, - int header_len, - int body_len, - const DBusString *str, - int start, - int len); -void _dbus_header_byteswap (DBusHeader *header, - int new_order); - - - -#endif /* DBUS_MARSHAL_HEADER_H */ diff --git a/include/dbus-1/dbus/dbus-marshal-recursive.h b/include/dbus-1/dbus/dbus-marshal-recursive.h deleted file mode 100644 index 97e5466b..00000000 --- a/include/dbus-1/dbus/dbus-marshal-recursive.h +++ /dev/null @@ -1,191 +0,0 @@ -/* -*- mode: C; c-file-style: "gnu"; indent-tabs-mode: nil; -*- */ -/* dbus-marshal-recursive.h Marshalling routines for recursive types - * - * Copyright (C) 2004, 2005 Red Hat, Inc. - * - * Licensed under the Academic Free License version 2.1 - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2 of the License, or - * (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with this program; if not, write to the Free Software - * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA - * - */ - -#ifndef DBUS_MARSHAL_RECURSIVE_H -#define DBUS_MARSHAL_RECURSIVE_H - -#include <dbus/dbus-protocol.h> -#include <dbus/dbus-list.h> - -typedef struct DBusTypeReader DBusTypeReader; -typedef struct DBusTypeWriter DBusTypeWriter; -typedef struct DBusTypeReaderClass DBusTypeReaderClass; -typedef struct DBusArrayLenFixup DBusArrayLenFixup; - -/** - * The type reader is an iterator for reading values from a block of - * values. - */ -struct DBusTypeReader -{ - dbus_uint32_t byte_order : 8; /**< byte order of the block */ - - dbus_uint32_t finished : 1; /**< marks we're at end iterator for cases - * where we don't have another way to tell - */ - dbus_uint32_t array_len_offset : 3; /**< bytes back from start_pos that len ends */ - const DBusString *type_str; /**< string containing signature of block */ - int type_pos; /**< current position in signature */ - const DBusString *value_str; /**< string containing values of block */ - int value_pos; /**< current position in values */ - - const DBusTypeReaderClass *klass; /**< the vtable for the reader */ - union - { - struct { - int start_pos; /**< for array readers, the start of the array values */ - } array; - } u; /**< class-specific data */ -}; - -/** - * The type writer is an iterator for writing to a block of values. - */ -struct DBusTypeWriter -{ - dbus_uint32_t byte_order : 8; /**< byte order to write values with */ - - dbus_uint32_t container_type : 8; /**< what are we inside? (e.g. struct, variant, array) */ - - dbus_uint32_t type_pos_is_expectation : 1; /**< type_pos can be either an insertion point for or an expected next type */ - - dbus_uint32_t enabled : 1; /**< whether to write values */ - - DBusString *type_str; /**< where to write typecodes (or read type expectations) */ - int type_pos; /**< current pos in type_str */ - DBusString *value_str; /**< where to write values */ - int value_pos; /**< next position to write */ - - union - { - struct { - int start_pos; /**< position of first element in the array */ - int len_pos; /**< position of length of the array */ - int element_type_pos; /**< position of array element type in type_str */ - } array; - } u; /**< class-specific data */ -}; - -/** - * When modifying an existing block of values, array lengths may need - * to be adjusted; those adjustments are described by this struct. - */ -struct DBusArrayLenFixup -{ - int len_pos_in_reader; /**< where the length was in the original block */ - int new_len; /**< the new value of the length in the written-out block */ -}; - -void _dbus_type_reader_init (DBusTypeReader *reader, - int byte_order, - const DBusString *type_str, - int type_pos, - const DBusString *value_str, - int value_pos); -void _dbus_type_reader_init_types_only (DBusTypeReader *reader, - const DBusString *type_str, - int type_pos); -int _dbus_type_reader_get_current_type (const DBusTypeReader *reader); -int _dbus_type_reader_get_element_type (const DBusTypeReader *reader); -int _dbus_type_reader_get_value_pos (const DBusTypeReader *reader); -void _dbus_type_reader_read_basic (const DBusTypeReader *reader, - void *value); -int _dbus_type_reader_get_array_length (const DBusTypeReader *reader); -void _dbus_type_reader_read_fixed_multi (const DBusTypeReader *reader, - void *value, - int *n_elements); -void _dbus_type_reader_read_raw (const DBusTypeReader *reader, - const unsigned char **value_location); -void _dbus_type_reader_recurse (DBusTypeReader *reader, - DBusTypeReader *subreader); -dbus_bool_t _dbus_type_reader_next (DBusTypeReader *reader); -dbus_bool_t _dbus_type_reader_has_next (const DBusTypeReader *reader); -void _dbus_type_reader_get_signature (const DBusTypeReader *reader, - const DBusString **str_p, - int *start_p, - int *len_p); -dbus_bool_t _dbus_type_reader_set_basic (DBusTypeReader *reader, - const void *value, - const DBusTypeReader *realign_root); -dbus_bool_t _dbus_type_reader_delete (DBusTypeReader *reader, - const DBusTypeReader *realign_root); -dbus_bool_t _dbus_type_reader_greater_than (const DBusTypeReader *lhs, - const DBusTypeReader *rhs); - -dbus_bool_t _dbus_type_reader_equal_values (const DBusTypeReader *lhs, - const DBusTypeReader *rhs); - -void _dbus_type_signature_next (const char *signature, - int *type_pos); - -void _dbus_type_writer_init (DBusTypeWriter *writer, - int byte_order, - DBusString *type_str, - int type_pos, - DBusString *value_str, - int value_pos); -void _dbus_type_writer_init_types_delayed (DBusTypeWriter *writer, - int byte_order, - DBusString *value_str, - int value_pos); -void _dbus_type_writer_add_types (DBusTypeWriter *writer, - DBusString *type_str, - int type_pos); -void _dbus_type_writer_remove_types (DBusTypeWriter *writer); -void _dbus_type_writer_init_values_only (DBusTypeWriter *writer, - int byte_order, - const DBusString *type_str, - int type_pos, - DBusString *value_str, - int value_pos); -dbus_bool_t _dbus_type_writer_write_basic (DBusTypeWriter *writer, - int type, - const void *value); -dbus_bool_t _dbus_type_writer_write_fixed_multi (DBusTypeWriter *writer, - int element_type, - const void *value, - int n_elements); -dbus_bool_t _dbus_type_writer_recurse (DBusTypeWriter *writer, - int container_type, - const DBusString *contained_type, - int contained_type_start, - DBusTypeWriter *sub); -dbus_bool_t _dbus_type_writer_unrecurse (DBusTypeWriter *writer, - DBusTypeWriter *sub); -dbus_bool_t _dbus_type_writer_append_array (DBusTypeWriter *writer, - const DBusString *contained_type, - int contained_type_start, - DBusTypeWriter *sub); -dbus_bool_t _dbus_type_writer_write_reader (DBusTypeWriter *writer, - DBusTypeReader *reader); -dbus_bool_t _dbus_type_writer_write_reader_partial (DBusTypeWriter *writer, - DBusTypeReader *reader, - const DBusTypeReader *start_after, - int start_after_new_pos, - int start_after_new_len, - DBusList **fixups); -void _dbus_type_writer_set_enabled (DBusTypeWriter *writer, - dbus_bool_t enabled); - - -#endif /* DBUS_MARSHAL_RECURSIVE_H */ diff --git a/include/dbus-1/dbus/dbus-marshal-validate.h b/include/dbus-1/dbus/dbus-marshal-validate.h deleted file mode 100644 index 5817de32..00000000 --- a/include/dbus-1/dbus/dbus-marshal-validate.h +++ /dev/null @@ -1,198 +0,0 @@ -/* -*- mode: C; c-file-style: "gnu"; indent-tabs-mode: nil; -*- */ -/* dbus-marshal-validate.h Validation routines for marshaled data - * - * Copyright (C) 2005 Red Hat, Inc. - * - * Licensed under the Academic Free License version 2.1 - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2 of the License, or - * (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with this program; if not, write to the Free Software - * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA - * - */ - -#ifndef DBUS_MARSHAL_VALIDATE_H -#define DBUS_MARSHAL_VALIDATE_H - -/** - * @addtogroup DBusMarshal - * - * @{ - */ - -/** - * This is used rather than a bool for high visibility - */ -typedef enum -{ - DBUS_VALIDATION_MODE_WE_TRUST_THIS_DATA_ABSOLUTELY, - DBUS_VALIDATION_MODE_DATA_IS_UNTRUSTED -} DBusValidationMode; - -/** - * This is primarily used in unit testing, so we can verify that each - * invalid message is invalid for the expected reasons. Thus we really - * want a distinct enum value for every codepath leaving the validator - * functions. Enum values are specified manually for ease of debugging - * (so you can see the enum value given a printf) - */ -typedef enum -{ -#define _DBUS_NEGATIVE_VALIDITY_COUNT 4 - DBUS_VALIDITY_UNKNOWN_OOM_ERROR = -4, /**< can't determine validity due to OOM */ - DBUS_INVALID_FOR_UNKNOWN_REASON = -3, - DBUS_VALID_BUT_INCOMPLETE = -2, - DBUS_VALIDITY_UNKNOWN = -1, - DBUS_VALID = 0, /**< the data is valid */ - DBUS_INVALID_UNKNOWN_TYPECODE = 1, - DBUS_INVALID_MISSING_ARRAY_ELEMENT_TYPE = 2, - DBUS_INVALID_SIGNATURE_TOO_LONG = 3, /* this one is impossible right now since - * you can't put a too-long value in a byte - */ - DBUS_INVALID_EXCEEDED_MAXIMUM_ARRAY_RECURSION = 4, - DBUS_INVALID_EXCEEDED_MAXIMUM_STRUCT_RECURSION = 5, - DBUS_INVALID_STRUCT_ENDED_BUT_NOT_STARTED = 6, - DBUS_INVALID_STRUCT_STARTED_BUT_NOT_ENDED = 7, - DBUS_INVALID_STRUCT_HAS_NO_FIELDS = 8, - DBUS_INVALID_ALIGNMENT_PADDING_NOT_NUL = 9, - DBUS_INVALID_BOOLEAN_NOT_ZERO_OR_ONE = 10, - DBUS_INVALID_NOT_ENOUGH_DATA = 11, - DBUS_INVALID_TOO_MUCH_DATA = 12, /**< trailing junk makes it invalid */ - DBUS_INVALID_BAD_BYTE_ORDER = 13, - DBUS_INVALID_BAD_PROTOCOL_VERSION = 14, - DBUS_INVALID_BAD_MESSAGE_TYPE = 15, - DBUS_INVALID_BAD_SERIAL = 16, - DBUS_INVALID_INSANE_FIELDS_ARRAY_LENGTH = 17, - DBUS_INVALID_INSANE_BODY_LENGTH = 18, - DBUS_INVALID_MESSAGE_TOO_LONG = 19, - DBUS_INVALID_HEADER_FIELD_CODE = 20, - DBUS_INVALID_HEADER_FIELD_HAS_WRONG_TYPE = 21, - DBUS_INVALID_USES_LOCAL_INTERFACE = 22, - DBUS_INVALID_USES_LOCAL_PATH = 23, - DBUS_INVALID_HEADER_FIELD_APPEARS_TWICE = 24, - DBUS_INVALID_BAD_DESTINATION = 25, - DBUS_INVALID_BAD_INTERFACE = 26, - DBUS_INVALID_BAD_MEMBER = 27, - DBUS_INVALID_BAD_ERROR_NAME = 28, - DBUS_INVALID_BAD_SENDER = 29, - DBUS_INVALID_MISSING_PATH = 30, - DBUS_INVALID_MISSING_INTERFACE = 31, - DBUS_INVALID_MISSING_MEMBER = 32, - DBUS_INVALID_MISSING_ERROR_NAME = 33, - DBUS_INVALID_MISSING_REPLY_SERIAL = 34, - DBUS_INVALID_LENGTH_OUT_OF_BOUNDS = 35, - DBUS_INVALID_ARRAY_LENGTH_EXCEEDS_MAXIMUM = 36, - DBUS_INVALID_BAD_PATH = 37, - DBUS_INVALID_SIGNATURE_LENGTH_OUT_OF_BOUNDS = 38, - DBUS_INVALID_BAD_UTF8_IN_STRING = 39, - DBUS_INVALID_ARRAY_LENGTH_INCORRECT = 40, - DBUS_INVALID_VARIANT_SIGNATURE_LENGTH_OUT_OF_BOUNDS = 41, - DBUS_INVALID_VARIANT_SIGNATURE_BAD = 42, - DBUS_INVALID_VARIANT_SIGNATURE_EMPTY = 43, - DBUS_INVALID_VARIANT_SIGNATURE_SPECIFIES_MULTIPLE_VALUES = 44, - DBUS_INVALID_VARIANT_SIGNATURE_MISSING_NUL = 45, - DBUS_INVALID_STRING_MISSING_NUL = 46, - DBUS_INVALID_SIGNATURE_MISSING_NUL = 47, - DBUS_INVALID_EXCEEDED_MAXIMUM_DICT_ENTRY_RECURSION = 48, - DBUS_INVALID_DICT_ENTRY_ENDED_BUT_NOT_STARTED = 49, - DBUS_INVALID_DICT_ENTRY_STARTED_BUT_NOT_ENDED = 50, - DBUS_INVALID_DICT_ENTRY_HAS_NO_FIELDS = 51, - DBUS_INVALID_DICT_ENTRY_HAS_ONLY_ONE_FIELD = 52, - DBUS_INVALID_DICT_ENTRY_HAS_TOO_MANY_FIELDS = 53, - DBUS_INVALID_DICT_ENTRY_NOT_INSIDE_ARRAY = 54, - DBUS_INVALID_DICT_KEY_MUST_BE_BASIC_TYPE = 55, - DBUS_INVALID_MISSING_UNIX_FDS = 56, - DBUS_VALIDITY_LAST -} DBusValidity; - -DBusValidity _dbus_validate_signature_with_reason (const DBusString *type_str, - int type_pos, - int len); -DBusValidity _dbus_validate_body_with_reason (const DBusString *expected_signature, - int expected_signature_start, - int byte_order, - int *bytes_remaining, - const DBusString *value_str, - int value_pos, - int len); - -const char *_dbus_validity_to_error_message (DBusValidity validity); - -dbus_bool_t _dbus_validate_path (const DBusString *str, - int start, - int len); -dbus_bool_t _dbus_validate_interface (const DBusString *str, - int start, - int len); -dbus_bool_t _dbus_validate_member (const DBusString *str, - int start, - int len); -dbus_bool_t _dbus_validate_error_name (const DBusString *str, - int start, - int len); -dbus_bool_t _dbus_validate_bus_name (const DBusString *str, - int start, - int len); -dbus_bool_t _dbus_validate_signature (const DBusString *str, - int start, - int len); - -#ifdef DBUS_DISABLE_CHECKS - -/* Be sure they don't exist, since we don't want to use them outside of checks - * and so we want the compile failure. - */ -#define DECLARE_DBUS_NAME_CHECK(what) -#define DEFINE_DBUS_NAME_CHECK(what) - -#else /* !DBUS_DISABLE_CHECKS */ - -/** A name check is used in _dbus_return_if_fail(), it's not suitable - * for validating untrusted data. use _dbus_validate_whatever for that. - */ -#define DECLARE_DBUS_NAME_CHECK(what) \ -dbus_bool_t _dbus_check_is_valid_##what (const char *name) - -/** Define a name check to be used in _dbus_return_if_fail() statements. - */ -#define DEFINE_DBUS_NAME_CHECK(what) \ -dbus_bool_t \ -_dbus_check_is_valid_##what (const char *name) \ -{ \ - DBusString str; \ - \ - if (name == NULL) \ - return FALSE; \ - \ - _dbus_string_init_const (&str, name); \ - return _dbus_validate_##what (&str, 0, \ - _dbus_string_get_length (&str)); \ -} -#endif /* !DBUS_DISABLE_CHECKS */ - -/** defines _dbus_check_is_valid_path() */ -DECLARE_DBUS_NAME_CHECK(path); -/** defines _dbus_check_is_valid_interface() */ -DECLARE_DBUS_NAME_CHECK(interface); -/** defines _dbus_check_is_valid_member() */ -DECLARE_DBUS_NAME_CHECK(member); -/** defines _dbus_check_is_valid_error_name() */ -DECLARE_DBUS_NAME_CHECK(error_name); -/** defines _dbus_check_is_valid_bus_name() */ -DECLARE_DBUS_NAME_CHECK(bus_name); -/** defines _dbus_check_is_valid_signature() */ -DECLARE_DBUS_NAME_CHECK(signature); - -/** @} */ - -#endif /* DBUS_MARSHAL_VALIDATE_H */ diff --git a/include/dbus-1/dbus/dbus-memory.h b/include/dbus-1/dbus/dbus-memory.h deleted file mode 100644 index ea28423c..00000000 --- a/include/dbus-1/dbus/dbus-memory.h +++ /dev/null @@ -1,65 +0,0 @@ -/* -*- mode: C; c-file-style: "gnu"; indent-tabs-mode: nil; -*- */ -/* dbus-memory.h D-Bus memory handling - * - * Copyright (C) 2002 Red Hat Inc. - * - * Licensed under the Academic Free License version 2.1 - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2 of the License, or - * (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with this program; if not, write to the Free Software - * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA - * - */ -#if !defined (DBUS_INSIDE_DBUS_H) && !defined (DBUS_COMPILATION) -#error "Only <dbus/dbus.h> can be included directly, this file may disappear or change contents." -#endif - -#ifndef DBUS_MEMORY_H -#define DBUS_MEMORY_H - -#include <dbus/dbus-macros.h> -#include <stddef.h> - -DBUS_BEGIN_DECLS - -/** - * @addtogroup DBusMemory - * @{ - */ - -DBUS_EXPORT -void* dbus_malloc (size_t bytes); -DBUS_EXPORT -void* dbus_malloc0 (size_t bytes); -DBUS_EXPORT -void* dbus_realloc (void *memory, - size_t bytes); -DBUS_EXPORT -void dbus_free (void *memory); - -#define dbus_new(type, count) ((type*)dbus_malloc (sizeof (type) * (count))) -#define dbus_new0(type, count) ((type*)dbus_malloc0 (sizeof (type) * (count))) - -DBUS_EXPORT -void dbus_free_string_array (char **str_array); - -typedef void (* DBusFreeFunction) (void *memory); - -DBUS_EXPORT -void dbus_shutdown (void); - -/** @} */ - -DBUS_END_DECLS - -#endif /* DBUS_MEMORY_H */ diff --git a/include/dbus-1/dbus/dbus-mempool.h b/include/dbus-1/dbus/dbus-mempool.h deleted file mode 100644 index afe52472..00000000 --- a/include/dbus-1/dbus/dbus-mempool.h +++ /dev/null @@ -1,44 +0,0 @@ -/* -*- mode: C; c-file-style: "gnu"; indent-tabs-mode: nil; -*- */ -/* dbus-mempool.h Memory pools - * - * Copyright (C) 2002 Red Hat, Inc. - * - * Licensed under the Academic Free License version 2.1 - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2 of the License, or - * (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with this program; if not, write to the Free Software - * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA - * - */ - -#ifndef DBUS_MEMPOOL_H -#define DBUS_MEMPOOL_H - -#include <dbus/dbus-internals.h> -#include <dbus/dbus-memory.h> -#include <dbus/dbus-types.h> - -DBUS_BEGIN_DECLS - -typedef struct DBusMemPool DBusMemPool; - -DBusMemPool* _dbus_mem_pool_new (int element_size, - dbus_bool_t zero_elements); -void _dbus_mem_pool_free (DBusMemPool *pool); -void* _dbus_mem_pool_alloc (DBusMemPool *pool); -dbus_bool_t _dbus_mem_pool_dealloc (DBusMemPool *pool, - void *element); - -DBUS_END_DECLS - -#endif /* DBUS_MEMPOOL_H */ diff --git a/include/dbus-1/dbus/dbus-message-factory.h b/include/dbus-1/dbus/dbus-message-factory.h deleted file mode 100644 index b0747504..00000000 --- a/include/dbus-1/dbus/dbus-message-factory.h +++ /dev/null @@ -1,61 +0,0 @@ -/* -*- mode: C; c-file-style: "gnu"; indent-tabs-mode: nil; -*- */ -/* dbus-message-factory.h Generator of valid and invalid message data for test suite - * - * Copyright (C) 2005 Red Hat Inc. - * - * Licensed under the Academic Free License version 2.1 - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2 of the License, or - * (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with this program; if not, write to the Free Software - * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA - * - */ - -#ifndef DBUS_MESSAGE_FACTORY_H -#define DBUS_MESSAGE_FACTORY_H - -#ifdef DBUS_BUILD_TESTS - -#include <dbus/dbus-string.h> -#include <dbus/dbus-marshal-basic.h> -#include <dbus/dbus-marshal-validate.h> - -DBUS_BEGIN_DECLS - -typedef struct -{ - DBusValidity expected_validity; - - DBusString data; - -} DBusMessageData; - -#define _DBUS_MESSAGE_DATA_MAX_NESTING 10 -typedef struct -{ - int sequence_nos[_DBUS_MESSAGE_DATA_MAX_NESTING]; - int depth; - int count; -} DBusMessageDataIter; - -void _dbus_message_data_free (DBusMessageData *data); -void _dbus_message_data_iter_init (DBusMessageDataIter *iter); -dbus_bool_t _dbus_message_data_iter_get_and_next (DBusMessageDataIter *iter, - DBusMessageData *data); - - -DBUS_END_DECLS - -#endif /* DBUS_BUILD_TESTS */ - -#endif /* DBUS_MESSAGE_FACTORY_H */ diff --git a/include/dbus-1/dbus/dbus-message-internal.h b/include/dbus-1/dbus/dbus-message-internal.h deleted file mode 100644 index 870934b9..00000000 --- a/include/dbus-1/dbus/dbus-message-internal.h +++ /dev/null @@ -1,89 +0,0 @@ -/* -*- mode: C; c-file-style: "gnu"; indent-tabs-mode: nil; -*- */ -/* dbus-message-internal.h DBusMessage object internal interfaces - * - * Copyright (C) 2002 Red Hat Inc. - * - * Licensed under the Academic Free License version 2.1 - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2 of the License, or - * (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with this program; if not, write to the Free Software - * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA - * - */ -#ifndef DBUS_MESSAGE_INTERNAL_H -#define DBUS_MESSAGE_INTERNAL_H - -#include <dbus/dbus-marshal-validate.h> -#include <dbus/dbus-message.h> -#include <dbus/dbus-resources.h> -#include <dbus/dbus-list.h> - -DBUS_BEGIN_DECLS - -typedef struct DBusMessageLoader DBusMessageLoader; - -void _dbus_message_get_network_data (DBusMessage *message, - const DBusString **header, - const DBusString **body); -void _dbus_message_get_unix_fds (DBusMessage *message, - const int **fds, - unsigned *n_fds); - -void _dbus_message_lock (DBusMessage *message); -void _dbus_message_unlock (DBusMessage *message); -dbus_bool_t _dbus_message_add_counter (DBusMessage *message, - DBusCounter *counter); -void _dbus_message_add_counter_link (DBusMessage *message, - DBusList *link); -void _dbus_message_remove_counter (DBusMessage *message, - DBusCounter *counter, - DBusList **link_return); - -DBusMessageLoader* _dbus_message_loader_new (void); -DBusMessageLoader* _dbus_message_loader_ref (DBusMessageLoader *loader); -void _dbus_message_loader_unref (DBusMessageLoader *loader); - -void _dbus_message_loader_get_buffer (DBusMessageLoader *loader, - DBusString **buffer); -void _dbus_message_loader_return_buffer (DBusMessageLoader *loader, - DBusString *buffer, - int bytes_read); - -dbus_bool_t _dbus_message_loader_get_unix_fds (DBusMessageLoader *loader, - int **fds, - unsigned *max_n_fds); -void _dbus_message_loader_return_unix_fds (DBusMessageLoader *loader, - int *fds, - unsigned n_fds); - -dbus_bool_t _dbus_message_loader_queue_messages (DBusMessageLoader *loader); -DBusMessage* _dbus_message_loader_peek_message (DBusMessageLoader *loader); -DBusMessage* _dbus_message_loader_pop_message (DBusMessageLoader *loader); -DBusList* _dbus_message_loader_pop_message_link (DBusMessageLoader *loader); -void _dbus_message_loader_putback_message_link (DBusMessageLoader *loader, - DBusList *link); - -dbus_bool_t _dbus_message_loader_get_is_corrupted (DBusMessageLoader *loader); -DBusValidity _dbus_message_loader_get_corruption_reason (DBusMessageLoader *loader); - -void _dbus_message_loader_set_max_message_size (DBusMessageLoader *loader, - long size); -long _dbus_message_loader_get_max_message_size (DBusMessageLoader *loader); - -void _dbus_message_loader_set_max_message_unix_fds(DBusMessageLoader *loader, - long n); -long _dbus_message_loader_get_max_message_unix_fds(DBusMessageLoader *loader); - -DBUS_END_DECLS - -#endif /* DBUS_MESSAGE_INTERNAL_H */ diff --git a/include/dbus-1/dbus/dbus-message-private.h b/include/dbus-1/dbus/dbus-message-private.h deleted file mode 100644 index 57888fa5..00000000 --- a/include/dbus-1/dbus/dbus-message-private.h +++ /dev/null @@ -1,148 +0,0 @@ -/* -*- mode: C; c-file-style: "gnu"; indent-tabs-mode: nil; -*- */ -/* dbus-message-private.h header shared between dbus-message.c and dbus-message-util.c - * - * Copyright (C) 2005 Red Hat Inc. - * - * Licensed under the Academic Free License version 2.1 - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2 of the License, or - * (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with this program; if not, write to the Free Software - * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA - * - */ -#ifndef DBUS_MESSAGE_PRIVATE_H -#define DBUS_MESSAGE_PRIVATE_H - -#include <dbus/dbus-message.h> -#include <dbus/dbus-message-internal.h> -#include <dbus/dbus-string.h> -#include <dbus/dbus-dataslot.h> -#include <dbus/dbus-marshal-header.h> - -DBUS_BEGIN_DECLS - -/** - * @addtogroup DBusMessageInternals - * @{ - */ - -/** - * @typedef DBusMessageLoader - * - * The DBusMessageLoader object encapsulates the process of converting - * a byte stream into a series of DBusMessage. It buffers the incoming - * bytes as efficiently as possible, and generates a queue of - * messages. DBusMessageLoader is typically used as part of a - * DBusTransport implementation. The DBusTransport then hands off - * the loaded messages to a DBusConnection, making the messages - * visible to the application. - * - * @todo write tests for break-loader that a) randomly delete header - * fields and b) set string fields to zero-length and other funky - * values. - * - */ - -/** - * Implementation details of DBusMessageLoader. - * All members are private. - */ -struct DBusMessageLoader -{ - int refcount; /**< Reference count. */ - - DBusString data; /**< Buffered data */ - - DBusList *messages; /**< Complete messages. */ - - long max_message_size; /**< Maximum size of a message */ - long max_message_unix_fds; /**< Maximum unix fds in a message */ - - DBusValidity corruption_reason; /**< why we were corrupted */ - - unsigned int corrupted : 1; /**< We got broken data, and are no longer working */ - - unsigned int buffer_outstanding : 1; /**< Someone is using the buffer to read */ - -#ifdef HAVE_UNIX_FD_PASSING - unsigned int unix_fds_outstanding : 1; /**< Someone is using the unix fd array to read */ - - int *unix_fds; /**< File descriptors that have been read from the transport but not yet been handed to any message. Array will be allocated at first use. */ - unsigned n_unix_fds_allocated; /**< Number of file descriptors this array has space for */ - unsigned n_unix_fds; /**< Number of valid file descriptors in array */ -#endif -}; - - -/** How many bits are in the changed_stamp used to validate iterators */ -#define CHANGED_STAMP_BITS 21 - -/** - * @brief Internals of DBusMessage - * - * Object representing a message received from or to be sent to - * another application. This is an opaque object, all members - * are private. - */ -struct DBusMessage -{ - DBusAtomic refcount; /**< Reference count */ - - DBusHeader header; /**< Header network data and associated cache */ - - DBusString body; /**< Body network data. */ - - char byte_order; /**< Message byte order. */ - - unsigned int locked : 1; /**< Message being sent, no modifications allowed. */ - -#ifndef DBUS_DISABLE_CHECKS - unsigned int in_cache : 1; /**< Has been "freed" since it's in the cache (this is a debug feature) */ -#endif - - DBusList *counters; /**< 0-N DBusCounter used to track message size/unix fds. */ - long size_counter_delta; /**< Size we incremented the size counters by. */ - - dbus_uint32_t changed_stamp : CHANGED_STAMP_BITS; /**< Incremented when iterators are invalidated. */ - - DBusDataSlotList slot_list; /**< Data stored by allocated integer ID */ - -#ifndef DBUS_DISABLE_CHECKS - int generation; /**< _dbus_current_generation when message was created */ -#endif - -#ifdef HAVE_UNIX_FD_PASSING - int *unix_fds; - /**< Unix file descriptors associated with this message. These are - closed when the message is destroyed, hence make sure to dup() - them when adding or removing them here. */ - unsigned n_unix_fds; /**< Number of valid fds in the array */ - unsigned n_unix_fds_allocated; /**< Allocated size of the array */ - - long unix_fd_counter_delta; /**< Size we incremented the unix fd counter by */ -#endif -}; - -dbus_bool_t _dbus_message_iter_get_args_valist (DBusMessageIter *iter, - DBusError *error, - int first_arg_type, - va_list var_args); - - -void _dbus_check_fdleaks(void); - -/** @} */ - -DBUS_END_DECLS - -#endif /* DBUS_MESSAGE_H */ diff --git a/include/dbus-1/dbus/dbus-message.h b/include/dbus-1/dbus/dbus-message.h deleted file mode 100644 index 5500492d..00000000 --- a/include/dbus-1/dbus/dbus-message.h +++ /dev/null @@ -1,309 +0,0 @@ -/* -*- mode: C; c-file-style: "gnu"; indent-tabs-mode: nil; -*- */ -/* dbus-message.h DBusMessage object - * - * Copyright (C) 2002, 2003, 2005 Red Hat Inc. - * - * Licensed under the Academic Free License version 2.1 - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2 of the License, or - * (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with this program; if not, write to the Free Software - * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA - * - */ -#if !defined (DBUS_INSIDE_DBUS_H) && !defined (DBUS_COMPILATION) -#error "Only <dbus/dbus.h> can be included directly, this file may disappear or change contents." -#endif - -#ifndef DBUS_MESSAGE_H -#define DBUS_MESSAGE_H - -#include <dbus/dbus-macros.h> -#include <dbus/dbus-types.h> -#include <dbus/dbus-arch-deps.h> -#include <dbus/dbus-memory.h> -#include <dbus/dbus-errors.h> -#include <stdarg.h> - -DBUS_BEGIN_DECLS - -/** - * @addtogroup DBusMessage - * @{ - */ - -typedef struct DBusMessage DBusMessage; -/** Opaque type representing a message iterator. Can be copied by value, and contains no allocated memory so never needs to be freed and can be allocated on the stack. */ -typedef struct DBusMessageIter DBusMessageIter; - -/** - * DBusMessageIter struct; contains no public fields. - */ -struct DBusMessageIter -{ - void *dummy1; /**< Don't use this */ - void *dummy2; /**< Don't use this */ - dbus_uint32_t dummy3; /**< Don't use this */ - int dummy4; /**< Don't use this */ - int dummy5; /**< Don't use this */ - int dummy6; /**< Don't use this */ - int dummy7; /**< Don't use this */ - int dummy8; /**< Don't use this */ - int dummy9; /**< Don't use this */ - int dummy10; /**< Don't use this */ - int dummy11; /**< Don't use this */ - int pad1; /**< Don't use this */ - int pad2; /**< Don't use this */ - void *pad3; /**< Don't use this */ -}; - -DBUS_EXPORT -DBusMessage* dbus_message_new (int message_type); -DBUS_EXPORT -DBusMessage* dbus_message_new_method_call (const char *bus_name, - const char *path, - const char *interface, - const char *method); -DBUS_EXPORT -DBusMessage* dbus_message_new_method_return (DBusMessage *method_call); -DBUS_EXPORT -DBusMessage* dbus_message_new_signal (const char *path, - const char *interface, - const char *name); -DBUS_EXPORT -DBusMessage* dbus_message_new_error (DBusMessage *reply_to, - const char *error_name, - const char *error_message); -DBUS_EXPORT -DBusMessage* dbus_message_new_error_printf (DBusMessage *reply_to, - const char *error_name, - const char *error_format, - ...); - -DBUS_EXPORT -DBusMessage* dbus_message_copy (const DBusMessage *message); - -DBUS_EXPORT -DBusMessage* dbus_message_ref (DBusMessage *message); -DBUS_EXPORT -void dbus_message_unref (DBusMessage *message); -DBUS_EXPORT -int dbus_message_get_type (DBusMessage *message); -DBUS_EXPORT -dbus_bool_t dbus_message_set_path (DBusMessage *message, - const char *object_path); -DBUS_EXPORT -const char* dbus_message_get_path (DBusMessage *message); -DBUS_EXPORT -dbus_bool_t dbus_message_has_path (DBusMessage *message, - const char *object_path); -DBUS_EXPORT -dbus_bool_t dbus_message_set_interface (DBusMessage *message, - const char *interface); -DBUS_EXPORT -const char* dbus_message_get_interface (DBusMessage *message); -DBUS_EXPORT -dbus_bool_t dbus_message_has_interface (DBusMessage *message, - const char *interface); -DBUS_EXPORT -dbus_bool_t dbus_message_set_member (DBusMessage *message, - const char *member); -DBUS_EXPORT -const char* dbus_message_get_member (DBusMessage *message); -DBUS_EXPORT -dbus_bool_t dbus_message_has_member (DBusMessage *message, - const char *member); -DBUS_EXPORT -dbus_bool_t dbus_message_set_error_name (DBusMessage *message, - const char *name); -DBUS_EXPORT -const char* dbus_message_get_error_name (DBusMessage *message); -DBUS_EXPORT -dbus_bool_t dbus_message_set_destination (DBusMessage *message, - const char *destination); -DBUS_EXPORT -const char* dbus_message_get_destination (DBusMessage *message); -DBUS_EXPORT -dbus_bool_t dbus_message_set_sender (DBusMessage *message, - const char *sender); -DBUS_EXPORT -const char* dbus_message_get_sender (DBusMessage *message); -DBUS_EXPORT -const char* dbus_message_get_signature (DBusMessage *message); -DBUS_EXPORT -void dbus_message_set_no_reply (DBusMessage *message, - dbus_bool_t no_reply); -DBUS_EXPORT -dbus_bool_t dbus_message_get_no_reply (DBusMessage *message); -DBUS_EXPORT -dbus_bool_t dbus_message_is_method_call (DBusMessage *message, - const char *interface, - const char *method); -DBUS_EXPORT -dbus_bool_t dbus_message_is_signal (DBusMessage *message, - const char *interface, - const char *signal_name); -DBUS_EXPORT -dbus_bool_t dbus_message_is_error (DBusMessage *message, - const char *error_name); -DBUS_EXPORT -dbus_bool_t dbus_message_has_destination (DBusMessage *message, - const char *bus_name); -DBUS_EXPORT -dbus_bool_t dbus_message_has_sender (DBusMessage *message, - const char *unique_bus_name); -DBUS_EXPORT -dbus_bool_t dbus_message_has_signature (DBusMessage *message, - const char *signature); -DBUS_EXPORT -dbus_uint32_t dbus_message_get_serial (DBusMessage *message); -DBUS_EXPORT -void dbus_message_set_serial (DBusMessage *message, - dbus_uint32_t serial); -DBUS_EXPORT -dbus_bool_t dbus_message_set_reply_serial (DBusMessage *message, - dbus_uint32_t reply_serial); -DBUS_EXPORT -dbus_uint32_t dbus_message_get_reply_serial (DBusMessage *message); - -DBUS_EXPORT -void dbus_message_set_auto_start (DBusMessage *message, - dbus_bool_t auto_start); -DBUS_EXPORT -dbus_bool_t dbus_message_get_auto_start (DBusMessage *message); - -DBUS_EXPORT -dbus_bool_t dbus_message_get_path_decomposed (DBusMessage *message, - char ***path); - -DBUS_EXPORT -dbus_bool_t dbus_message_append_args (DBusMessage *message, - int first_arg_type, - ...); -DBUS_EXPORT -dbus_bool_t dbus_message_append_args_valist (DBusMessage *message, - int first_arg_type, - va_list var_args); -DBUS_EXPORT -dbus_bool_t dbus_message_get_args (DBusMessage *message, - DBusError *error, - int first_arg_type, - ...); -DBUS_EXPORT -dbus_bool_t dbus_message_get_args_valist (DBusMessage *message, - DBusError *error, - int first_arg_type, - va_list var_args); - -DBUS_EXPORT -dbus_bool_t dbus_message_contains_unix_fds (DBusMessage *message); - -DBUS_EXPORT -dbus_bool_t dbus_message_iter_init (DBusMessage *message, - DBusMessageIter *iter); -DBUS_EXPORT -dbus_bool_t dbus_message_iter_has_next (DBusMessageIter *iter); -DBUS_EXPORT -dbus_bool_t dbus_message_iter_next (DBusMessageIter *iter); -DBUS_EXPORT -char* dbus_message_iter_get_signature (DBusMessageIter *iter); -DBUS_EXPORT -int dbus_message_iter_get_arg_type (DBusMessageIter *iter); -DBUS_EXPORT -int dbus_message_iter_get_element_type (DBusMessageIter *iter); -DBUS_EXPORT -void dbus_message_iter_recurse (DBusMessageIter *iter, - DBusMessageIter *sub); -DBUS_EXPORT -void dbus_message_iter_get_basic (DBusMessageIter *iter, - void *value); -#ifndef DBUS_DISABLE_DEPRECATED -/* This function returns the wire protocol size of the array in bytes, - * you do not want to know that probably - */ -DBUS_EXPORT -DBUS_DEPRECATED int dbus_message_iter_get_array_len (DBusMessageIter *iter); -#endif -DBUS_EXPORT -void dbus_message_iter_get_fixed_array (DBusMessageIter *iter, - void *value, - int *n_elements); - - -DBUS_EXPORT -void dbus_message_iter_init_append (DBusMessage *message, - DBusMessageIter *iter); -DBUS_EXPORT -dbus_bool_t dbus_message_iter_append_basic (DBusMessageIter *iter, - int type, - const void *value); -DBUS_EXPORT -dbus_bool_t dbus_message_iter_append_fixed_array (DBusMessageIter *iter, - int element_type, - const void *value, - int n_elements); -DBUS_EXPORT -dbus_bool_t dbus_message_iter_open_container (DBusMessageIter *iter, - int type, - const char *contained_signature, - DBusMessageIter *sub); -DBUS_EXPORT -dbus_bool_t dbus_message_iter_close_container (DBusMessageIter *iter, - DBusMessageIter *sub); -DBUS_EXPORT -void dbus_message_iter_abandon_container (DBusMessageIter *iter, - DBusMessageIter *sub); - -DBUS_EXPORT -void dbus_message_lock (DBusMessage *message); - -DBUS_EXPORT -dbus_bool_t dbus_set_error_from_message (DBusError *error, - DBusMessage *message); - - -DBUS_EXPORT -dbus_bool_t dbus_message_allocate_data_slot (dbus_int32_t *slot_p); -DBUS_EXPORT -void dbus_message_free_data_slot (dbus_int32_t *slot_p); -DBUS_EXPORT -dbus_bool_t dbus_message_set_data (DBusMessage *message, - dbus_int32_t slot, - void *data, - DBusFreeFunction free_data_func); -DBUS_EXPORT -void* dbus_message_get_data (DBusMessage *message, - dbus_int32_t slot); - -DBUS_EXPORT -int dbus_message_type_from_string (const char *type_str); -DBUS_EXPORT -const char* dbus_message_type_to_string (int type); - -DBUS_EXPORT -dbus_bool_t dbus_message_marshal (DBusMessage *msg, - char **marshalled_data_p, - int *len_p); -DBUS_EXPORT -DBusMessage* dbus_message_demarshal (const char *str, - int len, - DBusError *error); - -DBUS_EXPORT -int dbus_message_demarshal_bytes_needed (const char *str, - int len); - -/** @} */ - -DBUS_END_DECLS - -#endif /* DBUS_MESSAGE_H */ diff --git a/include/dbus-1/dbus/dbus-misc.h b/include/dbus-1/dbus/dbus-misc.h deleted file mode 100644 index 3504bcaa..00000000 --- a/include/dbus-1/dbus/dbus-misc.h +++ /dev/null @@ -1,52 +0,0 @@ -/* -*- mode: C; c-file-style: "gnu"; indent-tabs-mode: nil; -*- */ -/* dbus-misc.h A few assorted public functions that don't fit elsewhere - * - * Copyright (C) 2006 Red Hat, Inc. - * - * Licensed under the Academic Free License version 2.1 - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2 of the License, or - * (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with this program; if not, write to the Free Software - * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA - * - */ -#if !defined (DBUS_INSIDE_DBUS_H) && !defined (DBUS_COMPILATION) -#error "Only <dbus/dbus.h> can be included directly, this file may disappear or change contents." -#endif - -#ifndef DBUS_MISC_H -#define DBUS_MISC_H - -#include <dbus/dbus-types.h> -#include <dbus/dbus-errors.h> - -DBUS_BEGIN_DECLS - -/** - * @addtogroup DBusMisc - * @{ - */ -DBUS_EXPORT -char* dbus_get_local_machine_id (void); - -DBUS_EXPORT -void dbus_get_version (int *major_version_p, - int *minor_version_p, - int *micro_version_p); - -/** @} */ - -DBUS_END_DECLS - -#endif /* DBUS_MISC_H */ - diff --git a/include/dbus-1/dbus/dbus-nonce.h b/include/dbus-1/dbus/dbus-nonce.h deleted file mode 100644 index 474ea728..00000000 --- a/include/dbus-1/dbus/dbus-nonce.h +++ /dev/null @@ -1,72 +0,0 @@ -/* -*- mode: C; c-file-style: "gnu"; indent-tabs-mode: nil; -*- */ -/* dbus-nonce.h Nonce handling functions used by nonce-tcp (internal to D-Bus implementation) - * - * Copyright (C) 2009 Klaralvdalens Datakonsult AB, a KDAB Group company, info@kdab.net - * - * Licensed under the Academic Free License version 2.1 - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2 of the License, or - * (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with this program; if not, write to the Free Software - * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - * - */ -#ifndef DBUS_NONCE_H -#define DBUS_NONCE_H - -#include <dbus/dbus-macros.h> -#include <dbus/dbus-types.h> -#include <dbus/dbus-errors.h> -#include <dbus/dbus-string.h> - -DBUS_BEGIN_DECLS - -typedef struct DBusNonceFile DBusNonceFile; - -struct DBusNonceFile -{ - DBusString path; - DBusString dir; -}; - -// server - -dbus_bool_t _dbus_noncefile_create (DBusNonceFile *noncefile, - DBusError *error); - -dbus_bool_t _dbus_noncefile_delete (DBusNonceFile *noncefile, - DBusError *error); - -dbus_bool_t _dbus_noncefile_check_nonce (int fd, - const DBusNonceFile *noncefile, - DBusError *error); - -const DBusString* _dbus_noncefile_get_path (const DBusNonceFile *noncefile); - -int _dbus_accept_with_noncefile (int listen_fd, - const DBusNonceFile *noncefile); - -// shared - -dbus_bool_t _dbus_read_nonce (const DBusString *fname, - DBusString *nonce, - DBusError *error); - -// client - -dbus_bool_t _dbus_send_nonce (int fd, - const DBusString *noncefile, - DBusError *error); - -DBUS_END_DECLS - -#endif /* DBUS_NONCE_H */ diff --git a/include/dbus-1/dbus/dbus-object-tree.h b/include/dbus-1/dbus/dbus-object-tree.h deleted file mode 100644 index 022dd93f..00000000 --- a/include/dbus-1/dbus/dbus-object-tree.h +++ /dev/null @@ -1,62 +0,0 @@ -/* -*- mode: C; c-file-style: "gnu"; indent-tabs-mode: nil; -*- */ -/* dbus-object-tree.h DBusObjectTree (internals of DBusConnection) - * - * Copyright (C) 2003 Red Hat Inc. - * - * Licensed under the Academic Free License version 2.1 - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2 of the License, or - * (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with this program; if not, write to the Free Software - * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA - * - */ -#ifndef DBUS_OBJECT_TREE_H -#define DBUS_OBJECT_TREE_H - -#include <dbus/dbus-connection.h> - -DBUS_BEGIN_DECLS - -typedef struct DBusObjectTree DBusObjectTree; - -DBusObjectTree* _dbus_object_tree_new (DBusConnection *connection); -DBusObjectTree* _dbus_object_tree_ref (DBusObjectTree *tree); -void _dbus_object_tree_unref (DBusObjectTree *tree); - -dbus_bool_t _dbus_object_tree_register (DBusObjectTree *tree, - dbus_bool_t fallback, - const char **path, - const DBusObjectPathVTable *vtable, - void *user_data, - DBusError *error); -void _dbus_object_tree_unregister_and_unlock (DBusObjectTree *tree, - const char **path); -DBusHandlerResult _dbus_object_tree_dispatch_and_unlock (DBusObjectTree *tree, - DBusMessage *message); -void* _dbus_object_tree_get_user_data_unlocked (DBusObjectTree *tree, - const char **path); -void _dbus_object_tree_free_all_unlocked (DBusObjectTree *tree); - - -dbus_bool_t _dbus_object_tree_list_registered_and_unlock (DBusObjectTree *tree, - const char **parent_path, - char ***child_entries); - -dbus_bool_t _dbus_decompose_path (const char *data, - int len, - char ***path, - int *path_len); - -DBUS_END_DECLS - -#endif /* DBUS_OBJECT_TREE_H */ diff --git a/include/dbus-1/dbus/dbus-pending-call-internal.h b/include/dbus-1/dbus/dbus-pending-call-internal.h deleted file mode 100644 index 1875eea8..00000000 --- a/include/dbus-1/dbus/dbus-pending-call-internal.h +++ /dev/null @@ -1,67 +0,0 @@ -/* -*- mode: C; c-file-style: "gnu"; indent-tabs-mode: nil; -*- */ -/* dbus-pending-call-internal.h DBusPendingCall internal interfaces - * - * Copyright (C) 2002 Red Hat Inc. - * - * Licensed under the Academic Free License version 2.1 - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2 of the License, or - * (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with this program; if not, write to the Free Software - * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA - * - */ -#ifndef DBUS_PENDING_CALL_INTERNAL_H -#define DBUS_PENDING_CALL_INTERNAL_H - - -#include <dbus/dbus-internals.h> -#include <dbus/dbus-message.h> -#include <dbus/dbus-connection.h> -#include <dbus/dbus-list.h> - -DBUS_BEGIN_DECLS - -dbus_bool_t _dbus_pending_call_is_timeout_added_unlocked (DBusPendingCall *pending); -void _dbus_pending_call_set_timeout_added_unlocked (DBusPendingCall *pending, - dbus_bool_t is_added); -DBusTimeout * _dbus_pending_call_get_timeout_unlocked (DBusPendingCall *pending); -dbus_uint32_t _dbus_pending_call_get_reply_serial_unlocked (DBusPendingCall *pending); -void _dbus_pending_call_set_reply_serial_unlocked (DBusPendingCall *pending, - dbus_uint32_t serial); -DBusConnection * _dbus_pending_call_get_connection_and_lock (DBusPendingCall *pending); -DBusConnection * _dbus_pending_call_get_connection_unlocked (DBusPendingCall *pending); -dbus_bool_t _dbus_pending_call_get_completed_unlocked (DBusPendingCall *pending); -void _dbus_pending_call_complete (DBusPendingCall *pending); -void _dbus_pending_call_set_reply_unlocked (DBusPendingCall *pending, - DBusMessage *message); -void _dbus_pending_call_queue_timeout_error_unlocked (DBusPendingCall *pending, - DBusConnection *connection); -void _dbus_pending_call_set_reply_serial_unlocked (DBusPendingCall *pending, - dbus_uint32_t serial); -dbus_bool_t _dbus_pending_call_set_timeout_error_unlocked (DBusPendingCall *pending, - DBusMessage *message, - dbus_uint32_t serial); -DBusPendingCall* _dbus_pending_call_new_unlocked (DBusConnection *connection, - int timeout_milliseconds, - DBusTimeoutHandler timeout_handler); -DBusPendingCall* _dbus_pending_call_ref_unlocked (DBusPendingCall *pending); -void _dbus_pending_call_unref_and_unlock (DBusPendingCall *pending); -dbus_bool_t _dbus_pending_call_set_data_unlocked (DBusPendingCall *pending, - dbus_int32_t slot, - void *data, - DBusFreeFunction free_data_func); - - -DBUS_END_DECLS - -#endif /* DBUS_PENDING_CALL_INTERNAL_H */ diff --git a/include/dbus-1/dbus/dbus-pending-call.h b/include/dbus-1/dbus/dbus-pending-call.h deleted file mode 100644 index 8f64b8be..00000000 --- a/include/dbus-1/dbus/dbus-pending-call.h +++ /dev/null @@ -1,76 +0,0 @@ -/* -*- mode: C; c-file-style: "gnu"; indent-tabs-mode: nil; -*- */ -/* dbus-pending-call.h Object representing a call in progress. - * - * Copyright (C) 2002, 2003 Red Hat Inc. - * - * Licensed under the Academic Free License version 2.1 - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2 of the License, or - * (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with this program; if not, write to the Free Software - * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA - * - */ -#if !defined (DBUS_INSIDE_DBUS_H) && !defined (DBUS_COMPILATION) -#error "Only <dbus/dbus.h> can be included directly, this file may disappear or change contents." -#endif - -#ifndef DBUS_PENDING_CALL_H -#define DBUS_PENDING_CALL_H - -#include <dbus/dbus-macros.h> -#include <dbus/dbus-types.h> -#include <dbus/dbus-connection.h> - -DBUS_BEGIN_DECLS - -/** - * @addtogroup DBusPendingCall - * @{ - */ - -DBUS_EXPORT -DBusPendingCall* dbus_pending_call_ref (DBusPendingCall *pending); -DBUS_EXPORT -void dbus_pending_call_unref (DBusPendingCall *pending); -DBUS_EXPORT -dbus_bool_t dbus_pending_call_set_notify (DBusPendingCall *pending, - DBusPendingCallNotifyFunction function, - void *user_data, - DBusFreeFunction free_user_data); -DBUS_EXPORT -void dbus_pending_call_cancel (DBusPendingCall *pending); -DBUS_EXPORT -dbus_bool_t dbus_pending_call_get_completed (DBusPendingCall *pending); -DBUS_EXPORT -DBusMessage* dbus_pending_call_steal_reply (DBusPendingCall *pending); -DBUS_EXPORT -void dbus_pending_call_block (DBusPendingCall *pending); - -DBUS_EXPORT -dbus_bool_t dbus_pending_call_allocate_data_slot (dbus_int32_t *slot_p); -DBUS_EXPORT -void dbus_pending_call_free_data_slot (dbus_int32_t *slot_p); -DBUS_EXPORT -dbus_bool_t dbus_pending_call_set_data (DBusPendingCall *pending, - dbus_int32_t slot, - void *data, - DBusFreeFunction free_data_func); -DBUS_EXPORT -void* dbus_pending_call_get_data (DBusPendingCall *pending, - dbus_int32_t slot); - -/** @} */ - -DBUS_END_DECLS - -#endif /* DBUS_PENDING_CALL_H */ diff --git a/include/dbus-1/dbus/dbus-pipe.h b/include/dbus-1/dbus/dbus-pipe.h deleted file mode 100644 index f6eac5f9..00000000 --- a/include/dbus-1/dbus/dbus-pipe.h +++ /dev/null @@ -1,59 +0,0 @@ -/* -*- mode: C; c-file-style: "gnu"; indent-tabs-mode: nil; -*- */ -/* dbus-sysdeps.h Wrappers around system/libc features (internal to D-Bus implementation) - * - * Copyright (C) 2002, 2003 Red Hat, Inc. - * Copyright (C) 2003 CodeFactory AB - * - * Licensed under the Academic Free License version 2.1 - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2 of the License, or - * (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with this program; if not, write to the Free Software - * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA - * - */ - -#ifndef DBUS_PIPE_H -#define DBUS_PIPE_H - -#ifdef HAVE_STDINT_H -#include <stdint.h> -#endif - -#ifdef HAVE_INTTYPES_H -#include <inttypes.h> -#endif - -#include <dbus/dbus-types.h> -#include <dbus/dbus-errors.h> -#include <dbus/dbus-string.h> -#include <dbus/dbus-sysdeps.h> - -struct DBusPipe { - intptr_t fd_or_handle; -}; - -void _dbus_pipe_init (DBusPipe *pipe, - intptr_t fd); -void _dbus_pipe_init_stdout (DBusPipe *pipe); -int _dbus_pipe_write (DBusPipe *pipe, - const DBusString *buffer, - int start, - int len, - DBusError *error); -int _dbus_pipe_close (DBusPipe *pipe, - DBusError *error); -dbus_bool_t _dbus_pipe_is_valid (DBusPipe *pipe); -void _dbus_pipe_invalidate (DBusPipe *pipe); -dbus_bool_t _dbus_pipe_is_stdout_or_stderr (DBusPipe *pipe); - -#endif diff --git a/include/dbus-1/dbus/dbus-protocol.h b/include/dbus-1/dbus/dbus-protocol.h deleted file mode 100644 index 17798e94..00000000 --- a/include/dbus-1/dbus/dbus-protocol.h +++ /dev/null @@ -1,462 +0,0 @@ -/* -*- mode: C; c-file-style: "gnu"; indent-tabs-mode: nil; -*- */ -/* dbus-protocol.h D-Bus protocol constants - * - * Copyright (C) 2002, 2003 CodeFactory AB - * Copyright (C) 2004, 2005 Red Hat, Inc. - * - * Licensed under the Academic Free License version 2.1 - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2 of the License, or - * (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with this program; if not, write to the Free Software - * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA - * - */ - -#ifndef DBUS_PROTOCOL_H -#define DBUS_PROTOCOL_H - -/* Don't include anything in here from anywhere else. It's - * intended for use by any random library. - */ - -#ifdef __cplusplus -extern "C" { -#if 0 -} /* avoids confusing emacs indentation */ -#endif -#endif - -/* Normally docs are in .c files, but there isn't a .c file for this. */ -/** - * @defgroup DBusProtocol Protocol constants - * @ingroup DBus - * - * @brief Defines constants which are part of the D-Bus protocol - * - * This header is intended for use by any library, not only libdbus. - * - * @{ - */ - - -/* Message byte order */ -#define DBUS_LITTLE_ENDIAN ('l') /**< Code marking LSB-first byte order in the wire protocol. */ -#define DBUS_BIG_ENDIAN ('B') /**< Code marking MSB-first byte order in the wire protocol. */ - -/** Protocol version. */ -#define DBUS_MAJOR_PROTOCOL_VERSION 1 - -/** Type code that is never equal to a legitimate type code */ -#define DBUS_TYPE_INVALID ((int) '\0') -/** #DBUS_TYPE_INVALID as a string literal instead of a int literal */ -#define DBUS_TYPE_INVALID_AS_STRING "\0" - -/* Primitive types */ -/** Type code marking an 8-bit unsigned integer */ -#define DBUS_TYPE_BYTE ((int) 'y') -/** #DBUS_TYPE_BYTE as a string literal instead of a int literal */ -#define DBUS_TYPE_BYTE_AS_STRING "y" -/** Type code marking a boolean */ -#define DBUS_TYPE_BOOLEAN ((int) 'b') -/** #DBUS_TYPE_BOOLEAN as a string literal instead of a int literal */ -#define DBUS_TYPE_BOOLEAN_AS_STRING "b" -/** Type code marking a 16-bit signed integer */ -#define DBUS_TYPE_INT16 ((int) 'n') -/** #DBUS_TYPE_INT16 as a string literal instead of a int literal */ -#define DBUS_TYPE_INT16_AS_STRING "n" -/** Type code marking a 16-bit unsigned integer */ -#define DBUS_TYPE_UINT16 ((int) 'q') -/** #DBUS_TYPE_UINT16 as a string literal instead of a int literal */ -#define DBUS_TYPE_UINT16_AS_STRING "q" -/** Type code marking a 32-bit signed integer */ -#define DBUS_TYPE_INT32 ((int) 'i') -/** #DBUS_TYPE_INT32 as a string literal instead of a int literal */ -#define DBUS_TYPE_INT32_AS_STRING "i" -/** Type code marking a 32-bit unsigned integer */ -#define DBUS_TYPE_UINT32 ((int) 'u') -/** #DBUS_TYPE_UINT32 as a string literal instead of a int literal */ -#define DBUS_TYPE_UINT32_AS_STRING "u" -/** Type code marking a 64-bit signed integer */ -#define DBUS_TYPE_INT64 ((int) 'x') -/** #DBUS_TYPE_INT64 as a string literal instead of a int literal */ -#define DBUS_TYPE_INT64_AS_STRING "x" -/** Type code marking a 64-bit unsigned integer */ -#define DBUS_TYPE_UINT64 ((int) 't') -/** #DBUS_TYPE_UINT64 as a string literal instead of a int literal */ -#define DBUS_TYPE_UINT64_AS_STRING "t" -/** Type code marking an 8-byte double in IEEE 754 format */ -#define DBUS_TYPE_DOUBLE ((int) 'd') -/** #DBUS_TYPE_DOUBLE as a string literal instead of a int literal */ -#define DBUS_TYPE_DOUBLE_AS_STRING "d" -/** Type code marking a UTF-8 encoded, nul-terminated Unicode string */ -#define DBUS_TYPE_STRING ((int) 's') -/** #DBUS_TYPE_STRING as a string literal instead of a int literal */ -#define DBUS_TYPE_STRING_AS_STRING "s" -/** Type code marking a D-Bus object path */ -#define DBUS_TYPE_OBJECT_PATH ((int) 'o') -/** #DBUS_TYPE_OBJECT_PATH as a string literal instead of a int literal */ -#define DBUS_TYPE_OBJECT_PATH_AS_STRING "o" -/** Type code marking a D-Bus type signature */ -#define DBUS_TYPE_SIGNATURE ((int) 'g') -/** #DBUS_TYPE_SIGNATURE as a string literal instead of a int literal */ -#define DBUS_TYPE_SIGNATURE_AS_STRING "g" -/** Type code marking a unix file descriptor */ -#define DBUS_TYPE_UNIX_FD ((int) 'h') -/** #DBUS_TYPE_UNIX_FD as a string literal instead of a int literal */ -#define DBUS_TYPE_UNIX_FD_AS_STRING "h" - -/* Compound types */ -/** Type code marking a D-Bus array type */ -#define DBUS_TYPE_ARRAY ((int) 'a') -/** #DBUS_TYPE_ARRAY as a string literal instead of a int literal */ -#define DBUS_TYPE_ARRAY_AS_STRING "a" -/** Type code marking a D-Bus variant type */ -#define DBUS_TYPE_VARIANT ((int) 'v') -/** #DBUS_TYPE_VARIANT as a string literal instead of a int literal */ -#define DBUS_TYPE_VARIANT_AS_STRING "v" - -/** STRUCT and DICT_ENTRY are sort of special since their codes can't - * appear in a type string, instead - * DBUS_STRUCT_BEGIN_CHAR/DBUS_DICT_ENTRY_BEGIN_CHAR have to appear - */ -/** Type code used to represent a struct; however, this type code does not appear - * in type signatures, instead #DBUS_STRUCT_BEGIN_CHAR and #DBUS_STRUCT_END_CHAR will - * appear in a signature. - */ -#define DBUS_TYPE_STRUCT ((int) 'r') -/** #DBUS_TYPE_STRUCT as a string literal instead of a int literal */ -#define DBUS_TYPE_STRUCT_AS_STRING "r" -/** Type code used to represent a dict entry; however, this type code does not appear - * in type signatures, instead #DBUS_DICT_ENTRY_BEGIN_CHAR and #DBUS_DICT_ENTRY_END_CHAR will - * appear in a signature. - */ -#define DBUS_TYPE_DICT_ENTRY ((int) 'e') -/** #DBUS_TYPE_DICT_ENTRY as a string literal instead of a int literal */ -#define DBUS_TYPE_DICT_ENTRY_AS_STRING "e" - -/** Does not include #DBUS_TYPE_INVALID, #DBUS_STRUCT_BEGIN_CHAR, #DBUS_STRUCT_END_CHAR, - * #DBUS_DICT_ENTRY_BEGIN_CHAR, or #DBUS_DICT_ENTRY_END_CHAR - i.e. it is the number of - * valid types, not the number of distinct characters that may appear in a type signature. - */ -#define DBUS_NUMBER_OF_TYPES (16) - -/* characters other than typecodes that appear in type signatures */ - -/** Code marking the start of a struct type in a type signature */ -#define DBUS_STRUCT_BEGIN_CHAR ((int) '(') -/** #DBUS_STRUCT_BEGIN_CHAR as a string literal instead of a int literal */ -#define DBUS_STRUCT_BEGIN_CHAR_AS_STRING "(" -/** Code marking the end of a struct type in a type signature */ -#define DBUS_STRUCT_END_CHAR ((int) ')') -/** #DBUS_STRUCT_END_CHAR a string literal instead of a int literal */ -#define DBUS_STRUCT_END_CHAR_AS_STRING ")" -/** Code marking the start of a dict entry type in a type signature */ -#define DBUS_DICT_ENTRY_BEGIN_CHAR ((int) '{') -/** #DBUS_DICT_ENTRY_BEGIN_CHAR as a string literal instead of a int literal */ -#define DBUS_DICT_ENTRY_BEGIN_CHAR_AS_STRING "{" -/** Code marking the end of a dict entry type in a type signature */ -#define DBUS_DICT_ENTRY_END_CHAR ((int) '}') -/** #DBUS_DICT_ENTRY_END_CHAR as a string literal instead of a int literal */ -#define DBUS_DICT_ENTRY_END_CHAR_AS_STRING "}" - -/** Max length in bytes of a bus name, interface, or member (not object - * path, paths are unlimited). This is limited because lots of stuff - * is O(n) in this number, plus it would be obnoxious to type in a - * paragraph-long method name so most likely something like that would - * be an exploit. - */ -#define DBUS_MAXIMUM_NAME_LENGTH 255 - -/** This one is 255 so it fits in a byte */ -#define DBUS_MAXIMUM_SIGNATURE_LENGTH 255 - -/** Max length of a match rule string; to keep people from hosing the - * daemon with some huge rule - */ -#define DBUS_MAXIMUM_MATCH_RULE_LENGTH 1024 - -/** Max arg number you can match on in a match rule, e.g. - * arg0='hello' is OK, arg3489720987='hello' is not - */ -#define DBUS_MAXIMUM_MATCH_RULE_ARG_NUMBER 63 - -/** Max length of a marshaled array in bytes (64M, 2^26) We use signed - * int for lengths so must be INT_MAX or less. We need something a - * bit smaller than INT_MAX because the array is inside a message with - * header info, etc. so an INT_MAX array wouldn't allow the message - * overhead. The 64M number is an attempt at a larger number than - * we'd reasonably ever use, but small enough that your bus would chew - * through it fairly quickly without locking up forever. If you have - * data that's likely to be larger than this, you should probably be - * sending it in multiple incremental messages anyhow. - */ -#define DBUS_MAXIMUM_ARRAY_LENGTH (67108864) -/** Number of bits you need in an unsigned to store the max array size */ -#define DBUS_MAXIMUM_ARRAY_LENGTH_BITS 26 - -/** The maximum total message size including header and body; similar - * rationale to max array size. - */ -#define DBUS_MAXIMUM_MESSAGE_LENGTH (DBUS_MAXIMUM_ARRAY_LENGTH * 2) -/** Number of bits you need in an unsigned to store the max message size */ -#define DBUS_MAXIMUM_MESSAGE_LENGTH_BITS 27 - -/** The maximum total number of unix fds in a message. Similar - * rationale as DBUS_MAXIMUM_MESSAGE_LENGTH. However we divide by four - * given that one fd is an int and hence at least 32 bits. - */ -#define DBUS_MAXIMUM_MESSAGE_UNIX_FDS (DBUS_MAXIMUM_MESSAGE_LENGTH/4) -/** Number of bits you need in an unsigned to store the max message unix fds */ -#define DBUS_MAXIMUM_MESSAGE_UNIX_FDS_BITS (DBUS_MAXIMUM_MESSAGE_LENGTH_BITS-2) - -/** Depth of recursion in the type tree. This is automatically limited - * to DBUS_MAXIMUM_SIGNATURE_LENGTH since you could only have an array - * of array of array of ... that fit in the max signature. But that's - * probably a bit too large. - */ -#define DBUS_MAXIMUM_TYPE_RECURSION_DEPTH 32 - -/* Types of message */ - -/** This value is never a valid message type, see dbus_message_get_type() */ -#define DBUS_MESSAGE_TYPE_INVALID 0 -/** Message type of a method call message, see dbus_message_get_type() */ -#define DBUS_MESSAGE_TYPE_METHOD_CALL 1 -/** Message type of a method return message, see dbus_message_get_type() */ -#define DBUS_MESSAGE_TYPE_METHOD_RETURN 2 -/** Message type of an error reply message, see dbus_message_get_type() */ -#define DBUS_MESSAGE_TYPE_ERROR 3 -/** Message type of a signal message, see dbus_message_get_type() */ -#define DBUS_MESSAGE_TYPE_SIGNAL 4 - -#define DBUS_NUM_MESSAGE_TYPES 5 - -/* Header flags */ - -/** If set, this flag means that the sender of a message does not care about getting - * a reply, so the recipient need not send one. See dbus_message_set_no_reply(). - */ -#define DBUS_HEADER_FLAG_NO_REPLY_EXPECTED 0x1 -/** - * If set, this flag means that even if the message bus knows how to start an owner for - * the destination bus name (see dbus_message_set_destination()), it should not - * do so. If this flag is not set, the bus may launch a program to process the - * message. - */ -#define DBUS_HEADER_FLAG_NO_AUTO_START 0x2 - -/* Header fields */ - -/** Not equal to any valid header field code */ -#define DBUS_HEADER_FIELD_INVALID 0 -/** Header field code for the path - the path is the object emitting a signal or the object receiving a method call. - * See dbus_message_set_path(). - */ -#define DBUS_HEADER_FIELD_PATH 1 -/** Header field code for the interface containing a member (method or signal). - * See dbus_message_set_interface(). - */ -#define DBUS_HEADER_FIELD_INTERFACE 2 -/** Header field code for a member (method or signal). See dbus_message_set_member(). */ -#define DBUS_HEADER_FIELD_MEMBER 3 -/** Header field code for an error name (found in #DBUS_MESSAGE_TYPE_ERROR messages). - * See dbus_message_set_error_name(). - */ -#define DBUS_HEADER_FIELD_ERROR_NAME 4 -/** Header field code for a reply serial, used to match a #DBUS_MESSAGE_TYPE_METHOD_RETURN message with the - * message that it's a reply to. See dbus_message_set_reply_serial(). - */ -#define DBUS_HEADER_FIELD_REPLY_SERIAL 5 -/** - * Header field code for the destination bus name of a message. See dbus_message_set_destination(). - */ -#define DBUS_HEADER_FIELD_DESTINATION 6 -/** - * Header field code for the sender of a message; usually initialized by the message bus. - * See dbus_message_set_sender(). - */ -#define DBUS_HEADER_FIELD_SENDER 7 -/** - * Header field code for the type signature of a message. - */ -#define DBUS_HEADER_FIELD_SIGNATURE 8 -/** - * Header field code for the number of unix file descriptors associated - * with this message. - */ -#define DBUS_HEADER_FIELD_UNIX_FDS 9 - - -/** - * Value of the highest-numbered header field code, can be used to determine - * the size of an array indexed by header field code. Remember though - * that unknown codes must be ignored, so check for that before - * indexing the array. - */ -#define DBUS_HEADER_FIELD_LAST DBUS_HEADER_FIELD_UNIX_FDS - -/** Header format is defined as a signature: - * byte byte order - * byte message type ID - * byte flags - * byte protocol version - * uint32 body length - * uint32 serial - * array of struct (byte,variant) (field name, value) - * - * The length of the header can be computed as the - * fixed size of the initial data, plus the length of - * the array at the end, plus padding to an 8-boundary. - */ -#define DBUS_HEADER_SIGNATURE \ - DBUS_TYPE_BYTE_AS_STRING \ - DBUS_TYPE_BYTE_AS_STRING \ - DBUS_TYPE_BYTE_AS_STRING \ - DBUS_TYPE_BYTE_AS_STRING \ - DBUS_TYPE_UINT32_AS_STRING \ - DBUS_TYPE_UINT32_AS_STRING \ - DBUS_TYPE_ARRAY_AS_STRING \ - DBUS_STRUCT_BEGIN_CHAR_AS_STRING \ - DBUS_TYPE_BYTE_AS_STRING \ - DBUS_TYPE_VARIANT_AS_STRING \ - DBUS_STRUCT_END_CHAR_AS_STRING - - -/** - * The smallest header size that can occur. (It won't be valid due to - * missing required header fields.) This is 4 bytes, two uint32, an - * array length. This isn't any kind of resource limit, just the - * necessary/logical outcome of the header signature. - */ -#define DBUS_MINIMUM_HEADER_SIZE 16 - -/* Errors */ -/* WARNING these get autoconverted to an enum in dbus-glib.h. Thus, - * if you change the order it breaks the ABI. Keep them in order. - * Also, don't change the formatting since that will break the sed - * script. - */ -/** A generic error; "something went wrong" - see the error message for more. */ -#define DBUS_ERROR_FAILED "org.freedesktop.DBus.Error.Failed" -/** There was not enough memory to complete an operation. */ -#define DBUS_ERROR_NO_MEMORY "org.freedesktop.DBus.Error.NoMemory" -/** The bus doesn't know how to launch a service to supply the bus name you wanted. */ -#define DBUS_ERROR_SERVICE_UNKNOWN "org.freedesktop.DBus.Error.ServiceUnknown" -/** The bus name you referenced doesn't exist (i.e. no application owns it). */ -#define DBUS_ERROR_NAME_HAS_NO_OWNER "org.freedesktop.DBus.Error.NameHasNoOwner" -/** No reply to a message expecting one, usually means a timeout occurred. */ -#define DBUS_ERROR_NO_REPLY "org.freedesktop.DBus.Error.NoReply" -/** Something went wrong reading or writing to a socket, for example. */ -#define DBUS_ERROR_IO_ERROR "org.freedesktop.DBus.Error.IOError" -/** A D-Bus bus address was malformed. */ -#define DBUS_ERROR_BAD_ADDRESS "org.freedesktop.DBus.Error.BadAddress" -/** Requested operation isn't supported (like ENOSYS on UNIX). */ -#define DBUS_ERROR_NOT_SUPPORTED "org.freedesktop.DBus.Error.NotSupported" -/** Some limited resource is exhausted. */ -#define DBUS_ERROR_LIMITS_EXCEEDED "org.freedesktop.DBus.Error.LimitsExceeded" -/** Security restrictions don't allow doing what you're trying to do. */ -#define DBUS_ERROR_ACCESS_DENIED "org.freedesktop.DBus.Error.AccessDenied" -/** Authentication didn't work. */ -#define DBUS_ERROR_AUTH_FAILED "org.freedesktop.DBus.Error.AuthFailed" -/** Unable to connect to server (probably caused by ECONNREFUSED on a socket). */ -#define DBUS_ERROR_NO_SERVER "org.freedesktop.DBus.Error.NoServer" -/** Certain timeout errors, possibly ETIMEDOUT on a socket. - * Note that #DBUS_ERROR_NO_REPLY is used for message reply timeouts. - * @warning this is confusingly-named given that #DBUS_ERROR_TIMED_OUT also exists. We can't fix - * it for compatibility reasons so just be careful. - */ -#define DBUS_ERROR_TIMEOUT "org.freedesktop.DBus.Error.Timeout" -/** No network access (probably ENETUNREACH on a socket). */ -#define DBUS_ERROR_NO_NETWORK "org.freedesktop.DBus.Error.NoNetwork" -/** Can't bind a socket since its address is in use (i.e. EADDRINUSE). */ -#define DBUS_ERROR_ADDRESS_IN_USE "org.freedesktop.DBus.Error.AddressInUse" -/** The connection is disconnected and you're trying to use it. */ -#define DBUS_ERROR_DISCONNECTED "org.freedesktop.DBus.Error.Disconnected" -/** Invalid arguments passed to a method call. */ -#define DBUS_ERROR_INVALID_ARGS "org.freedesktop.DBus.Error.InvalidArgs" -/** Missing file. */ -#define DBUS_ERROR_FILE_NOT_FOUND "org.freedesktop.DBus.Error.FileNotFound" -/** Existing file and the operation you're using does not silently overwrite. */ -#define DBUS_ERROR_FILE_EXISTS "org.freedesktop.DBus.Error.FileExists" -/** Method name you invoked isn't known by the object you invoked it on. */ -#define DBUS_ERROR_UNKNOWN_METHOD "org.freedesktop.DBus.Error.UnknownMethod" -/** Certain timeout errors, e.g. while starting a service. - * @warning this is confusingly-named given that #DBUS_ERROR_TIMEOUT also exists. We can't fix - * it for compatibility reasons so just be careful. - */ -#define DBUS_ERROR_TIMED_OUT "org.freedesktop.DBus.Error.TimedOut" -/** Tried to remove or modify a match rule that didn't exist. */ -#define DBUS_ERROR_MATCH_RULE_NOT_FOUND "org.freedesktop.DBus.Error.MatchRuleNotFound" -/** The match rule isn't syntactically valid. */ -#define DBUS_ERROR_MATCH_RULE_INVALID "org.freedesktop.DBus.Error.MatchRuleInvalid" -/** While starting a new process, the exec() call failed. */ -#define DBUS_ERROR_SPAWN_EXEC_FAILED "org.freedesktop.DBus.Error.Spawn.ExecFailed" -/** While starting a new process, the fork() call failed. */ -#define DBUS_ERROR_SPAWN_FORK_FAILED "org.freedesktop.DBus.Error.Spawn.ForkFailed" -/** While starting a new process, the child exited with a status code. */ -#define DBUS_ERROR_SPAWN_CHILD_EXITED "org.freedesktop.DBus.Error.Spawn.ChildExited" -/** While starting a new process, the child exited on a signal. */ -#define DBUS_ERROR_SPAWN_CHILD_SIGNALED "org.freedesktop.DBus.Error.Spawn.ChildSignaled" -/** While starting a new process, something went wrong. */ -#define DBUS_ERROR_SPAWN_FAILED "org.freedesktop.DBus.Error.Spawn.Failed" -/** We failed to setup the environment correctly. */ -#define DBUS_ERROR_SPAWN_SETUP_FAILED "org.freedesktop.DBus.Error.Spawn.FailedToSetup" -/** We failed to setup the config parser correctly. */ -#define DBUS_ERROR_SPAWN_CONFIG_INVALID "org.freedesktop.DBus.Error.Spawn.ConfigInvalid" -/** Bus name was not valid. */ -#define DBUS_ERROR_SPAWN_SERVICE_INVALID "org.freedesktop.DBus.Error.Spawn.ServiceNotValid" -/** Service file not found in system-services directory. */ -#define DBUS_ERROR_SPAWN_SERVICE_NOT_FOUND "org.freedesktop.DBus.Error.Spawn.ServiceNotFound" -/** Permissions are incorrect on the setuid helper. */ -#define DBUS_ERROR_SPAWN_PERMISSIONS_INVALID "org.freedesktop.DBus.Error.Spawn.PermissionsInvalid" -/** Service file invalid (Name, User or Exec missing). */ -#define DBUS_ERROR_SPAWN_FILE_INVALID "org.freedesktop.DBus.Error.Spawn.FileInvalid" -/** Tried to get a UNIX process ID and it wasn't available. */ -#define DBUS_ERROR_SPAWN_NO_MEMORY "org.freedesktop.DBus.Error.Spawn.NoMemory" -/** Tried to get a UNIX process ID and it wasn't available. */ -#define DBUS_ERROR_UNIX_PROCESS_ID_UNKNOWN "org.freedesktop.DBus.Error.UnixProcessIdUnknown" -/** A type signature is not valid. */ -#define DBUS_ERROR_INVALID_SIGNATURE "org.freedesktop.DBus.Error.InvalidSignature" -/** A file contains invalid syntax or is otherwise broken. */ -#define DBUS_ERROR_INVALID_FILE_CONTENT "org.freedesktop.DBus.Error.InvalidFileContent" -/** Asked for SELinux security context and it wasn't available. */ -#define DBUS_ERROR_SELINUX_SECURITY_CONTEXT_UNKNOWN "org.freedesktop.DBus.Error.SELinuxSecurityContextUnknown" -/** Asked for ADT audit data and it wasn't available. */ -#define DBUS_ERROR_ADT_AUDIT_DATA_UNKNOWN "org.freedesktop.DBus.Error.AdtAuditDataUnknown" -/** There's already an object with the requested object path. */ -#define DBUS_ERROR_OBJECT_PATH_IN_USE "org.freedesktop.DBus.Error.ObjectPathInUse" -/** The message meta data does not match the payload. e.g. expected - number of file descriptors were not sent over the socket this message was received on. */ -#define DBUS_ERROR_INCONSISTENT_MESSAGE "org.freedesktop.DBus.Error.InconsistentMessage" - -/* XML introspection format */ - -/** XML namespace of the introspection format version 1.0 */ -#define DBUS_INTROSPECT_1_0_XML_NAMESPACE "http://www.freedesktop.org/standards/dbus" -/** XML public identifier of the introspection format version 1.0 */ -#define DBUS_INTROSPECT_1_0_XML_PUBLIC_IDENTIFIER "-//freedesktop//DTD D-BUS Object Introspection 1.0//EN" -/** XML system identifier of the introspection format version 1.0 */ -#define DBUS_INTROSPECT_1_0_XML_SYSTEM_IDENTIFIER "http://www.freedesktop.org/standards/dbus/1.0/introspect.dtd" -/** XML document type declaration of the introspection format version 1.0 */ -#define DBUS_INTROSPECT_1_0_XML_DOCTYPE_DECL_NODE "<!DOCTYPE node PUBLIC \""DBUS_INTROSPECT_1_0_XML_PUBLIC_IDENTIFIER"\"\n\""DBUS_INTROSPECT_1_0_XML_SYSTEM_IDENTIFIER"\">\n" - -/** @} */ - -#ifdef __cplusplus -#if 0 -{ /* avoids confusing emacs indentation */ -#endif -} -#endif - -#endif /* DBUS_PROTOCOL_H */ diff --git a/include/dbus-1/dbus/dbus-resources.h b/include/dbus-1/dbus/dbus-resources.h deleted file mode 100644 index 4763a97f..00000000 --- a/include/dbus-1/dbus/dbus-resources.h +++ /dev/null @@ -1,57 +0,0 @@ -/* -*- mode: C; c-file-style: "gnu"; indent-tabs-mode: nil; -*- */ -/* dbus-resources.h Resource tracking/limits - * - * Copyright (C) 2003 Red Hat Inc. - * - * Licensed under the Academic Free License version 2.1 - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2 of the License, or - * (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with this program; if not, write to the Free Software - * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA - * - */ -#ifndef DBUS_RESOURCES_H -#define DBUS_RESOURCES_H - -#include <dbus/dbus-macros.h> -#include <dbus/dbus-errors.h> -#include <dbus/dbus-connection.h> - -DBUS_BEGIN_DECLS - -typedef struct DBusCounter DBusCounter; - -typedef void (* DBusCounterNotifyFunction) (DBusCounter *counter, - void *user_data); - -DBusCounter* _dbus_counter_new (void); -DBusCounter* _dbus_counter_ref (DBusCounter *counter); -void _dbus_counter_unref (DBusCounter *counter); - -void _dbus_counter_adjust_size (DBusCounter *counter, - long delta); -void _dbus_counter_adjust_unix_fd (DBusCounter *counter, - long delta); -long _dbus_counter_get_size_value (DBusCounter *counter); -long _dbus_counter_get_unix_fd_value (DBusCounter *counter); - -void _dbus_counter_set_notify (DBusCounter *counter, - long size_guard_value, - long unix_fd_guard_value, - DBusCounterNotifyFunction function, - void *user_data); - - -DBUS_END_DECLS - -#endif /* DBUS_RESOURCES_H */ diff --git a/include/dbus-1/dbus/dbus-server-debug-pipe.h b/include/dbus-1/dbus/dbus-server-debug-pipe.h deleted file mode 100644 index 4574311d..00000000 --- a/include/dbus-1/dbus/dbus-server-debug-pipe.h +++ /dev/null @@ -1,47 +0,0 @@ -/* -*- mode: C; c-file-style: "gnu"; indent-tabs-mode: nil; -*- */ -/* dbus-server-debug-pipe.h In-proc debug server implementation - * - * Copyright (C) 2003 CodeFactory AB - * Copyright (C) 2003 Red Hat, Inc. - * - * Licensed under the Academic Free License version 2.1 - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2 of the License, or - * (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with this program; if not, write to the Free Software - * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA - * - */ -#ifndef DBUS_SERVER_DEBUG_PIPE_H -#define DBUS_SERVER_DEBUG_PIPE_H - -#include <dbus/dbus-internals.h> -#include <dbus/dbus-server-protected.h> -#include <dbus/dbus-transport-protected.h> - -DBUS_BEGIN_DECLS - -DBusServer* _dbus_server_debug_pipe_new (const char *server_name, - DBusError *error); -DBusTransport* _dbus_transport_debug_pipe_new (const char *server_name, - DBusError *error); -DBusServerListenResult _dbus_server_listen_debug_pipe (DBusAddressEntry *entry, - DBusServer **server_p, - DBusError *error); -DBusTransportOpenResult _dbus_transport_open_debug_pipe (DBusAddressEntry *entry, - DBusTransport **transport_p, - DBusError *error); - - -DBUS_END_DECLS - -#endif /* DBUS_SERVER_DEBUG_PIPE_H */ diff --git a/include/dbus-1/dbus/dbus-server-protected.h b/include/dbus-1/dbus/dbus-server-protected.h deleted file mode 100644 index cc2de8dd..00000000 --- a/include/dbus-1/dbus/dbus-server-protected.h +++ /dev/null @@ -1,159 +0,0 @@ -/* -*- mode: C; c-file-style: "gnu"; indent-tabs-mode: nil; -*- */ -/* dbus-server-protected.h Used by subclasses of DBusServer object (internal to D-Bus implementation) - * - * Copyright (C) 2002 Red Hat Inc. - * - * Licensed under the Academic Free License version 2.1 - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2 of the License, or - * (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with this program; if not, write to the Free Software - * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA - * - */ -#ifndef DBUS_SERVER_PROTECTED_H -#define DBUS_SERVER_PROTECTED_H - -#include <dbus/dbus-internals.h> -#include <dbus/dbus-threads-internal.h> -#include <dbus/dbus-server.h> -#include <dbus/dbus-address.h> -#include <dbus/dbus-timeout.h> -#include <dbus/dbus-watch.h> -#include <dbus/dbus-resources.h> -#include <dbus/dbus-dataslot.h> -#include <dbus/dbus-string.h> - -DBUS_BEGIN_DECLS - -typedef struct DBusServerVTable DBusServerVTable; - -/** - * Virtual table to be implemented by all server "subclasses" - */ -struct DBusServerVTable -{ - void (* finalize) (DBusServer *server); - /**< The finalize method must free the server. */ - - void (* disconnect) (DBusServer *server); - /**< Disconnect this server. */ -}; - -/** - * Internals of DBusServer object - */ -struct DBusServer -{ - DBusAtomic refcount; /**< Reference count. */ - const DBusServerVTable *vtable; /**< Virtual methods for this instance. */ - DBusMutex *mutex; /**< Lock on the server object */ - - DBusGUID guid; /**< Globally unique ID of server */ - - DBusString guid_hex; /**< Hex-encoded version of GUID */ - - DBusWatchList *watches; /**< Our watches */ - DBusTimeoutList *timeouts; /**< Our timeouts */ - - char *address; /**< Address this server is listening on. */ - - int max_connections; /**< Max number of connections allowed at once. */ - - DBusDataSlotList slot_list; /**< Data stored by allocated integer ID */ - - DBusNewConnectionFunction new_connection_function; - /**< Callback to invoke when a new connection is created. */ - void *new_connection_data; - /**< Data for new connection callback */ - DBusFreeFunction new_connection_free_data_function; - /**< Callback to invoke to free new_connection_data - * when server is finalized or data is replaced. - */ - - char **auth_mechanisms; /**< Array of allowed authentication mechanisms */ - - unsigned int disconnected : 1; /**< TRUE if we are disconnected. */ - -#ifndef DBUS_DISABLE_CHECKS - unsigned int have_server_lock : 1; /**< Does someone have the server mutex locked */ -#endif -}; - -dbus_bool_t _dbus_server_init_base (DBusServer *server, - const DBusServerVTable *vtable, - const DBusString *address); -void _dbus_server_finalize_base (DBusServer *server); -dbus_bool_t _dbus_server_add_watch (DBusServer *server, - DBusWatch *watch); -void _dbus_server_remove_watch (DBusServer *server, - DBusWatch *watch); -void _dbus_server_toggle_watch (DBusServer *server, - DBusWatch *watch, - dbus_bool_t enabled); -dbus_bool_t _dbus_server_add_timeout (DBusServer *server, - DBusTimeout *timeout); -void _dbus_server_remove_timeout (DBusServer *server, - DBusTimeout *timeout); -void _dbus_server_toggle_timeout (DBusServer *server, - DBusTimeout *timeout, - dbus_bool_t enabled); - -void _dbus_server_ref_unlocked (DBusServer *server); -void _dbus_server_unref_unlocked (DBusServer *server); - -typedef enum -{ - DBUS_SERVER_LISTEN_NOT_HANDLED, /**< we aren't in charge of this address type */ - DBUS_SERVER_LISTEN_OK, /**< we set up the listen */ - DBUS_SERVER_LISTEN_BAD_ADDRESS, /**< malformed address */ - DBUS_SERVER_LISTEN_DID_NOT_CONNECT /**< well-formed address but failed to set it up */ -} DBusServerListenResult; - -DBusServerListenResult _dbus_server_listen_platform_specific (DBusAddressEntry *entry, - DBusServer **server_p, - DBusError *error); - -#ifdef DBUS_DISABLE_CHECKS -#define TOOK_LOCK_CHECK(server) -#define RELEASING_LOCK_CHECK(server) -#define HAVE_LOCK_CHECK(server) -#else -#define TOOK_LOCK_CHECK(server) do { \ - _dbus_assert (!(server)->have_server_lock); \ - (server)->have_server_lock = TRUE; \ - } while (0) -#define RELEASING_LOCK_CHECK(server) do { \ - _dbus_assert ((server)->have_server_lock); \ - (server)->have_server_lock = FALSE; \ - } while (0) -#define HAVE_LOCK_CHECK(server) _dbus_assert ((server)->have_server_lock) -/* A "DO_NOT_HAVE_LOCK_CHECK" is impossible since we need the lock to check the flag */ -#endif - -#define TRACE_LOCKS 0 - -#define SERVER_LOCK(server) do { \ - if (TRACE_LOCKS) { _dbus_verbose ("LOCK\n"); } \ - _dbus_mutex_lock ((server)->mutex); \ - TOOK_LOCK_CHECK (server); \ - } while (0) - -#define SERVER_UNLOCK(server) do { \ - if (TRACE_LOCKS) { _dbus_verbose ("UNLOCK\n"); } \ - RELEASING_LOCK_CHECK (server); \ - _dbus_mutex_unlock ((server)->mutex); \ - } while (0) - -DBUS_END_DECLS - -#endif /* DBUS_SERVER_PROTECTED_H */ diff --git a/include/dbus-1/dbus/dbus-server-socket.h b/include/dbus-1/dbus/dbus-server-socket.h deleted file mode 100644 index 0a7c7891..00000000 --- a/include/dbus-1/dbus/dbus-server-socket.h +++ /dev/null @@ -1,52 +0,0 @@ -/* -*- mode: C; c-file-style: "gnu"; indent-tabs-mode: nil; -*- */ -/* dbus-server-socket.h Server implementation for sockets - * - * Copyright (C) 2002, 2006 Red Hat Inc. - * - * Licensed under the Academic Free License version 2.1 - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2 of the License, or - * (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with this program; if not, write to the Free Software - * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA - * - */ -#ifndef DBUS_SERVER_SOCKET_H -#define DBUS_SERVER_SOCKET_H - -#include <dbus/dbus-internals.h> -#include <dbus/dbus-server-protected.h> -#include <dbus/dbus-nonce.h> - -DBUS_BEGIN_DECLS - -DBusServer* _dbus_server_new_for_socket (int *fds, - int n_fds, - const DBusString *address, - DBusNonceFile *noncefile); -DBusServer* _dbus_server_new_for_tcp_socket (const char *host, - const char *bind, - const char *port, - const char *family, - DBusError *error, - dbus_bool_t use_nonce); -DBusServerListenResult _dbus_server_listen_socket (DBusAddressEntry *entry, - DBusServer **server_p, - DBusError *error); - - -void _dbus_server_socket_own_filename (DBusServer *server, - char *filename); - -DBUS_END_DECLS - -#endif /* DBUS_SERVER_SOCKET_H */ diff --git a/include/dbus-1/dbus/dbus-server-unix.h b/include/dbus-1/dbus/dbus-server-unix.h deleted file mode 100644 index 92b996ca..00000000 --- a/include/dbus-1/dbus/dbus-server-unix.h +++ /dev/null @@ -1,37 +0,0 @@ -/* -*- mode: C; c-file-style: "gnu"; indent-tabs-mode: nil; -*- */ -/* dbus-server-unix.h Server implementation for Unix network protocols. - * - * Copyright (C) 2002 Red Hat Inc. - * - * Licensed under the Academic Free License version 2.1 - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2 of the License, or - * (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with this program; if not, write to the Free Software - * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA - * - */ -#ifndef DBUS_SERVER_UNIX_H -#define DBUS_SERVER_UNIX_H - -#include <dbus/dbus-internals.h> -#include <dbus/dbus-server-protected.h> - -DBUS_BEGIN_DECLS - -DBusServer* _dbus_server_new_for_domain_socket (const char *path, - dbus_bool_t abstract, - DBusError *error); - -DBUS_END_DECLS - -#endif /* DBUS_SERVER_UNIX_H */ diff --git a/include/dbus-1/dbus/dbus-server-win.h b/include/dbus-1/dbus/dbus-server-win.h deleted file mode 100644 index 65c27568..00000000 --- a/include/dbus-1/dbus/dbus-server-win.h +++ /dev/null @@ -1,36 +0,0 @@ -/* -*- mode: C; c-file-style: "gnu"; indent-tabs-mode: nil; -*- */ -/* dbus-server-win.h Server implementation for windows network protocols. - * - * Copyright (C) 2002 Red Hat Inc. - * Copyright (C) 2007 Ralf Habacker <ralf.habacker@freenet.de> - * - * Licensed under the Academic Free License version 2.1 - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2 of the License, or - * (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with this program; if not, write to the Free Software - * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA - * - */ -#ifndef DBUS_SERVER_WIN_H -#define DBUS_SERVER_WIN_H - -#include <dbus/dbus-internals.h> -#include <dbus/dbus-server-protected.h> - -DBUS_BEGIN_DECLS - -/* add definitions here */ - -DBUS_END_DECLS - -#endif /* DBUS_SERVER_WIN_H */ diff --git a/include/dbus-1/dbus/dbus-server.h b/include/dbus-1/dbus/dbus-server.h deleted file mode 100644 index bdbefa0f..00000000 --- a/include/dbus-1/dbus/dbus-server.h +++ /dev/null @@ -1,106 +0,0 @@ -/* -*- mode: C; c-file-style: "gnu"; indent-tabs-mode: nil; -*- */ -/* dbus-server.h DBusServer object - * - * Copyright (C) 2002, 2003 Red Hat Inc. - * - * Licensed under the Academic Free License version 2.1 - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2 of the License, or - * (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with this program; if not, write to the Free Software - * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA - * - */ -#if !defined (DBUS_INSIDE_DBUS_H) && !defined (DBUS_COMPILATION) -#error "Only <dbus/dbus.h> can be included directly, this file may disappear or change contents." -#endif - -#ifndef DBUS_SERVER_H -#define DBUS_SERVER_H - -#include <dbus/dbus-errors.h> -#include <dbus/dbus-message.h> -#include <dbus/dbus-connection.h> -#include <dbus/dbus-protocol.h> - -DBUS_BEGIN_DECLS - -/** - * @addtogroup DBusServer - * @{ - */ - -typedef struct DBusServer DBusServer; - -/** Called when a new connection to the server is available. Must reference and save the new - * connection, or close the new connection. Set with dbus_server_set_new_connection_function(). - */ -typedef void (* DBusNewConnectionFunction) (DBusServer *server, - DBusConnection *new_connection, - void *data); - -DBUS_EXPORT -DBusServer* dbus_server_listen (const char *address, - DBusError *error); -DBUS_EXPORT -DBusServer* dbus_server_ref (DBusServer *server); -DBUS_EXPORT -void dbus_server_unref (DBusServer *server); -DBUS_EXPORT -void dbus_server_disconnect (DBusServer *server); -DBUS_EXPORT -dbus_bool_t dbus_server_get_is_connected (DBusServer *server); -DBUS_EXPORT -char* dbus_server_get_address (DBusServer *server); -DBUS_EXPORT -char* dbus_server_get_id (DBusServer *server); -DBUS_EXPORT -void dbus_server_set_new_connection_function (DBusServer *server, - DBusNewConnectionFunction function, - void *data, - DBusFreeFunction free_data_function); -DBUS_EXPORT -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); -DBUS_EXPORT -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); -DBUS_EXPORT -dbus_bool_t dbus_server_set_auth_mechanisms (DBusServer *server, - const char **mechanisms); - -DBUS_EXPORT -dbus_bool_t dbus_server_allocate_data_slot (dbus_int32_t *slot_p); -DBUS_EXPORT -void dbus_server_free_data_slot (dbus_int32_t *slot_p); -DBUS_EXPORT -dbus_bool_t dbus_server_set_data (DBusServer *server, - int slot, - void *data, - DBusFreeFunction free_data_func); -DBUS_EXPORT -void* dbus_server_get_data (DBusServer *server, - int slot); - -/** @} */ - -DBUS_END_DECLS - -#endif /* DBUS_SERVER_H */ diff --git a/include/dbus-1/dbus/dbus-sha.h b/include/dbus-1/dbus/dbus-sha.h deleted file mode 100644 index c48035b9..00000000 --- a/include/dbus-1/dbus/dbus-sha.h +++ /dev/null @@ -1,55 +0,0 @@ -/* -*- mode: C; c-file-style: "gnu"; indent-tabs-mode: nil; -*- */ -/* dbus-sha.h SHA-1 implementation - * - * Copyright (C) 2003 Red Hat Inc. - * - * Licensed under the Academic Free License version 2.1 - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2 of the License, or - * (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with this program; if not, write to the Free Software - * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA - * - */ -#ifndef DBUS_SHA_H -#define DBUS_SHA_H - -#include <dbus/dbus-macros.h> -#include <dbus/dbus-errors.h> -#include <dbus/dbus-string.h> - -DBUS_BEGIN_DECLS - -typedef struct DBusSHAContext DBusSHAContext; - -/** - * Struct storing state of the SHA algorithm - */ -struct DBusSHAContext -{ - dbus_uint32_t digest[5]; /**< Message digest */ - dbus_uint32_t count_lo; /**< 64-bit bit count */ - dbus_uint32_t count_hi; /**< No clue */ - dbus_uint32_t data[16]; /**< SHA data buffer */ -}; - -void _dbus_sha_init (DBusSHAContext *context); -void _dbus_sha_update (DBusSHAContext *context, - const DBusString *data); -dbus_bool_t _dbus_sha_final (DBusSHAContext *context, - DBusString *results); -dbus_bool_t _dbus_sha_compute (const DBusString *data, - DBusString *ascii_output); - -DBUS_END_DECLS - -#endif /* DBUS_SHA_H */ diff --git a/include/dbus-1/dbus/dbus-shared.h b/include/dbus-1/dbus/dbus-shared.h deleted file mode 100644 index 6a576704..00000000 --- a/include/dbus-1/dbus/dbus-shared.h +++ /dev/null @@ -1,131 +0,0 @@ -/* -*- mode: C; c-file-style: "gnu"; indent-tabs-mode: nil; -*- */ -/* dbus-shared.h Stuff used by both dbus/dbus.h low-level and C/C++ binding APIs - * - * Copyright (C) 2004 Red Hat, Inc. - * - * Licensed under the Academic Free License version 2.1 - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2 of the License, or - * (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with this program; if not, write to the Free Software - * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA - * - */ - -#ifndef DBUS_SHARED_H -#define DBUS_SHARED_H - -/* Don't include anything in here from anywhere else. It's - * intended for use by any random library. - */ - -#ifdef __cplusplus -extern "C" { -#if 0 -} /* avoids confusing emacs indentation */ -#endif -#endif - -/* Normally docs are in .c files, but there isn't a .c file for this. */ -/** - * @defgroup DBusShared Shared constants - * @ingroup DBus - * - * @brief Shared header included by both libdbus and C/C++ bindings such as the GLib bindings. - * - * Usually a C/C++ binding such as the GLib or Qt binding won't want to include dbus.h in its - * public headers. However, a few constants and macros may be useful to include; those are - * found here and in dbus-protocol.h - * - * @{ - */ - - -/** - * Well-known bus types. See dbus_bus_get(). - */ -typedef enum -{ - DBUS_BUS_SESSION, /**< The login session bus */ - DBUS_BUS_SYSTEM, /**< The systemwide bus */ - DBUS_BUS_STARTER /**< The bus that started us, if any */ -} DBusBusType; - -/** - * Results that a message handler can return. - */ -typedef enum -{ - DBUS_HANDLER_RESULT_HANDLED, /**< Message has had its effect - no need to run more handlers. */ - DBUS_HANDLER_RESULT_NOT_YET_HANDLED, /**< Message has not had any effect - see if other handlers want it. */ - DBUS_HANDLER_RESULT_NEED_MEMORY /**< Need more memory in order to return #DBUS_HANDLER_RESULT_HANDLED or #DBUS_HANDLER_RESULT_NOT_YET_HANDLED. Please try again later with more memory. */ -} DBusHandlerResult; - -/* Bus names */ - -/** The bus name used to talk to the bus itself. */ -#define DBUS_SERVICE_DBUS "org.freedesktop.DBus" - -/* Paths */ -/** The object path used to talk to the bus itself. */ -#define DBUS_PATH_DBUS "/org/freedesktop/DBus" -/** The object path used in local/in-process-generated messages. */ -#define DBUS_PATH_LOCAL "/org/freedesktop/DBus/Local" - -/* Interfaces, these #define don't do much other than - * catch typos at compile time - */ -/** The interface exported by the object with #DBUS_SERVICE_DBUS and #DBUS_PATH_DBUS */ -#define DBUS_INTERFACE_DBUS "org.freedesktop.DBus" -/** The interface supported by introspectable objects */ -#define DBUS_INTERFACE_INTROSPECTABLE "org.freedesktop.DBus.Introspectable" -/** The interface supported by objects with properties */ -#define DBUS_INTERFACE_PROPERTIES "org.freedesktop.DBus.Properties" -/** The interface supported by most dbus peers */ -#define DBUS_INTERFACE_PEER "org.freedesktop.DBus.Peer" - -/** This is a special interface whose methods can only be invoked - * by the local implementation (messages from remote apps aren't - * allowed to specify this interface). - */ -#define DBUS_INTERFACE_LOCAL "org.freedesktop.DBus.Local" - -/* Owner flags */ -#define DBUS_NAME_FLAG_ALLOW_REPLACEMENT 0x1 /**< Allow another service to become the primary owner if requested */ -#define DBUS_NAME_FLAG_REPLACE_EXISTING 0x2 /**< Request to replace the current primary owner */ -#define DBUS_NAME_FLAG_DO_NOT_QUEUE 0x4 /**< If we can not become the primary owner do not place us in the queue */ - -/* Replies to request for a name */ -#define DBUS_REQUEST_NAME_REPLY_PRIMARY_OWNER 1 /**< Service has become the primary owner of the requested name */ -#define DBUS_REQUEST_NAME_REPLY_IN_QUEUE 2 /**< Service could not become the primary owner and has been placed in the queue */ -#define DBUS_REQUEST_NAME_REPLY_EXISTS 3 /**< Service is already in the queue */ -#define DBUS_REQUEST_NAME_REPLY_ALREADY_OWNER 4 /**< Service is already the primary owner */ - -/* Replies to releasing a name */ -#define DBUS_RELEASE_NAME_REPLY_RELEASED 1 /**< Service was released from the given name */ -#define DBUS_RELEASE_NAME_REPLY_NON_EXISTENT 2 /**< The given name does not exist on the bus */ -#define DBUS_RELEASE_NAME_REPLY_NOT_OWNER 3 /**< Service is not an owner of the given name */ - -/* Replies to service starts */ -#define DBUS_START_REPLY_SUCCESS 1 /**< Service was auto started */ -#define DBUS_START_REPLY_ALREADY_RUNNING 2 /**< Service was already running */ - -/** @} */ - -#ifdef __cplusplus -#if 0 -{ /* avoids confusing emacs indentation */ -#endif -} -#endif - -#endif /* DBUS_SHARED_H */ diff --git a/include/dbus-1/dbus/dbus-shell.h b/include/dbus-1/dbus/dbus-shell.h deleted file mode 100644 index 06da274e..00000000 --- a/include/dbus-1/dbus/dbus-shell.h +++ /dev/null @@ -1,41 +0,0 @@ -/* -*- mode: C; c-file-style: "gnu"; indent-tabs-mode: nil; -*- */ -/* dbus-shell.h Shell command line utility functions. - * - * Copyright (C) 2002, 2003 Red Hat, Inc. - * Copyright (C) 2003 CodeFactory AB - * - * Licensed under the Academic Free License version 2.1 - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2 of the License, or - * (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with this program; if not, write to the Free Software - * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA - * - */ - - -#ifndef DBUS_SHELL_H -#define DBUS_SHELL_H - -DBUS_BEGIN_DECLS - -char* _dbus_shell_unquote (const char *quoted_string); -dbus_bool_t _dbus_shell_parse_argv (const char *command_line, - int *argcp, - char ***argvp, - DBusError *error); - -DBUS_END_DECLS - -#endif /* DBUS_SHELL_H */ - - diff --git a/include/dbus-1/dbus/dbus-signature.h b/include/dbus-1/dbus/dbus-signature.h deleted file mode 100644 index ebf00c1e..00000000 --- a/include/dbus-1/dbus/dbus-signature.h +++ /dev/null @@ -1,92 +0,0 @@ -/* -*- mode: C; c-file-style: "gnu"; indent-tabs-mode: nil; -*- */ -/* dbus-signatures.h utility functions for D-Bus types - * - * Copyright (C) 2005 Red Hat Inc. - * - * Licensed under the Academic Free License version 2.1 - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2 of the License, or - * (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with this program; if not, write to the Free Software - * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA - * - */ -#if !defined (DBUS_INSIDE_DBUS_H) && !defined (DBUS_COMPILATION) -#error "Only <dbus/dbus.h> can be included directly, this file may disappear or change contents." -#endif - -#ifndef DBUS_SIGNATURES_H -#define DBUS_SIGNATURES_H - -#include <dbus/dbus-macros.h> -#include <dbus/dbus-types.h> -#include <dbus/dbus-errors.h> - -DBUS_BEGIN_DECLS - -/** - * @addtogroup DBusSignature - * @{ - */ - -/** - * DBusSignatureIter struct; contains no public fields - */ -typedef struct -{ - void *dummy1; /**< Don't use this */ - void *dummy2; /**< Don't use this */ - dbus_uint32_t dummy8; /**< Don't use this */ - int dummy12; /**< Don't use this */ - int dummy17; /**< Don't use this */ -} DBusSignatureIter; - -DBUS_EXPORT -void dbus_signature_iter_init (DBusSignatureIter *iter, - const char *signature); - -DBUS_EXPORT -int dbus_signature_iter_get_current_type (const DBusSignatureIter *iter); - -DBUS_EXPORT -char * dbus_signature_iter_get_signature (const DBusSignatureIter *iter); - -DBUS_EXPORT -int dbus_signature_iter_get_element_type (const DBusSignatureIter *iter); - -DBUS_EXPORT -dbus_bool_t dbus_signature_iter_next (DBusSignatureIter *iter); - -DBUS_EXPORT -void dbus_signature_iter_recurse (const DBusSignatureIter *iter, - DBusSignatureIter *subiter); - -DBUS_EXPORT -dbus_bool_t dbus_signature_validate (const char *signature, - DBusError *error); - -DBUS_EXPORT -dbus_bool_t dbus_signature_validate_single (const char *signature, - DBusError *error); - -DBUS_EXPORT -dbus_bool_t dbus_type_is_basic (int typecode); -DBUS_EXPORT -dbus_bool_t dbus_type_is_container (int typecode); -DBUS_EXPORT -dbus_bool_t dbus_type_is_fixed (int typecode); - -/** @} */ - -DBUS_END_DECLS - -#endif /* DBUS_SIGNATURE_H */ diff --git a/include/dbus-1/dbus/dbus-sockets-win.h b/include/dbus-1/dbus/dbus-sockets-win.h deleted file mode 100644 index 5dead058..00000000 --- a/include/dbus-1/dbus/dbus-sockets-win.h +++ /dev/null @@ -1,76 +0,0 @@ -/* -*- mode: C; c-file-style: "gnu"; indent-tabs-mode: nil; -*- */ -/* dbus-sockets.h Wrappers around socket features (internal to D-BUS implementation) - * - * Copyright (C) 2005 Novell, Inc. - * - * Licensed under the Academic Free License version 2.1 - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2 of the License, or - * (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with this program; if not, write to the Free Software - * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA - * - */ - -#ifndef DBUS_SOCKETS_H -#define DBUS_SOCKETS_H - -#if defined(DBUS_WIN) || defined(DBUS_WINCE) - - - -#ifndef STRICT -#define STRICT -#include <winsock2.h> -#undef STRICT -#endif -#include <winsock2.h> - -#undef interface - -#if HAVE_ERRNO_H -#include <errno.h> -#endif - -/* Make use of the fact that the WSAE* error codes don't - * overlap with errno E* codes. Wrapper functions store - * the return value from WSAGetLastError() in errno. - */ -#if defined(EPROTONOSUPPORT) || \ - defined(EAFNOSUPPORT) || \ - defined(EWOULDBLOCK) -#error This does not look like Win32 and the Microsoft C library -#endif - -#define DBUS_SOCKET_IS_INVALID(s) ((SOCKET)(s) == INVALID_SOCKET) -#define DBUS_SOCKET_API_RETURNS_ERROR(n) ((n) == SOCKET_ERROR) -#define DBUS_SOCKET_SET_ERRNO() (_dbus_win_set_errno (WSAGetLastError())) - -#define DBUS_CLOSE_SOCKET(s) closesocket(s) - -#else - -#include <sys/socket.h> -#include <sys/un.h> -#include <netinet/in.h> -#include <netdb.h> -#include <errno.h> - -#define DBUS_SOCKET_IS_INVALID(s) ((s) < 0) -#define DBUS_SOCKET_API_RETURNS_ERROR(n) ((n) < 0) -#define DBUS_SOCKET_SET_ERRNO() /* empty */ - -#define DBUS_CLOSE_SOCKET(s) close(s) - -#endif /* !Win32 */ - -#endif /* DBUS_SOCKETS_H */ diff --git a/include/dbus-1/dbus/dbus-spawn.h b/include/dbus-1/dbus/dbus-spawn.h deleted file mode 100644 index 5af54b72..00000000 --- a/include/dbus-1/dbus/dbus-spawn.h +++ /dev/null @@ -1,61 +0,0 @@ -/* -*- mode: C; c-file-style: "gnu"; indent-tabs-mode: nil; -*- */ -/* dbus-spawn.h Wrapper around fork/exec - * - * Copyright (C) 2002, 2003 Red Hat, Inc. - * Copyright (C) 2003 CodeFactory AB - * - * Licensed under the Academic Free License version 2.1 - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2 of the License, or - * (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with this program; if not, write to the Free Software - * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA - * - */ - -#ifndef DBUS_SPAWN_H -#define DBUS_SPAWN_H - -#include <dbus/dbus-string.h> -#include <dbus/dbus-errors.h> -#include <dbus/dbus-watch.h> - -DBUS_BEGIN_DECLS - -typedef void (* DBusSpawnChildSetupFunc) (void *user_data); - -typedef struct DBusBabysitter DBusBabysitter; - -dbus_bool_t _dbus_spawn_async_with_babysitter (DBusBabysitter **sitter_p, - char **argv, - char **env, - DBusSpawnChildSetupFunc child_setup, - void *user_data, - DBusError *error); -DBusBabysitter* _dbus_babysitter_ref (DBusBabysitter *sitter); -void _dbus_babysitter_unref (DBusBabysitter *sitter); -void _dbus_babysitter_kill_child (DBusBabysitter *sitter); -dbus_bool_t _dbus_babysitter_get_child_exited (DBusBabysitter *sitter); -void _dbus_babysitter_set_child_exit_error (DBusBabysitter *sitter, - DBusError *error); -dbus_bool_t _dbus_babysitter_get_child_exit_status (DBusBabysitter *sitter, - int *status); -dbus_bool_t _dbus_babysitter_set_watch_functions (DBusBabysitter *sitter, - DBusAddWatchFunction add_function, - DBusRemoveWatchFunction remove_function, - DBusWatchToggledFunction toggled_function, - void *data, - DBusFreeFunction free_data_function); - -DBUS_END_DECLS - -#endif /* DBUS_SPAWN_H */ diff --git a/include/dbus-1/dbus/dbus-string-private.h b/include/dbus-1/dbus/dbus-string-private.h deleted file mode 100644 index 365d89a3..00000000 --- a/include/dbus-1/dbus/dbus-string-private.h +++ /dev/null @@ -1,124 +0,0 @@ -/* -*- mode: C; c-file-style: "gnu"; indent-tabs-mode: nil; -*- */ -/* dbus-string-private.h String utility class (internal to D-Bus implementation) - * - * Copyright (C) 2002, 2003 Red Hat, Inc. - * - * Licensed under the Academic Free License version 2.1 - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2 of the License, or - * (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with this program; if not, write to the Free Software - * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA - * - */ - -#ifndef DBUS_STRING_PRIVATE_H -#define DBUS_STRING_PRIVATE_H - -#include <dbus/dbus-memory.h> -#include <dbus/dbus-types.h> - -#ifndef DBUS_CAN_USE_DBUS_STRING_PRIVATE -#error "Don't go including dbus-string-private.h for no good reason" -#endif - -DBUS_BEGIN_DECLS - -/** - * @brief Internals of DBusString. - * - * DBusString internals. DBusString is an opaque objects, it must be - * used via accessor functions. - */ -typedef struct -{ - unsigned char *str; /**< String data, plus nul termination */ - int len; /**< Length without nul */ - int allocated; /**< Allocated size of data */ - int max_length; /**< Max length of this string, without nul byte */ - unsigned int constant : 1; /**< String data is not owned by DBusString */ - unsigned int locked : 1; /**< DBusString has been locked and can't be changed */ - unsigned int invalid : 1; /**< DBusString is invalid (e.g. already freed) */ - unsigned int align_offset : 3; /**< str - align_offset is the actual malloc block */ -} DBusRealString; - - -/** - * @defgroup DBusStringInternals DBusString implementation details - * @ingroup DBusInternals - * @brief DBusString implementation details - * - * The guts of DBusString. - * - * @{ - */ - -/** - * This is the maximum max length (and thus also the maximum length) - * of a DBusString - */ -#define _DBUS_STRING_MAX_MAX_LENGTH (_DBUS_INT32_MAX - _DBUS_STRING_ALLOCATION_PADDING) - -/** - * Checks a bunch of assertions about a string object - * - * @param real the DBusRealString - */ -#define DBUS_GENERIC_STRING_PREAMBLE(real) _dbus_assert ((real) != NULL); _dbus_assert (!(real)->invalid); _dbus_assert ((real)->len >= 0); _dbus_assert ((real)->allocated >= 0); _dbus_assert ((real)->max_length >= 0); _dbus_assert ((real)->len <= ((real)->allocated - _DBUS_STRING_ALLOCATION_PADDING)); _dbus_assert ((real)->len <= (real)->max_length) - -/** - * Checks assertions about a string object that needs to be - * modifiable - may not be locked or const. Also declares - * the "real" variable pointing to DBusRealString. - * @param str the string - */ -#define DBUS_STRING_PREAMBLE(str) DBusRealString *real = (DBusRealString*) str; \ - DBUS_GENERIC_STRING_PREAMBLE (real); \ - _dbus_assert (!(real)->constant); \ - _dbus_assert (!(real)->locked) - -/** - * Checks assertions about a string object that may be locked but - * can't be const. i.e. a string object that we can free. Also - * declares the "real" variable pointing to DBusRealString. - * - * @param str the string - */ -#define DBUS_LOCKED_STRING_PREAMBLE(str) DBusRealString *real = (DBusRealString*) str; \ - DBUS_GENERIC_STRING_PREAMBLE (real); \ - _dbus_assert (!(real)->constant) - -/** - * Checks assertions about a string that may be const or locked. Also - * declares the "real" variable pointing to DBusRealString. - * @param str the string. - */ -#define DBUS_CONST_STRING_PREAMBLE(str) const DBusRealString *real = (DBusRealString*) str; \ - DBUS_GENERIC_STRING_PREAMBLE (real) - -/** - * Checks for ASCII blank byte - * @param c the byte - */ -#define DBUS_IS_ASCII_BLANK(c) ((c) == ' ' || (c) == '\t') - -/** - * Checks for ASCII whitespace byte - * @param c the byte - */ -#define DBUS_IS_ASCII_WHITE(c) ((c) == ' ' || (c) == '\t' || (c) == '\n' || (c) == '\r') - -/** @} */ - -DBUS_END_DECLS - -#endif /* DBUS_STRING_PRIVATE_H */ diff --git a/include/dbus-1/dbus/dbus-string.h b/include/dbus-1/dbus/dbus-string.h deleted file mode 100644 index 2f1ed31c..00000000 --- a/include/dbus-1/dbus/dbus-string.h +++ /dev/null @@ -1,332 +0,0 @@ -/* -*- mode: C; c-file-style: "gnu"; indent-tabs-mode: nil; -*- */ -/* dbus-string.h String utility class (internal to D-Bus implementation) - * - * Copyright (C) 2002, 2003 Red Hat, Inc. - * Copyright (C) 2006 Ralf Habacker <ralf.habacker@freenet.de> - * - * Licensed under the Academic Free License version 2.1 - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2 of the License, or - * (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with this program; if not, write to the Free Software - * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA - * - */ - -#ifndef DBUS_STRING_H -#define DBUS_STRING_H - -#include <dbus/dbus-macros.h> -#include <dbus/dbus-types.h> -#include <dbus/dbus-memory.h> - -#include <stdarg.h> - -DBUS_BEGIN_DECLS - -/** - * DBusString object - */ - -typedef struct DBusString DBusString; - -struct DBusString -{ -#if defined(DBUS_WIN) && defined(_DEBUG) - const char *dummy1; /**< placeholder */ -#else - const void *dummy1; /**< placeholder */ -#endif - int dummy2; /**< placeholder */ - int dummy3; /**< placeholder */ - int dummy4; /**< placeholder */ - unsigned int dummy5 : 1; /**< placeholder */ - unsigned int dummy6 : 1; /**< placeholder */ - unsigned int dummy7 : 1; /**< placeholder */ - unsigned int dummy8 : 3; /**< placeholder */ -}; - -#ifdef DBUS_DISABLE_ASSERT -/* Some simple inlining hacks; the current linker is not smart enough - * to inline non-exported symbols across files in the library. - * Note that these break type safety (due to the casts) - */ -#define _dbus_string_get_data(s) ((char*)(((DBusString*)(s))->dummy1)) -#define _dbus_string_get_length(s) (((DBusString*)(s))->dummy2) -#define _dbus_string_set_byte(s, i, b) ((((unsigned char*)(((DBusString*)(s))->dummy1))[(i)]) = (unsigned char) (b)) -#define _dbus_string_get_byte(s, i) (((const unsigned char*)(((DBusString*)(s))->dummy1))[(i)]) -#define _dbus_string_get_const_data(s) ((const char*)(((DBusString*)(s))->dummy1)) -#define _dbus_string_get_const_data_len(s,start,len) (((const char*)(((DBusString*)(s))->dummy1)) + (start)) -#endif - -dbus_bool_t _dbus_string_init (DBusString *str); -void _dbus_string_init_const (DBusString *str, - const char *value); -void _dbus_string_init_const_len (DBusString *str, - const char *value, - int len); -dbus_bool_t _dbus_string_init_preallocated (DBusString *str, - int allocate_size); -void _dbus_string_free (DBusString *str); -void _dbus_string_lock (DBusString *str); -dbus_bool_t _dbus_string_compact (DBusString *str, - int max_waste); -#ifndef _dbus_string_get_data -char* _dbus_string_get_data (DBusString *str); -#endif /* _dbus_string_get_data */ -#ifndef _dbus_string_get_const_data -const char* _dbus_string_get_const_data (const DBusString *str); -#endif /* _dbus_string_get_const_data */ -char* _dbus_string_get_data_len (DBusString *str, - int start, - int len); -#ifndef _dbus_string_get_const_data_len -const char* _dbus_string_get_const_data_len (const DBusString *str, - int start, - int len); -#endif -#ifndef _dbus_string_set_byte -void _dbus_string_set_byte (DBusString *str, - int i, - unsigned char byte); -#endif -#ifndef _dbus_string_get_byte -unsigned char _dbus_string_get_byte (const DBusString *str, - int start); -#endif /* _dbus_string_get_byte */ -dbus_bool_t _dbus_string_insert_bytes (DBusString *str, - int i, - int n_bytes, - unsigned char byte); -dbus_bool_t _dbus_string_insert_byte (DBusString *str, - int i, - unsigned char byte); -dbus_bool_t _dbus_string_steal_data (DBusString *str, - char **data_return); -dbus_bool_t _dbus_string_steal_data_len (DBusString *str, - char **data_return, - int start, - int len); -dbus_bool_t _dbus_string_copy_data (const DBusString *str, - char **data_return); -dbus_bool_t _dbus_string_copy_data_len (const DBusString *str, - char **data_return, - int start, - int len); -void _dbus_string_copy_to_buffer (const DBusString *str, - char *buffer, - int len); -void _dbus_string_copy_to_buffer_with_nul (const DBusString *str, - char *buffer, - int avail_len); -#ifndef _dbus_string_get_length -int _dbus_string_get_length (const DBusString *str); -#endif /* !_dbus_string_get_length */ - -dbus_bool_t _dbus_string_lengthen (DBusString *str, - int additional_length); -void _dbus_string_shorten (DBusString *str, - int length_to_remove); -dbus_bool_t _dbus_string_set_length (DBusString *str, - int length); -dbus_bool_t _dbus_string_align_length (DBusString *str, - int alignment); -dbus_bool_t _dbus_string_alloc_space (DBusString *str, - int extra_bytes); -dbus_bool_t _dbus_string_append (DBusString *str, - const char *buffer); -dbus_bool_t _dbus_string_append_len (DBusString *str, - const char *buffer, - int len); -dbus_bool_t _dbus_string_append_int (DBusString *str, - long value); -dbus_bool_t _dbus_string_append_uint (DBusString *str, - unsigned long value); -dbus_bool_t _dbus_string_append_double (DBusString *str, - double value); -dbus_bool_t _dbus_string_append_byte (DBusString *str, - unsigned char byte); -dbus_bool_t _dbus_string_append_unichar (DBusString *str, - dbus_unichar_t ch); -dbus_bool_t _dbus_string_append_4_aligned (DBusString *str, - const unsigned char octets[4]); -dbus_bool_t _dbus_string_append_8_aligned (DBusString *str, - const unsigned char octets[8]); -dbus_bool_t _dbus_string_append_printf (DBusString *str, - const char *format, - ...) _DBUS_GNUC_PRINTF (2, 3); -dbus_bool_t _dbus_string_append_printf_valist (DBusString *str, - const char *format, - va_list args); -dbus_bool_t _dbus_string_insert_2_aligned (DBusString *str, - int insert_at, - const unsigned char octets[2]); -dbus_bool_t _dbus_string_insert_4_aligned (DBusString *str, - int insert_at, - const unsigned char octets[4]); -dbus_bool_t _dbus_string_insert_8_aligned (DBusString *str, - int insert_at, - const unsigned char octets[8]); -dbus_bool_t _dbus_string_insert_alignment (DBusString *str, - int *insert_at, - int alignment); -void _dbus_string_delete (DBusString *str, - int start, - int len); -dbus_bool_t _dbus_string_move (DBusString *source, - int start, - DBusString *dest, - int insert_at); -dbus_bool_t _dbus_string_copy (const DBusString *source, - int start, - DBusString *dest, - int insert_at); -dbus_bool_t _dbus_string_move_len (DBusString *source, - int start, - int len, - DBusString *dest, - int insert_at); -dbus_bool_t _dbus_string_copy_len (const DBusString *source, - int start, - int len, - DBusString *dest, - int insert_at); -dbus_bool_t _dbus_string_replace_len (const DBusString *source, - int start, - int len, - DBusString *dest, - int replace_at, - int replace_len); -dbus_bool_t _dbus_string_split_on_byte (DBusString *source, - unsigned char byte, - DBusString *tail); -void _dbus_string_get_unichar (const DBusString *str, - int start, - dbus_unichar_t *ch_return, - int *end_return); -dbus_bool_t _dbus_string_parse_int (const DBusString *str, - int start, - long *value_return, - int *end_return); -dbus_bool_t _dbus_string_parse_uint (const DBusString *str, - int start, - unsigned long *value_return, - int *end_return); -dbus_bool_t _dbus_string_parse_double (const DBusString *str, - int start, - double *value, - int *end_return); -dbus_bool_t _dbus_string_find (const DBusString *str, - int start, - const char *substr, - int *found); -dbus_bool_t _dbus_string_find_eol (const DBusString *str, - int start, - int *found, - int *found_len); -dbus_bool_t _dbus_string_find_to (const DBusString *str, - int start, - int end, - const char *substr, - int *found); -dbus_bool_t _dbus_string_find_byte_backward (const DBusString *str, - int start, - unsigned char byte, - int *found); -dbus_bool_t _dbus_string_find_blank (const DBusString *str, - int start, - int *found); -void _dbus_string_skip_blank (const DBusString *str, - int start, - int *end); -void _dbus_string_skip_white (const DBusString *str, - int start, - int *end); -void _dbus_string_skip_white_reverse (const DBusString *str, - int end, - int *start); -dbus_bool_t _dbus_string_equal (const DBusString *a, - const DBusString *b); -dbus_bool_t _dbus_string_equal_c_str (const DBusString *a, - const char *c_str); -dbus_bool_t _dbus_string_equal_len (const DBusString *a, - const DBusString *b, - int len); -dbus_bool_t _dbus_string_equal_substring (const DBusString *a, - int a_start, - int a_len, - const DBusString *b, - int b_start); -dbus_bool_t _dbus_string_starts_with_c_str (const DBusString *a, - const char *c_str); -dbus_bool_t _dbus_string_ends_with_c_str (const DBusString *a, - const char *c_str); -dbus_bool_t _dbus_string_pop_line (DBusString *source, - DBusString *dest); -void _dbus_string_delete_first_word (DBusString *str); -void _dbus_string_delete_leading_blanks (DBusString *str); -void _dbus_string_chop_white (DBusString *str); -dbus_bool_t _dbus_string_append_byte_as_hex (DBusString *str, - int byte); -dbus_bool_t _dbus_string_hex_encode (const DBusString *source, - int start, - DBusString *dest, - int insert_at); -dbus_bool_t _dbus_string_hex_decode (const DBusString *source, - int start, - int *end_return, - DBusString *dest, - int insert_at); -void _dbus_string_tolower_ascii (const DBusString *str, - int start, - int len); -void _dbus_string_toupper_ascii (const DBusString *str, - int start, - int len); -dbus_bool_t _dbus_string_validate_ascii (const DBusString *str, - int start, - int len); -dbus_bool_t _dbus_string_validate_utf8 (const DBusString *str, - int start, - int len); -dbus_bool_t _dbus_string_validate_nul (const DBusString *str, - int start, - int len); -void _dbus_string_zero (DBusString *str); - - -/** - * We allocate 1 byte for nul termination, plus 7 bytes for possible - * align_offset, so we always need 8 bytes on top of the string's - * length to be in the allocated block. - */ -#define _DBUS_STRING_ALLOCATION_PADDING 8 - -/** - * Defines a static const variable with type #DBusString called "name" - * containing the given string literal. - * - * @param name the name of the variable - * @param str the string value - */ -#define _DBUS_STRING_DEFINE_STATIC(name, str) \ - static const char _dbus_static_string_##name[] = str; \ - static const DBusString name = { _dbus_static_string_##name, \ - sizeof(_dbus_static_string_##name), \ - sizeof(_dbus_static_string_##name) + \ - _DBUS_STRING_ALLOCATION_PADDING, \ - sizeof(_dbus_static_string_##name), \ - TRUE, TRUE, FALSE, 0 } - -DBUS_END_DECLS - -#endif /* DBUS_STRING_H */ diff --git a/include/dbus-1/dbus/dbus-sysdeps-unix.h b/include/dbus-1/dbus/dbus-sysdeps-unix.h deleted file mode 100644 index 807d2cf5..00000000 --- a/include/dbus-1/dbus/dbus-sysdeps-unix.h +++ /dev/null @@ -1,138 +0,0 @@ -/* -*- mode: C; c-file-style: "gnu"; indent-tabs-mode: nil; -*- */ -/* dbus-sysdeps-unix.h UNIX-specific wrappers around system/libc features (internal to D-Bus implementation) - * - * Copyright (C) 2002, 2003, 2006 Red Hat, Inc. - * Copyright (C) 2003 CodeFactory AB - * - * Licensed under the Academic Free License version 2.1 - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2 of the License, or - * (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with this program; if not, write to the Free Software - * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA - * - */ - -#ifndef DBUS_SYSDEPS_UNIX_H -#define DBUS_SYSDEPS_UNIX_H - -#include <dbus/dbus-sysdeps.h> - -#ifdef DBUS_WIN -#error "Don't include this on Windows" -#endif - -DBUS_BEGIN_DECLS - -/** - * @defgroup DBusSysdepsUnix UNIX-specific internal API - * @ingroup DBusInternals - * @brief Internal system-dependent API available on UNIX only - * @{ - */ - -dbus_bool_t -_dbus_close (int fd, - DBusError *error); -int _dbus_dup (int fd, - DBusError *error); -int -_dbus_read (int fd, - DBusString *buffer, - int count); -int -_dbus_write (int fd, - const DBusString *buffer, - int start, - int len); -int -_dbus_write_two (int fd, - const DBusString *buffer1, - int start1, - int len1, - const DBusString *buffer2, - int start2, - int len2); - -dbus_bool_t _dbus_open_unix_socket (int *fd, - DBusError *error); -int _dbus_connect_unix_socket (const char *path, - dbus_bool_t abstract, - DBusError *error); -int _dbus_listen_unix_socket (const char *path, - dbus_bool_t abstract, - DBusError *error); - -int _dbus_listen_systemd_sockets (int **fd, - DBusError *error); - -dbus_bool_t _dbus_read_credentials (int client_fd, - DBusCredentials *credentials, - DBusError *error); -dbus_bool_t _dbus_send_credentials (int server_fd, - DBusError *error); - -/** Information about a UNIX user */ -typedef struct DBusUserInfo DBusUserInfo; -/** Information about a UNIX group */ -typedef struct DBusGroupInfo DBusGroupInfo; - -/** - * Information about a UNIX user - */ -struct DBusUserInfo -{ - dbus_uid_t uid; /**< UID */ - dbus_gid_t primary_gid; /**< GID */ - dbus_gid_t *group_ids; /**< Groups IDs, *including* above primary group */ - int n_group_ids; /**< Size of group IDs array */ - char *username; /**< Username */ - char *homedir; /**< Home directory */ -}; - -/** - * Information about a UNIX group - */ -struct DBusGroupInfo -{ - dbus_gid_t gid; /**< GID */ - char *groupname; /**< Group name */ -}; - -dbus_bool_t _dbus_user_info_fill (DBusUserInfo *info, - const DBusString *username, - DBusError *error); -dbus_bool_t _dbus_user_info_fill_uid (DBusUserInfo *info, - dbus_uid_t uid, - DBusError *error); -void _dbus_user_info_free (DBusUserInfo *info); - -dbus_bool_t _dbus_group_info_fill (DBusGroupInfo *info, - const DBusString *groupname, - DBusError *error); -dbus_bool_t _dbus_group_info_fill_gid (DBusGroupInfo *info, - dbus_gid_t gid, - DBusError *error); -void _dbus_group_info_free (DBusGroupInfo *info); - -dbus_uid_t _dbus_getuid (void); -dbus_uid_t _dbus_geteuid (void); -dbus_gid_t _dbus_getgid (void); - -dbus_bool_t _dbus_parse_uid (const DBusString *uid_str, - dbus_uid_t *uid); - -/** @} */ - -DBUS_END_DECLS - -#endif /* DBUS_SYSDEPS_UNIX_H */ diff --git a/include/dbus-1/dbus/dbus-sysdeps-win.h b/include/dbus-1/dbus/dbus-sysdeps-win.h deleted file mode 100644 index a8ff9433..00000000 --- a/include/dbus-1/dbus/dbus-sysdeps-win.h +++ /dev/null @@ -1,88 +0,0 @@ -/* -*- mode: C; c-file-style: "gnu"; indent-tabs-mode: nil; -*- */ -/* dbus-sysdeps.c Wrappers around system/libc features (internal to D-BUS implementation) - * - * Copyright (C) 2002, 2003 Red Hat, Inc. - * Copyright (C) 2003 CodeFactory AB - * Copyright (C) 2005 Novell, Inc. - * - * Licensed under the Academic Free License version 2.1 - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2 of the License, or - * (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with this program; if not, write to the Free Software - * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA - * - */ - -#ifndef DBUS_SYSDEPS_WIN_H -#define DBUS_SYSDEPS_WIN_H - -extern void *_dbus_win_get_dll_hmodule (void); -#define _WINSOCKAPI_ - -#include "dbus-hash.h" -#include "dbus-string.h" -#include <ctype.h> -#include <malloc.h> -#include <windows.h> -#undef interface - -#define DBUS_CONSOLE_DIR "/var/run/console/" - - -void _dbus_win_set_errno (int err); -const char* _dbus_win_error_from_last_error (void); - -void _dbus_win_startup_winsock (void); -void _dbus_win_warn_win_error (const char *message, - int code); - -char * _dbus_win_error_string (int error_number); -void _dbus_win_free_error_string (char *string); - -extern const char* _dbus_lm_strerror (int error_number); - - -dbus_bool_t _dbus_win_account_to_sid (const wchar_t *waccount, - void **ppsid, - DBusError *error); - -dbus_bool_t -_dbus_win32_sid_to_name_and_domain (dbus_uid_t uid, - wchar_t **wname, - wchar_t **wdomain, - DBusError *error); - - -/* Don't define DBUS_CONSOLE_DIR on Win32 */ - -wchar_t *_dbus_win_utf8_to_utf16 (const char *str, - DBusError *error); -char *_dbus_win_utf16_to_utf8 (const wchar_t *str, - DBusError *error); - -void _dbus_win_set_error_from_win_error (DBusError *error, int code); - -dbus_bool_t -_dbus_win_sid_to_name_and_domain (dbus_uid_t uid, - wchar_t **wname, - wchar_t **wdomain, - DBusError *error); - -dbus_bool_t _dbus_file_exists (const char *filename); - -dbus_bool_t _dbus_get_config_file_name(DBusString *config_file, - char *s); - -#endif - -/** @} end of sysdeps-win.h */ diff --git a/include/dbus-1/dbus/dbus-sysdeps-wince-glue.h b/include/dbus-1/dbus/dbus-sysdeps-wince-glue.h deleted file mode 100644 index f5ac6c8a..00000000 --- a/include/dbus-1/dbus/dbus-sysdeps-wince-glue.h +++ /dev/null @@ -1,246 +0,0 @@ -/* -*- mode: C; c-file-style: "gnu"; indent-tabs-mode: nil; -*- */ -/* dbus-sysdeps-wince-glue.h Emulation of system/libc features for Windows CE (internal to D-Bus implementation) - * - * Copyright (C) 2002, 2003 Red Hat, Inc. - * Copyright (C) 2003 CodeFactory AB - * - * Licensed under the Academic Free License version 2.1 - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2 of the License, or - * (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with this program; if not, write to the Free Software - * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA - * - */ - -#ifndef DBUS_SYSDEPS_WINCE_GLUE_H -#define DBUS_SYSDEPS_WINCE_GLUE_H - -#include <time.h> -#include <stdarg.h> - -/* For getaddrinfo, configure/cmake defined _WIN32_WCE to something >= 0x0401. */ -#include <windows.h> -#undef interface - -DBUS_BEGIN_DECLS - -/* shlobj.h declares these only for _WIN32_IE that we don't want to define. - In any case, with mingw32ce we only get a SHGetSpecialFolderPath. */ -#define SHGetSpecialFolderPathW SHGetSpecialFolderPath -BOOL WINAPI SHGetSpecialFolderPathA(HWND,LPSTR,int,BOOL); -BOOL WINAPI SHGetSpecialFolderPathW(HWND,LPWSTR,int,BOOL); - -#ifndef TLS_OUT_OF_INDEXES -#define TLS_OUT_OF_INDEXES 0xffffffff -#endif - - -/* Seriously. Windows CE does not have errno. Don't you hate it when - that happens? */ -#define errno ((int)GetLastError ()) - -#define ENOENT ERROR_FILE_NOT_FOUND -#define EMFILE ERROR_TOO_MANY_OPEN_FILES -#define EACCES ERROR_ACCESS_DENIED -#define EBADF ERROR_INVALID_HANDLE -#define ENOMEM ERROR_NOT_ENOUGH_MEMORY -#define EXDEV ERROR_NOT_SAME_DEVICE -#define ENFILE ERROR_NO_MORE_FILES -#define EROFS ERROR_WRITE_PROTECT -#define ENOLCK ERROR_SHARING_BUFFER_EXCEEDED -#define ENOSYS ERROR_NOT_SUPPORTED -#define EEXIST ERROR_FILE_EXISTS -#define EPERM ERROR_CANNOT_MAKE -#define EINVAL ERROR_INVALID_PARAMETER -#define EINTR ERROR_INVALID_AT_INTERRUPT_TIME -#define EPIPE ERROR_BROKEN_PIPE -#define ENOSPC ERROR_DISK_FULL -#define ENOTEMPTY ERROR_DIR_NOT_EMPTY -#define EBUSY ERROR_BUSY -#define ENAMETOOLONG ERROR_FILENAME_EXCED_RANGE -#define EAGAIN ERROR_MORE_DATA -#define ENOTDIR ERROR_DIRECTORY -#define ERANGE ERROR_ARITHMETIC_OVERFLOW -#define ENXIO ERROR_FILE_INVALID -#define EFAULT ERROR_PROCESS_ABORTED -#define EIO ERROR_IO_DEVICE -#define EDEADLOCK ERROR_POSSIBLE_DEADLOCK -#define ENODEV ERROR_BAD_DEVICE - -/* Windows CE is missing more stuff that is pretty standard. */ - -#define strdup _strdup -#define stricmp _stricmp -#define strnicmp _strnicmp - -#define environ _dbus_wince_environ -extern char *environ[]; - -#define getenv _dbus_wince_getenv -char *getenv (const char *name); - -#define putenv _dbus_wince_putenv -int putenv (char *str); - -#define clock _dbus_wince_clock -clock_t clock (void); - -#define abort _dbus_wince_abort -void abort (void); - -#define _S_IFMT 0170000 /* file type mask */ -#define _S_IFDIR 0040000 /* directory */ -#define _S_IFCHR 0020000 /* character special */ -#define _S_IFIFO 0010000 /* pipe */ -#define _S_IFREG 0100000 /* regular */ -#define _S_IREAD 0000400 /* read permission, owner */ -#define _S_IWRITE 0000200 /* write permission, owner */ -#define _S_IEXEC 0000100 /* execute/search permission, owner */ - -#ifndef __OFF_T_DEFINED -typedef long off_t; -#define __OFF_T_DEFINED -#endif -#ifndef _INTPTR_T_DEFINED -typedef int intptr_t; -#define _INTPTR_T_DEFINED -#endif -#ifndef _UINTPTR_T_DEFINED -typedef unsigned int uintptr_t; -#define _UINTPTR_T_DEFINED -#endif - -#ifndef _MAX_FNAME -#define _MAX_FNAME 256 -#endif - -#ifndef _IOFBF -#define _IOFBF 0 -#endif -#ifndef _IOLBF -#define _IOLBF 1 -#endif -#ifndef _IONBF -#define _IONBF 2 -#endif - - -/* Windows CE is missing some Windows functions that we want. */ - -#define GetSystemTimeAsFileTime _dbus_wince_GetSystemTimeAsFileTime -void GetSystemTimeAsFileTime (LPFILETIME ftp); - -#define _mbsrchr _dbus_wince_mbsrchr -unsigned char* _mbsrchr (const unsigned char*, unsigned int); - -#define OpenFileMappingA _dbus_wince_OpenFileMappingA -HANDLE OpenFileMappingA(DWORD,BOOL,LPCSTR); - -#define MoveFileExA _dbus_wince_MoveFileExA -BOOL MoveFileExA(LPCSTR,LPCSTR,DWORD); -#ifndef MOVEFILE_REPLACE_EXISTING -#define MOVEFILE_REPLACE_EXISTING 0x00000001 -#endif - -#define SetHandleInformation _dbus_wince_SetHandleInformation -BOOL SetHandleInformation(HANDLE,DWORD,DWORD); -#ifndef HANDLE_FLAG_INHERIT -#define HANDLE_FLAG_INHERIT 0x01 -#endif -#ifndef HANDLE_FLAG_PROTECT -#define HANDLE_FLAG_PROTECT_FROM_CLOSE 0x02 -#endif - -#define SearchPathA _dbus_wince_SearchPathA -DWORD SearchPathA(LPCSTR,LPCSTR,LPCSTR,DWORD,LPSTR,LPSTR*); - -/* Instead of emulating all functions needed for this, we replace the - whole thing. */ -dbus_bool_t _dbus_getsid(char **sid); - - -#define LookupAccountNameW _dbus_wince_LookupAccountNameW -BOOL LookupAccountNameW(LPCWSTR,LPCWSTR,PSID,PDWORD,LPWSTR,PDWORD,PSID_NAME_USE); - -#define IsValidSid _dbus_wince_IsValidSid -BOOL IsValidSid(PSID); - - -/* Windows CE does only have the UNICODE interfaces (FooW), but we - want to use the ASCII interfaces (FooA). We implement them - here. */ - -#define CreateFileA _dbus_wince_CreateFileA -HANDLE CreateFileA(LPCSTR,DWORD,DWORD,LPSECURITY_ATTRIBUTES,DWORD,DWORD,HANDLE); - -#define DeleteFileA _dbus_wince_DeleteFileA -BOOL DeleteFileA(LPCSTR); - -#define GetFileAttributesA _dbus_wince_GetFileAttributesA -DWORD GetFileAttributesA(LPCSTR); - -#define GetFileAttributesExA _dbus_wince_GetFileAttributesExA -BOOL GetFileAttributesExA(LPCSTR,GET_FILEEX_INFO_LEVELS,PVOID); - -#define CreateFileMappingA _dbus_wince_CreateFileMappingA -HANDLE CreateFileMappingA(HANDLE,LPSECURITY_ATTRIBUTES,DWORD,DWORD,DWORD,LPCSTR); - -#define CreateDirectoryA _dbus_wince_CreateDirectoryA -BOOL CreateDirectoryA(LPCSTR,LPSECURITY_ATTRIBUTES); - -#define RemoveDirectoryA _dbus_wince_RemoveDirectoryA -BOOL RemoveDirectoryA(LPCSTR); - -#define FindFirstFileA _dbus_wince_FindFirstFileA -HANDLE FindFirstFileA(LPCSTR,LPWIN32_FIND_DATAA); - -#define FindNextFileA _dbus_wince_FindNextFileA -BOOL FindNextFileA(HANDLE,LPWIN32_FIND_DATAA); - -#define CreateMutexA _dbus_wince_CreateMutexA -HANDLE CreateMutexA(LPSECURITY_ATTRIBUTES,BOOL,LPCSTR); - -#define CreateProcessA _dbus_wince_CreateProcessA -BOOL CreateProcessA(LPCSTR,LPSTR,LPSECURITY_ATTRIBUTES,LPSECURITY_ATTRIBUTES,BOOL,DWORD,PVOID,LPCSTR,LPSTARTUPINFOA,LPPROCESS_INFORMATION); -#ifndef CREATE_NO_WINDOW -#define CREATE_NO_WINDOW 0x08000000 -#endif - - -#define RegOpenKeyExA _dbus_wince_RegOpenKeyExA -LONG RegOpenKeyExA(HKEY,LPCSTR,DWORD,REGSAM,PHKEY); - -#define RegQueryValueExA _dbus_wince_RegQueryValueExA -LONG WINAPI RegQueryValueExA(HKEY,LPCSTR,LPDWORD,LPDWORD,LPBYTE,LPDWORD); - - -#define FormatMessageA _dbus_wince_FormatMessageA -DWORD FormatMessageA(DWORD,PCVOID,DWORD,DWORD,LPSTR,DWORD,va_list*); - -#define GetModuleFileNameA _dbus_wince_GetModuleFileNameA -DWORD GetModuleFileNameA(HINSTANCE,LPSTR,DWORD); - -#define GetTempPathA _dbus_wince_GetTempPathA -DWORD GetTempPathA(DWORD,LPSTR); - -#define SHGetSpecialFolderPathA _dbus_wince_SHGetSpecialFolderPathA -BOOL SHGetSpecialFolderPathA(HWND,LPSTR,int,BOOL); - - -#define OutputDebugStringA _dbus_wince_OutputDebugStringA -void OutputDebugStringA(LPCSTR); - - -DBUS_END_DECLS - -#endif /* DBUS_SYSDEPS_WINCE_GLUE_H */ diff --git a/include/dbus-1/dbus/dbus-sysdeps.h b/include/dbus-1/dbus/dbus-sysdeps.h deleted file mode 100644 index c98db36d..00000000 --- a/include/dbus-1/dbus/dbus-sysdeps.h +++ /dev/null @@ -1,531 +0,0 @@ -/* -*- mode: C; c-file-style: "gnu"; indent-tabs-mode: nil; -*- */ -/* dbus-sysdeps.h Wrappers around system/libc features (internal to D-Bus implementation) - * - * Copyright (C) 2002, 2003 Red Hat, Inc. - * Copyright (C) 2003 CodeFactory AB - * - * Licensed under the Academic Free License version 2.1 - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2 of the License, or - * (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with this program; if not, write to the Free Software - * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA - * - */ - -#ifndef DBUS_SYSDEPS_H -#define DBUS_SYSDEPS_H - -#include "config.h" - -#ifdef HAVE_STDINT_H -#include <stdint.h> -#endif - -#include <dbus/dbus-errors.h> -#include <dbus/dbus-file.h> -#include <dbus/dbus-string.h> - -/* this is perhaps bogus, but strcmp() etc. are faster if we use the - * stuff straight out of string.h, so have this here for now. - */ -#include <string.h> -#include <stdarg.h> - -/* AIX sys/poll.h does #define events reqevents, and other - * wonderousness, so must include sys/poll before declaring - * DBusPollFD - */ -#ifdef HAVE_POLL -#include <sys/poll.h> -#endif - -#ifdef DBUS_WINCE -/* Windows CE lacks some system functions (such as errno and clock). - We bring them in here. */ -#include "dbus-sysdeps-wince-glue.h" -#endif - -DBUS_BEGIN_DECLS - -#ifdef DBUS_WIN -#define _DBUS_PATH_SEPARATOR ";" -#else -#define _DBUS_PATH_SEPARATOR ":" -#endif - -/* Forward declarations */ - - -/** An opaque list type */ -typedef struct DBusList DBusList; - -/** Object that contains a list of credentials such as UNIX or Windows user ID */ -typedef struct DBusCredentials DBusCredentials; - -/** A wrapper around a pipe descriptor or handle */ -typedef struct DBusPipe DBusPipe; - -/** - * @addtogroup DBusSysdeps - * - * @{ - */ - -void _dbus_abort (void) _DBUS_GNUC_NORETURN; - -const char* _dbus_getenv (const char *varname); -dbus_bool_t _dbus_setenv (const char *varname, - const char *value); -dbus_bool_t _dbus_clearenv (void); -char ** _dbus_get_environment (void); - -/** A process ID */ -typedef unsigned long dbus_pid_t; -/** A user ID */ -typedef unsigned long dbus_uid_t; -/** A group ID */ -typedef unsigned long dbus_gid_t; - -/** an invalid PID used to represent an uninitialized dbus_pid_t field */ -#define DBUS_PID_UNSET ((dbus_pid_t) -1) -/** an invalid UID used to represent an uninitialized dbus_uid_t field */ -#define DBUS_UID_UNSET ((dbus_uid_t) -1) -/** an invalid GID used to represent an uninitialized dbus_gid_t field */ -#define DBUS_GID_UNSET ((dbus_gid_t) -1) - -/** an appropriate printf format for dbus_pid_t */ -#define DBUS_PID_FORMAT "%lu" -/** an appropriate printf format for dbus_uid_t */ -#define DBUS_UID_FORMAT "%lu" -/** an appropriate printf format for dbus_gid_t */ -#define DBUS_GID_FORMAT "%lu" - - -/** - * Socket interface - * - * @todo Use for the file descriptors a struct - * - struct DBusSocket{ int d; }; - - * instead of int to get type-safety which - * will be checked by the compiler. - * - */ - -dbus_bool_t _dbus_open_tcp_socket (int *fd, - DBusError *error); -dbus_bool_t _dbus_close_socket (int fd, - DBusError *error); -int _dbus_read_socket (int fd, - DBusString *buffer, - int count); -int _dbus_write_socket (int fd, - const DBusString *buffer, - int start, - int len); -int _dbus_write_socket_two (int fd, - const DBusString *buffer1, - int start1, - int len1, - const DBusString *buffer2, - int start2, - int len2); - -int _dbus_read_socket_with_unix_fds (int fd, - DBusString *buffer, - int count, - int *fds, - int *n_fds); -int _dbus_write_socket_with_unix_fds (int fd, - const DBusString *buffer, - int start, - int len, - const int *fds, - int n_fds); -int _dbus_write_socket_with_unix_fds_two (int fd, - const DBusString *buffer1, - int start1, - int len1, - const DBusString *buffer2, - int start2, - int len2, - const int *fds, - int n_fds); - -dbus_bool_t _dbus_socket_is_invalid (int fd); - -int _dbus_connect_tcp_socket (const char *host, - const char *port, - const char *family, - DBusError *error); -int _dbus_connect_tcp_socket_with_nonce (const char *host, - const char *port, - const char *family, - const char *noncefile, - DBusError *error); -int _dbus_listen_tcp_socket (const char *host, - const char *port, - const char *family, - DBusString *retport, - int **fds_p, - DBusError *error); -int _dbus_accept (int listen_fd); - - -dbus_bool_t _dbus_read_credentials_socket (int client_fd, - DBusCredentials *credentials, - DBusError *error); -dbus_bool_t _dbus_send_credentials_socket (int server_fd, - DBusError *error); - -dbus_bool_t _dbus_credentials_add_from_user (DBusCredentials *credentials, - const DBusString *username); -dbus_bool_t _dbus_credentials_add_from_current_process (DBusCredentials *credentials); -dbus_bool_t _dbus_append_user_from_current_process (DBusString *str); - -dbus_bool_t _dbus_parse_unix_user_from_config (const DBusString *username, - dbus_uid_t *uid_p); -dbus_bool_t _dbus_parse_unix_group_from_config (const DBusString *groupname, - dbus_gid_t *gid_p); -dbus_bool_t _dbus_unix_groups_from_uid (dbus_uid_t uid, - dbus_gid_t **group_ids, - int *n_group_ids); -dbus_bool_t _dbus_unix_user_is_at_console (dbus_uid_t uid, - DBusError *error); -dbus_bool_t _dbus_unix_user_is_process_owner (dbus_uid_t uid); -dbus_bool_t _dbus_windows_user_is_process_owner (const char *windows_sid); - -dbus_bool_t _dbus_append_keyring_directory_for_credentials (DBusString *directory, - DBusCredentials *credentials); - -void _dbus_daemon_publish_session_bus_address (const char* address); - -void _dbus_daemon_unpublish_session_bus_address (void); - -dbus_bool_t _dbus_socket_can_pass_unix_fd(int fd); - -/** Opaque type representing an atomically-modifiable integer - * that can be used from multiple threads. - */ -typedef struct DBusAtomic DBusAtomic; - -/** - * An atomic integer safe to increment or decrement from multiple threads. - */ -struct DBusAtomic -{ -#ifdef DBUS_WIN - volatile long value; /**< Value of the atomic integer. */ -#else - volatile dbus_int32_t value; /**< Value of the atomic integer. */ -#endif -}; - -/* The value we get from autofoo is in the form of a cpp expression; - * convert that to a conventional defined/undef switch. (We can't get - * the conventional defined/undef because of multiarch builds only running - * ./configure once, on Darwin.) */ -#if DBUS_HAVE_ATOMIC_INT_COND -# define DBUS_HAVE_ATOMIC_INT 1 -#else -# undef DBUS_HAVE_ATOMIC_INT -#endif - -dbus_int32_t _dbus_atomic_inc (DBusAtomic *atomic); -dbus_int32_t _dbus_atomic_dec (DBusAtomic *atomic); - - -/* AIX uses different values for poll */ - -#ifdef _AIX -/** There is data to read */ -#define _DBUS_POLLIN 0x0001 -/** There is urgent data to read */ -#define _DBUS_POLLPRI 0x0004 -/** Writing now will not block */ -#define _DBUS_POLLOUT 0x0002 -/** Error condition */ -#define _DBUS_POLLERR 0x4000 -/** Hung up */ -#define _DBUS_POLLHUP 0x2000 -/** Invalid request: fd not open */ -#define _DBUS_POLLNVAL 0x8000 -#elif defined(__HAIKU__) -/** There is data to read */ -#define _DBUS_POLLIN 0x0001 -/** Writing now will not block */ -#define _DBUS_POLLOUT 0x0002 -/** Error condition */ -#define _DBUS_POLLERR 0x0004 -/** There is urgent data to read */ -#define _DBUS_POLLPRI 0x0020 -/** Hung up */ -#define _DBUS_POLLHUP 0x0080 -/** Invalid request: fd not open */ -#define _DBUS_POLLNVAL 0x1000 -#else -/** There is data to read */ -#define _DBUS_POLLIN 0x0001 -/** There is urgent data to read */ -#define _DBUS_POLLPRI 0x0002 -/** Writing now will not block */ -#define _DBUS_POLLOUT 0x0004 -/** Error condition */ -#define _DBUS_POLLERR 0x0008 -/** Hung up */ -#define _DBUS_POLLHUP 0x0010 -/** Invalid request: fd not open */ -#define _DBUS_POLLNVAL 0x0020 -#endif - -/** - * A portable struct pollfd wrapper. - */ -typedef struct -{ - int fd; /**< File descriptor */ - short events; /**< Events to poll for */ - short revents; /**< Events that occurred */ -} DBusPollFD; - -int _dbus_poll (DBusPollFD *fds, - int n_fds, - int timeout_milliseconds); - -void _dbus_sleep_milliseconds (int milliseconds); - -void _dbus_get_current_time (long *tv_sec, - long *tv_usec); - -/** - * directory interface - */ -dbus_bool_t _dbus_create_directory (const DBusString *filename, - DBusError *error); -dbus_bool_t _dbus_delete_directory (const DBusString *filename, - DBusError *error); - -dbus_bool_t _dbus_concat_dir_and_file (DBusString *dir, - const DBusString *next_component); -dbus_bool_t _dbus_string_get_dirname (const DBusString *filename, - DBusString *dirname); -dbus_bool_t _dbus_path_is_absolute (const DBusString *filename); - -dbus_bool_t _dbus_get_standard_session_servicedirs (DBusList **dirs); -dbus_bool_t _dbus_get_standard_system_servicedirs (DBusList **dirs); - -dbus_bool_t _dbus_append_system_config_file (DBusString *str); -dbus_bool_t _dbus_append_session_config_file (DBusString *str); - -/** Opaque type for reading a directory listing */ -typedef struct DBusDirIter DBusDirIter; - -DBusDirIter* _dbus_directory_open (const DBusString *filename, - DBusError *error); -dbus_bool_t _dbus_directory_get_next_file (DBusDirIter *iter, - DBusString *filename, - DBusError *error); -void _dbus_directory_close (DBusDirIter *iter); - -dbus_bool_t _dbus_check_dir_is_private_to_user (DBusString *dir, - DBusError *error); - -void _dbus_fd_set_close_on_exec (intptr_t fd); - -const char* _dbus_get_tmpdir (void); - -/** - * Random numbers - */ -void _dbus_generate_pseudorandom_bytes_buffer (char *buffer, - int n_bytes); -void _dbus_generate_random_bytes_buffer (char *buffer, - int n_bytes); -dbus_bool_t _dbus_generate_random_bytes (DBusString *str, - int n_bytes); -dbus_bool_t _dbus_generate_random_ascii (DBusString *str, - int n_bytes); - -const char* _dbus_error_from_errno (int error_number); -const char* _dbus_error_from_system_errno (void); - -void _dbus_set_errno_to_zero (void); -dbus_bool_t _dbus_get_is_errno_nonzero (void); -dbus_bool_t _dbus_get_is_errno_eagain_or_ewouldblock (void); -dbus_bool_t _dbus_get_is_errno_enomem (void); -dbus_bool_t _dbus_get_is_errno_eintr (void); -dbus_bool_t _dbus_get_is_errno_epipe (void); -const char* _dbus_strerror_from_errno (void); - -void _dbus_disable_sigpipe (void); - - -void _dbus_exit (int code) _DBUS_GNUC_NORETURN; - -int _dbus_printf_string_upper_bound (const char *format, - va_list args); - - -/** - * Portable struct with stat() results - */ -typedef struct -{ - unsigned long mode; /**< File mode */ - unsigned long nlink; /**< Number of hard links */ - dbus_uid_t uid; /**< User owning file */ - dbus_gid_t gid; /**< Group owning file */ - unsigned long size; /**< Size of file */ - unsigned long atime; /**< Access time */ - unsigned long mtime; /**< Modify time */ - unsigned long ctime; /**< Creation time */ -} DBusStat; - -dbus_bool_t _dbus_stat (const DBusString *filename, - DBusStat *statbuf, - DBusError *error); -dbus_bool_t _dbus_full_duplex_pipe (int *fd1, - int *fd2, - dbus_bool_t blocking, - DBusError *error); - -void _dbus_print_backtrace (void); - -dbus_bool_t _dbus_become_daemon (const DBusString *pidfile, - DBusPipe *print_pid_pipe, - DBusError *error, - dbus_bool_t keep_umask); - -dbus_bool_t _dbus_verify_daemon_user (const char *user); -dbus_bool_t _dbus_change_to_daemon_user (const char *user, - DBusError *error); - -dbus_bool_t _dbus_write_pid_to_file_and_pipe (const DBusString *pidfile, - DBusPipe *print_pid_pipe, - dbus_pid_t pid_to_write, - DBusError *error); - -dbus_bool_t _dbus_command_for_pid (unsigned long pid, - DBusString *str, - int max_len, - DBusError *error); - -/** A UNIX signal handler */ -typedef void (* DBusSignalHandler) (int sig); - -void _dbus_set_signal_handler (int sig, - DBusSignalHandler handler); - -dbus_bool_t _dbus_user_at_console (const char *username, - DBusError *error); - -void _dbus_init_system_log (void); - -typedef enum { - DBUS_SYSTEM_LOG_INFO, - DBUS_SYSTEM_LOG_SECURITY, - DBUS_SYSTEM_LOG_FATAL -} DBusSystemLogSeverity; - -void _dbus_system_log (DBusSystemLogSeverity severity, const char *msg, ...) _DBUS_GNUC_PRINTF (2, 3); -void _dbus_system_logv (DBusSystemLogSeverity severity, const char *msg, va_list args); - -/* Define DBUS_VA_COPY() to do the right thing for copying va_list variables. - * config.h may have already defined DBUS_VA_COPY as va_copy or __va_copy. - */ -#if !defined (DBUS_VA_COPY) -# if defined (__GNUC__) && defined (__PPC__) && (defined (_CALL_SYSV) || defined (_WIN32)) -# define DBUS_VA_COPY(ap1, ap2) (*(ap1) = *(ap2)) -# elif defined (DBUS_VA_COPY_AS_ARRAY) -# define DBUS_VA_COPY(ap1, ap2) memcpy ((ap1), (ap2), sizeof (va_list)) -# else /* va_list is a pointer */ -# define DBUS_VA_COPY(ap1, ap2) ((ap1) = (ap2)) -# endif /* va_list is a pointer */ -#endif /* !DBUS_VA_COPY */ - - -/** - * Casts a primitive C type to a byte array and then indexes - * a particular byte of the array. - */ -#define _DBUS_BYTE_OF_PRIMITIVE(p, i) \ - (((const char*)&(p))[(i)]) -/** On x86 there is an 80-bit FPU, and if you do "a == b" it may have a - * or b in an 80-bit register, thus failing to compare the two 64-bit - * doubles for bitwise equality. So this macro compares the two doubles - * bitwise. - */ -#define _DBUS_DOUBLES_BITWISE_EQUAL(a, b) \ - (_DBUS_BYTE_OF_PRIMITIVE (a, 0) == _DBUS_BYTE_OF_PRIMITIVE (b, 0) && \ - _DBUS_BYTE_OF_PRIMITIVE (a, 1) == _DBUS_BYTE_OF_PRIMITIVE (b, 1) && \ - _DBUS_BYTE_OF_PRIMITIVE (a, 2) == _DBUS_BYTE_OF_PRIMITIVE (b, 2) && \ - _DBUS_BYTE_OF_PRIMITIVE (a, 3) == _DBUS_BYTE_OF_PRIMITIVE (b, 3) && \ - _DBUS_BYTE_OF_PRIMITIVE (a, 4) == _DBUS_BYTE_OF_PRIMITIVE (b, 4) && \ - _DBUS_BYTE_OF_PRIMITIVE (a, 5) == _DBUS_BYTE_OF_PRIMITIVE (b, 5) && \ - _DBUS_BYTE_OF_PRIMITIVE (a, 6) == _DBUS_BYTE_OF_PRIMITIVE (b, 6) && \ - _DBUS_BYTE_OF_PRIMITIVE (a, 7) == _DBUS_BYTE_OF_PRIMITIVE (b, 7)) - -dbus_bool_t _dbus_get_autolaunch_address (DBusString *address, - DBusError *error); - -dbus_bool_t _dbus_lookup_session_address (dbus_bool_t *supported, - DBusString *address, - DBusError *error); - -/** Type representing a universally unique ID - * @todo rename to UUID instead of GUID - */ -typedef union DBusGUID DBusGUID; - -dbus_bool_t _dbus_read_local_machine_uuid (DBusGUID *machine_id, - dbus_bool_t create_if_not_found, - DBusError *error); - -/** - * Initialize threads as in dbus_threads_init_default(), appropriately - * for the platform. - * @returns #FALSE if no memory - */ -dbus_bool_t _dbus_threads_init_platform_specific (void); - -dbus_bool_t _dbus_split_paths_and_append (DBusString *dirs, - const char *suffix, - DBusList **dir_list); - -unsigned long _dbus_pid_for_log (void); - -/* FIXME move back to dbus-sysdeps-unix.h probably - - * the PID file handling just needs a little more abstraction - * in the bus daemon first. - */ -dbus_pid_t _dbus_getpid (void); - -dbus_bool_t _dbus_change_to_daemon_user (const char *user, - DBusError *error); - -void _dbus_flush_caches (void); - -/* - * replaces the term DBUS_PREFIX in configure_time_path by the - * current dbus installation directory. On unix this function is a noop - * - * @param configure_time_path - * @return real path - */ -const char * -_dbus_replace_install_prefix (const char *configure_time_path); - -/** @} */ - -DBUS_END_DECLS - -#endif /* DBUS_SYSDEPS_H */ diff --git a/include/dbus-1/dbus/dbus-test.h b/include/dbus-1/dbus/dbus-test.h deleted file mode 100644 index 0238b0ce..00000000 --- a/include/dbus-1/dbus/dbus-test.h +++ /dev/null @@ -1,83 +0,0 @@ -/* -*- mode: C; c-file-style: "gnu"; indent-tabs-mode: nil; -*- */ -/* dbus-test.h Declarations of test functions. - * - * Copyright (C) 2002 Red Hat Inc. - * - * Licensed under the Academic Free License version 2.1 - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2 of the License, or - * (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with this program; if not, write to the Free Software - * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA - * - */ - -#ifndef DBUS_TEST_H -#define DBUS_TEST_H - -#include <dbus/dbus-types.h> -#include <dbus/dbus-string.h> -#include <dbus/dbus-marshal-validate.h> - -dbus_bool_t _dbus_hash_test (void); -dbus_bool_t _dbus_dict_test (void); -dbus_bool_t _dbus_list_test (void); -dbus_bool_t _dbus_marshal_test (void); -dbus_bool_t _dbus_marshal_recursive_test (void); -dbus_bool_t _dbus_marshal_byteswap_test (void); -dbus_bool_t _dbus_marshal_header_test (void); -dbus_bool_t _dbus_marshal_validate_test (void); -dbus_bool_t _dbus_misc_test (void); -dbus_bool_t _dbus_signature_test (void); -dbus_bool_t _dbus_mem_pool_test (void); -dbus_bool_t _dbus_string_test (void); -dbus_bool_t _dbus_address_test (void); -dbus_bool_t _dbus_server_test (void); -dbus_bool_t _dbus_message_test (const char *test_data_dir); -dbus_bool_t _dbus_auth_test (const char *test_data_dir); -dbus_bool_t _dbus_md5_test (void); -dbus_bool_t _dbus_sha_test (const char *test_data_dir); -dbus_bool_t _dbus_keyring_test (void); -dbus_bool_t _dbus_data_slot_test (void); -dbus_bool_t _dbus_sysdeps_test (void); -dbus_bool_t _dbus_spawn_test (const char *test_data_dir); -dbus_bool_t _dbus_userdb_test (const char *test_data_dir); -dbus_bool_t _dbus_memory_test (void); -dbus_bool_t _dbus_object_tree_test (void); -dbus_bool_t _dbus_pending_call_test (const char *test_data_dir); -dbus_bool_t _dbus_credentials_test (const char *test_data_dir); - -void dbus_internal_do_not_use_run_tests (const char *test_data_dir, - const char *specific_test); -dbus_bool_t dbus_internal_do_not_use_try_message_file (const DBusString *filename, - DBusValidity expected_validity); -dbus_bool_t dbus_internal_do_not_use_try_message_data (const DBusString *data, - DBusValidity expected_validity); -dbus_bool_t dbus_internal_do_not_use_load_message_file (const DBusString *filename, - DBusString *data); - - -/* returns FALSE on fatal failure */ -typedef dbus_bool_t (* DBusForeachMessageFileFunc) (const DBusString *filename, - DBusValidity expected_validity, - void *data); - -dbus_bool_t dbus_internal_do_not_use_foreach_message_file (const char *test_data_dir, - DBusForeachMessageFileFunc func, - void *user_data); -dbus_bool_t dbus_internal_do_not_use_generate_bodies (int sequence, - int byte_order, - DBusString *signature, - DBusString *body); - - -#endif /* DBUS_TEST_H */ diff --git a/include/dbus-1/dbus/dbus-threads-internal.h b/include/dbus-1/dbus/dbus-threads-internal.h deleted file mode 100644 index 11f9ce20..00000000 --- a/include/dbus-1/dbus/dbus-threads-internal.h +++ /dev/null @@ -1,53 +0,0 @@ -/* -*- mode: C; c-file-style: "gnu"; indent-tabs-mode: nil; -*- */ -/* dbus-threads-internal.h D-Bus thread primitives - * - * Copyright (C) 2002, 2005 Red Hat Inc. - * - * Licensed under the Academic Free License version 2.1 - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2 of the License, or - * (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with this program; if not, write to the Free Software - * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA - * - */ -#ifndef DBUS_THREADS_INTERNAL_H -#define DBUS_THREADS_INTERNAL_H - -#include <dbus/dbus-macros.h> -#include <dbus/dbus-types.h> -#include <dbus/dbus-threads.h> - -DBUS_BEGIN_DECLS - -DBusMutex* _dbus_mutex_new (void); -void _dbus_mutex_free (DBusMutex *mutex); -void _dbus_mutex_lock (DBusMutex *mutex); -void _dbus_mutex_unlock (DBusMutex *mutex); -void _dbus_mutex_new_at_location (DBusMutex **location_p); -void _dbus_mutex_free_at_location (DBusMutex **location_p); - -DBusCondVar* _dbus_condvar_new (void); -void _dbus_condvar_free (DBusCondVar *cond); -void _dbus_condvar_wait (DBusCondVar *cond, - DBusMutex *mutex); -dbus_bool_t _dbus_condvar_wait_timeout (DBusCondVar *cond, - DBusMutex *mutex, - int timeout_milliseconds); -void _dbus_condvar_wake_one (DBusCondVar *cond); -void _dbus_condvar_wake_all (DBusCondVar *cond); -void _dbus_condvar_new_at_location (DBusCondVar **location_p); -void _dbus_condvar_free_at_location (DBusCondVar **location_p); - -DBUS_END_DECLS - -#endif /* DBUS_THREADS_INTERNAL_H */ diff --git a/include/dbus-1/dbus/dbus-threads.h b/include/dbus-1/dbus/dbus-threads.h deleted file mode 100644 index ba07ca57..00000000 --- a/include/dbus-1/dbus/dbus-threads.h +++ /dev/null @@ -1,198 +0,0 @@ -/* -*- mode: C; c-file-style: "gnu"; indent-tabs-mode: nil; -*- */ -/* dbus-threads.h D-Bus threads handling - * - * Copyright (C) 2002 Red Hat Inc. - * - * Licensed under the Academic Free License version 2.1 - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2 of the License, or - * (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with this program; if not, write to the Free Software - * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA - * - */ -#if !defined (DBUS_INSIDE_DBUS_H) && !defined (DBUS_COMPILATION) -#error "Only <dbus/dbus.h> can be included directly, this file may disappear or change contents." -#endif - -#ifndef DBUS_THREADS_H -#define DBUS_THREADS_H - -#include <dbus/dbus-macros.h> -#include <dbus/dbus-types.h> - -DBUS_BEGIN_DECLS - -/** - * @addtogroup DBusThreads - * @{ - */ - -/** An opaque mutex type provided by the #DBusThreadFunctions implementation installed by dbus_threads_init(). */ -typedef struct DBusMutex DBusMutex; -/** An opaque condition variable type provided by the #DBusThreadFunctions implementation installed by dbus_threads_init(). */ -typedef struct DBusCondVar DBusCondVar; - -/** Deprecated, provide DBusRecursiveMutexNewFunction instead. */ -typedef DBusMutex* (* DBusMutexNewFunction) (void); -/** Deprecated, provide DBusRecursiveMutexFreeFunction instead. */ -typedef void (* DBusMutexFreeFunction) (DBusMutex *mutex); -/** Deprecated, provide DBusRecursiveMutexLockFunction instead. Return value is lock success, but gets ignored in practice. */ -typedef dbus_bool_t (* DBusMutexLockFunction) (DBusMutex *mutex); -/** Deprecated, provide DBusRecursiveMutexUnlockFunction instead. Return value is unlock success, but gets ignored in practice. */ -typedef dbus_bool_t (* DBusMutexUnlockFunction) (DBusMutex *mutex); - -/** Creates a new recursively-lockable mutex, or returns #NULL if not - * enough memory. Can only fail due to lack of memory. Found in - * #DBusThreadFunctions. Do not just use PTHREAD_MUTEX_RECURSIVE for - * this, because it does not save/restore the recursion count when - * waiting on a condition. libdbus requires the Java-style behavior - * where the mutex is fully unlocked to wait on a condition. - */ -typedef DBusMutex* (* DBusRecursiveMutexNewFunction) (void); -/** Frees a recursively-lockable mutex. Found in #DBusThreadFunctions. - */ -typedef void (* DBusRecursiveMutexFreeFunction) (DBusMutex *mutex); -/** Locks a recursively-lockable mutex. Found in #DBusThreadFunctions. - * Can only fail due to lack of memory. - */ -typedef void (* DBusRecursiveMutexLockFunction) (DBusMutex *mutex); -/** Unlocks a recursively-lockable mutex. Found in #DBusThreadFunctions. - * Can only fail due to lack of memory. - */ -typedef void (* DBusRecursiveMutexUnlockFunction) (DBusMutex *mutex); - -/** Creates a new condition variable. Found in #DBusThreadFunctions. - * Can only fail (returning #NULL) due to lack of memory. - */ -typedef DBusCondVar* (* DBusCondVarNewFunction) (void); -/** Frees a condition variable. Found in #DBusThreadFunctions. - */ -typedef void (* DBusCondVarFreeFunction) (DBusCondVar *cond); - -/** Waits on a condition variable. Found in - * #DBusThreadFunctions. Must work with either a recursive or - * nonrecursive mutex, whichever the thread implementation - * provides. Note that PTHREAD_MUTEX_RECURSIVE does not work with - * condition variables (does not save/restore the recursion count) so - * don't try using simply pthread_cond_wait() and a - * PTHREAD_MUTEX_RECURSIVE to implement this, it won't work right. - * - * Has no error conditions. Must succeed if it returns. - */ -typedef void (* DBusCondVarWaitFunction) (DBusCondVar *cond, - DBusMutex *mutex); - -/** Waits on a condition variable with a timeout. Found in - * #DBusThreadFunctions. Returns #TRUE if the wait did not - * time out, and #FALSE if it did. - * - * Has no error conditions. Must succeed if it returns. - */ -typedef dbus_bool_t (* DBusCondVarWaitTimeoutFunction) (DBusCondVar *cond, - DBusMutex *mutex, - int timeout_milliseconds); -/** Wakes one waiting thread on a condition variable. Found in #DBusThreadFunctions. - * - * Has no error conditions. Must succeed if it returns. - */ -typedef void (* DBusCondVarWakeOneFunction) (DBusCondVar *cond); - -/** Wakes all waiting threads on a condition variable. Found in #DBusThreadFunctions. - * - * Has no error conditions. Must succeed if it returns. - */ -typedef void (* DBusCondVarWakeAllFunction) (DBusCondVar *cond); - -/** - * Flags indicating which functions are present in #DBusThreadFunctions. Used to allow - * the library to detect older callers of dbus_threads_init() if new possible functions - * are added to #DBusThreadFunctions. - */ -typedef enum -{ - DBUS_THREAD_FUNCTIONS_MUTEX_NEW_MASK = 1 << 0, - DBUS_THREAD_FUNCTIONS_MUTEX_FREE_MASK = 1 << 1, - DBUS_THREAD_FUNCTIONS_MUTEX_LOCK_MASK = 1 << 2, - DBUS_THREAD_FUNCTIONS_MUTEX_UNLOCK_MASK = 1 << 3, - DBUS_THREAD_FUNCTIONS_CONDVAR_NEW_MASK = 1 << 4, - DBUS_THREAD_FUNCTIONS_CONDVAR_FREE_MASK = 1 << 5, - DBUS_THREAD_FUNCTIONS_CONDVAR_WAIT_MASK = 1 << 6, - DBUS_THREAD_FUNCTIONS_CONDVAR_WAIT_TIMEOUT_MASK = 1 << 7, - DBUS_THREAD_FUNCTIONS_CONDVAR_WAKE_ONE_MASK = 1 << 8, - DBUS_THREAD_FUNCTIONS_CONDVAR_WAKE_ALL_MASK = 1 << 9, - DBUS_THREAD_FUNCTIONS_RECURSIVE_MUTEX_NEW_MASK = 1 << 10, - DBUS_THREAD_FUNCTIONS_RECURSIVE_MUTEX_FREE_MASK = 1 << 11, - DBUS_THREAD_FUNCTIONS_RECURSIVE_MUTEX_LOCK_MASK = 1 << 12, - DBUS_THREAD_FUNCTIONS_RECURSIVE_MUTEX_UNLOCK_MASK = 1 << 13, - DBUS_THREAD_FUNCTIONS_ALL_MASK = (1 << 14) - 1 -} DBusThreadFunctionsMask; - -/** - * Functions that must be implemented to make the D-Bus library - * thread-aware. The recursive mutex functions should be specified - * rather than the old, deprecated nonrecursive ones. - * - * The condition variable functions have to work with recursive - * mutexes if you provide those, or with nonrecursive mutexes if you - * provide those. - * - * If implementing threads using pthreads, be aware that - * PTHREAD_MUTEX_RECURSIVE is broken in combination with condition - * variables. libdbus relies on the Java-style behavior that when - * waiting on a condition, the recursion count is saved and restored, - * and the mutex is completely unlocked, not just decremented one - * level of recursion. - * - * Thus with pthreads you probably have to roll your own emulated - * recursive mutexes, you can't use PTHREAD_MUTEX_RECURSIVE. This is - * what dbus_threads_init_default() does on platforms that use - * pthreads. - */ -typedef struct -{ - unsigned int mask; /**< Mask indicating which functions are present. */ - - DBusMutexNewFunction mutex_new; /**< Function to create a mutex; optional and deprecated. */ - DBusMutexFreeFunction mutex_free; /**< Function to free a mutex; optional and deprecated. */ - DBusMutexLockFunction mutex_lock; /**< Function to lock a mutex; optional and deprecated. */ - DBusMutexUnlockFunction mutex_unlock; /**< Function to unlock a mutex; optional and deprecated. */ - - DBusCondVarNewFunction condvar_new; /**< Function to create a condition variable */ - DBusCondVarFreeFunction condvar_free; /**< Function to free a condition variable */ - DBusCondVarWaitFunction condvar_wait; /**< Function to wait on a condition */ - DBusCondVarWaitTimeoutFunction condvar_wait_timeout; /**< Function to wait on a condition with a timeout */ - DBusCondVarWakeOneFunction condvar_wake_one; /**< Function to wake one thread waiting on the condition */ - DBusCondVarWakeAllFunction condvar_wake_all; /**< Function to wake all threads waiting on the condition */ - - DBusRecursiveMutexNewFunction recursive_mutex_new; /**< Function to create a recursive mutex */ - DBusRecursiveMutexFreeFunction recursive_mutex_free; /**< Function to free a recursive mutex */ - DBusRecursiveMutexLockFunction recursive_mutex_lock; /**< Function to lock a recursive mutex */ - DBusRecursiveMutexUnlockFunction recursive_mutex_unlock; /**< Function to unlock a recursive mutex */ - - void (* padding1) (void); /**< Reserved for future expansion */ - void (* padding2) (void); /**< Reserved for future expansion */ - void (* padding3) (void); /**< Reserved for future expansion */ - void (* padding4) (void); /**< Reserved for future expansion */ - -} DBusThreadFunctions; - -DBUS_EXPORT -dbus_bool_t dbus_threads_init (const DBusThreadFunctions *functions); -DBUS_EXPORT -dbus_bool_t dbus_threads_init_default (void); - -/** @} */ - -DBUS_END_DECLS - -#endif /* DBUS_THREADS_H */ diff --git a/include/dbus-1/dbus/dbus-timeout.h b/include/dbus-1/dbus/dbus-timeout.h deleted file mode 100644 index d0a8af4a..00000000 --- a/include/dbus-1/dbus/dbus-timeout.h +++ /dev/null @@ -1,75 +0,0 @@ -/* -*- mode: C; c-file-style: "gnu"; indent-tabs-mode: nil; -*- */ -/* dbus-timeout.h DBusTimeout internal interfaces - * - * Copyright (C) 2003 CodeFactory AB - * - * Licensed under the Academic Free License version 2.1 - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2 of the License, or - * (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with this program; if not, write to the Free Software - * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA - * - */ -#ifndef DBUS_TIMEOUT_H -#define DBUS_TIMEOUT_H - -#include <dbus/dbus-connection.h> -#include <dbus/dbus-internals.h> - -DBUS_BEGIN_DECLS - -/** - * @addtogroup DBusTimeoutInternals - * @{ - */ - -/* Public methods on DBusTimeout are in dbus-connection.h */ - -typedef struct DBusTimeoutList DBusTimeoutList; - -/** function to run when the timeout is handled */ -typedef dbus_bool_t (* DBusTimeoutHandler) (void *data); - -DBusTimeout* _dbus_timeout_new (int interval, - DBusTimeoutHandler handler, - void *data, - DBusFreeFunction free_data_function); -DBusTimeout* _dbus_timeout_ref (DBusTimeout *timeout); -void _dbus_timeout_unref (DBusTimeout *timeout); -void _dbus_timeout_set_interval (DBusTimeout *timeout, - int interval); -void _dbus_timeout_set_enabled (DBusTimeout *timeout, - dbus_bool_t enabled); - -DBusTimeoutList *_dbus_timeout_list_new (void); -void _dbus_timeout_list_free (DBusTimeoutList *timeout_list); -dbus_bool_t _dbus_timeout_list_set_functions (DBusTimeoutList *timeout_list, - DBusAddTimeoutFunction add_function, - DBusRemoveTimeoutFunction remove_function, - DBusTimeoutToggledFunction toggled_function, - void *data, - DBusFreeFunction free_data_function); -dbus_bool_t _dbus_timeout_list_add_timeout (DBusTimeoutList *timeout_list, - DBusTimeout *timeout); -void _dbus_timeout_list_remove_timeout (DBusTimeoutList *timeout_list, - DBusTimeout *timeout); -void _dbus_timeout_list_toggle_timeout (DBusTimeoutList *timeout_list, - DBusTimeout *timeout, - dbus_bool_t enabled); - - -/** @} */ - -DBUS_END_DECLS - -#endif /* DBUS_TIMEOUT_H */ diff --git a/include/dbus-1/dbus/dbus-transport-protected.h b/include/dbus-1/dbus/dbus-transport-protected.h deleted file mode 100644 index 44b9d785..00000000 --- a/include/dbus-1/dbus/dbus-transport-protected.h +++ /dev/null @@ -1,146 +0,0 @@ -/* -*- mode: C; c-file-style: "gnu"; indent-tabs-mode: nil; -*- */ -/* dbus-transport-protected.h Used by subclasses of DBusTransport object (internal to D-Bus implementation) - * - * Copyright (C) 2002, 2004 Red Hat Inc. - * - * Licensed under the Academic Free License version 2.1 - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2 of the License, or - * (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with this program; if not, write to the Free Software - * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA - * - */ -#ifndef DBUS_TRANSPORT_PROTECTED_H -#define DBUS_TRANSPORT_PROTECTED_H - -#include <dbus/dbus-internals.h> -#include <dbus/dbus-errors.h> -#include <dbus/dbus-transport.h> -#include <dbus/dbus-message-internal.h> -#include <dbus/dbus-auth.h> -#include <dbus/dbus-resources.h> - -DBUS_BEGIN_DECLS - -typedef struct DBusTransportVTable DBusTransportVTable; - -/** - * The virtual table that must be implemented to - * create a new kind of transport. - */ -struct DBusTransportVTable -{ - void (* finalize) (DBusTransport *transport); - /**< The finalize method must free the transport. */ - - dbus_bool_t (* handle_watch) (DBusTransport *transport, - DBusWatch *watch, - unsigned int flags); - /**< The handle_watch method handles reading/writing - * data as indicated by the flags. - */ - - void (* disconnect) (DBusTransport *transport); - /**< Disconnect this transport. */ - - dbus_bool_t (* connection_set) (DBusTransport *transport); - /**< Called when transport->connection has been filled in */ - - void (* do_iteration) (DBusTransport *transport, - unsigned int flags, - int timeout_milliseconds); - /**< Called to do a single "iteration" (block on select/poll - * followed by reading or writing data). - */ - - void (* live_messages_changed) (DBusTransport *transport); - /**< Outstanding messages counter changed */ - - dbus_bool_t (* get_socket_fd) (DBusTransport *transport, - int *fd_p); - /**< Get socket file descriptor */ -}; - -/** - * Object representing a transport such as a socket. - * A transport can shuttle messages from point A to point B, - * and is the backend for a #DBusConnection. - * - */ -struct DBusTransport -{ - int refcount; /**< Reference count. */ - - const DBusTransportVTable *vtable; /**< Virtual methods for this instance. */ - - DBusConnection *connection; /**< Connection owning this transport. */ - - DBusMessageLoader *loader; /**< Message-loading buffer. */ - - DBusAuth *auth; /**< Authentication conversation */ - - DBusCredentials *credentials; /**< Credentials of other end read from the socket */ - - long max_live_messages_size; /**< Max total size of received messages. */ - long max_live_messages_unix_fds; /**< Max total unix fds of received messages. */ - - DBusCounter *live_messages; /**< Counter for size/unix fds of all live messages. */ - - char *address; /**< Address of the server we are connecting to (#NULL for the server side of a transport) */ - - char *expected_guid; /**< GUID we expect the server to have, #NULL on server side or if we don't have an expectation */ - - DBusAllowUnixUserFunction unix_user_function; /**< Function for checking whether a user is authorized. */ - void *unix_user_data; /**< Data for unix_user_function */ - - DBusFreeFunction free_unix_user_data; /**< Function to free unix_user_data */ - - DBusAllowWindowsUserFunction windows_user_function; /**< Function for checking whether a user is authorized. */ - void *windows_user_data; /**< Data for windows_user_function */ - - DBusFreeFunction free_windows_user_data; /**< Function to free windows_user_data */ - - unsigned int disconnected : 1; /**< #TRUE if we are disconnected. */ - unsigned int authenticated : 1; /**< Cache of auth state; use _dbus_transport_get_is_authenticated() to query value */ - unsigned int send_credentials_pending : 1; /**< #TRUE if we need to send credentials */ - unsigned int receive_credentials_pending : 1; /**< #TRUE if we need to receive credentials */ - unsigned int is_server : 1; /**< #TRUE if on the server side */ - unsigned int unused_bytes_recovered : 1; /**< #TRUE if we've recovered unused bytes from auth */ - unsigned int allow_anonymous : 1; /**< #TRUE if an anonymous client can connect */ -}; - -dbus_bool_t _dbus_transport_init_base (DBusTransport *transport, - const DBusTransportVTable *vtable, - const DBusString *server_guid, - const DBusString *address); -void _dbus_transport_finalize_base (DBusTransport *transport); - - -typedef enum -{ - DBUS_TRANSPORT_OPEN_NOT_HANDLED, /**< we aren't in charge of this address type */ - DBUS_TRANSPORT_OPEN_OK, /**< we set up the listen */ - DBUS_TRANSPORT_OPEN_BAD_ADDRESS, /**< malformed address */ - DBUS_TRANSPORT_OPEN_DID_NOT_CONNECT /**< well-formed address but failed to set it up */ -} DBusTransportOpenResult; - -DBusTransportOpenResult _dbus_transport_open_platform_specific (DBusAddressEntry *entry, - DBusTransport **transport_p, - DBusError *error); - -#define DBUS_TRANSPORT_CAN_SEND_UNIX_FD(x) \ - _dbus_auth_get_unix_fd_negotiated((x)->auth) - -DBUS_END_DECLS - -#endif /* DBUS_TRANSPORT_PROTECTED_H */ diff --git a/include/dbus-1/dbus/dbus-transport-socket.h b/include/dbus-1/dbus/dbus-transport-socket.h deleted file mode 100644 index 8aefae37..00000000 --- a/include/dbus-1/dbus/dbus-transport-socket.h +++ /dev/null @@ -1,46 +0,0 @@ -/* -*- mode: C; c-file-style: "gnu"; indent-tabs-mode: nil; -*- */ -/* dbus-transport-socket.h Socket subclasses of DBusTransport - * - * Copyright (C) 2002, 2006 Red Hat Inc. - * - * Licensed under the Academic Free License version 2.1 - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2 of the License, or - * (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with this program; if not, write to the Free Software - * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA - * - */ -#ifndef DBUS_TRANSPORT_SOCKET_H -#define DBUS_TRANSPORT_SOCKET_H - -#include <dbus/dbus-transport-protected.h> - -DBUS_BEGIN_DECLS - -DBusTransport* _dbus_transport_new_for_socket (int fd, - const DBusString *server_guid, - const DBusString *address); -DBusTransport* _dbus_transport_new_for_tcp_socket (const char *host, - const char *port, - const char *family, - const char *noncefile, - DBusError *error); -DBusTransportOpenResult _dbus_transport_open_socket (DBusAddressEntry *entry, - DBusTransport **transport_p, - DBusError *error); - - - -DBUS_END_DECLS - -#endif /* DBUS_TRANSPORT_SOCKET_H */ diff --git a/include/dbus-1/dbus/dbus-transport-unix.h b/include/dbus-1/dbus/dbus-transport-unix.h deleted file mode 100644 index 783a8313..00000000 --- a/include/dbus-1/dbus/dbus-transport-unix.h +++ /dev/null @@ -1,37 +0,0 @@ -/* -*- mode: C; c-file-style: "gnu"; indent-tabs-mode: nil; -*- */ -/* dbus-transport-unix.h UNIX socket subclasses of DBusTransport - * - * Copyright (C) 2002 Red Hat Inc. - * - * Licensed under the Academic Free License version 2.1 - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2 of the License, or - * (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with this program; if not, write to the Free Software - * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA - * - */ -#ifndef DBUS_TRANSPORT_UNIX_H -#define DBUS_TRANSPORT_UNIX_H - -#include <dbus/dbus-transport.h> - -DBUS_BEGIN_DECLS - -DBusTransport* _dbus_transport_new_for_domain_socket (const char *path, - dbus_bool_t abstract, - DBusError *error); - - -DBUS_END_DECLS - -#endif /* DBUS_TRANSPORT_UNIX_H */ diff --git a/include/dbus-1/dbus/dbus-transport-win.h b/include/dbus-1/dbus/dbus-transport-win.h deleted file mode 100644 index af997a27..00000000 --- a/include/dbus-1/dbus/dbus-transport-win.h +++ /dev/null @@ -1,33 +0,0 @@ -/* -*- mode: C; c-file-style: "gnu"; indent-tabs-mode: nil; -*- */ -/* dbus-transport-win.h Windows socket subclasses of DBusTransport - * - * Copyright (C) 2002 Red Hat Inc. - * Copyright (C) 2007 Ralf Habacker <ralf.habacker@freenet.de> - * - * Licensed under the Academic Free License version 2.1 - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2 of the License, or - * (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with this program; if not, write to the Free Software - * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA - * - */ -#ifndef DBUS_TRANSPORT_WIN_H -#define DBUS_TRANSPORT_WIN_H - -#include <dbus/dbus-transport.h> - -DBUS_BEGIN_DECLS - -DBUS_END_DECLS - -#endif /* DBUS_TRANSPORT_WIN_H */ diff --git a/include/dbus-1/dbus/dbus-transport.h b/include/dbus-1/dbus/dbus-transport.h deleted file mode 100644 index 0db048a2..00000000 --- a/include/dbus-1/dbus/dbus-transport.h +++ /dev/null @@ -1,103 +0,0 @@ -/* -*- mode: C; c-file-style: "gnu"; indent-tabs-mode: nil; -*- */ -/* dbus-transport.h DBusTransport object (internal to D-BUS implementation) - * - * Copyright (C) 2002, 2004 Red Hat Inc. - * - * Licensed under the Academic Free License version 2.1 - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2 of the License, or - * (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with this program; if not, write to the Free Software - * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA - * - */ -#ifndef DBUS_TRANSPORT_H -#define DBUS_TRANSPORT_H - -#include <dbus/dbus-internals.h> -#include <dbus/dbus-connection.h> -#include <dbus/dbus-protocol.h> -#include <dbus/dbus-address.h> - -DBUS_BEGIN_DECLS - -typedef struct DBusTransport DBusTransport; - -DBusTransport* _dbus_transport_open (DBusAddressEntry *entry, - DBusError *error); -DBusTransport* _dbus_transport_ref (DBusTransport *transport); -void _dbus_transport_unref (DBusTransport *transport); -void _dbus_transport_disconnect (DBusTransport *transport); -dbus_bool_t _dbus_transport_get_is_connected (DBusTransport *transport); -dbus_bool_t _dbus_transport_get_is_authenticated (DBusTransport *transport); -dbus_bool_t _dbus_transport_get_is_anonymous (DBusTransport *transport); -dbus_bool_t _dbus_transport_can_pass_unix_fd (DBusTransport *transport); - -const char* _dbus_transport_get_address (DBusTransport *transport); -const char* _dbus_transport_get_server_id (DBusTransport *transport); -dbus_bool_t _dbus_transport_handle_watch (DBusTransport *transport, - DBusWatch *watch, - unsigned int condition); -dbus_bool_t _dbus_transport_set_connection (DBusTransport *transport, - DBusConnection *connection); -void _dbus_transport_do_iteration (DBusTransport *transport, - unsigned int flags, - int timeout_milliseconds); -DBusDispatchStatus _dbus_transport_get_dispatch_status (DBusTransport *transport); -dbus_bool_t _dbus_transport_queue_messages (DBusTransport *transport); - -void _dbus_transport_set_max_message_size (DBusTransport *transport, - long size); -long _dbus_transport_get_max_message_size (DBusTransport *transport); -void _dbus_transport_set_max_received_size (DBusTransport *transport, - long size); -long _dbus_transport_get_max_received_size (DBusTransport *transport); - -void _dbus_transport_set_max_message_unix_fds (DBusTransport *transport, - long n); -long _dbus_transport_get_max_message_unix_fds (DBusTransport *transport); -void _dbus_transport_set_max_received_unix_fds(DBusTransport *transport, - long n); -long _dbus_transport_get_max_received_unix_fds(DBusTransport *transport); - -dbus_bool_t _dbus_transport_get_socket_fd (DBusTransport *transport, - int *fd_p); -dbus_bool_t _dbus_transport_get_unix_user (DBusTransport *transport, - unsigned long *uid); -dbus_bool_t _dbus_transport_get_unix_process_id (DBusTransport *transport, - unsigned long *pid); -dbus_bool_t _dbus_transport_get_adt_audit_session_data (DBusTransport *transport, - void **data, - int *data_size); -void _dbus_transport_set_unix_user_function (DBusTransport *transport, - DBusAllowUnixUserFunction function, - void *data, - DBusFreeFunction free_data_function, - void **old_data, - DBusFreeFunction *old_free_data_function); -dbus_bool_t _dbus_transport_get_windows_user (DBusTransport *transport, - char **windows_sid_p); -void _dbus_transport_set_windows_user_function (DBusTransport *transport, - DBusAllowWindowsUserFunction function, - void *data, - DBusFreeFunction free_data_function, - void **old_data, - DBusFreeFunction *old_free_data_function); -dbus_bool_t _dbus_transport_set_auth_mechanisms (DBusTransport *transport, - const char **mechanisms); -void _dbus_transport_set_allow_anonymous (DBusTransport *transport, - dbus_bool_t value); - - -DBUS_END_DECLS - -#endif /* DBUS_TRANSPORT_H */ diff --git a/include/dbus-1/dbus/dbus-types.h b/include/dbus-1/dbus/dbus-types.h deleted file mode 100644 index 54f348f3..00000000 --- a/include/dbus-1/dbus/dbus-types.h +++ /dev/null @@ -1,139 +0,0 @@ -/* -*- mode: C; c-file-style: "gnu"; indent-tabs-mode: nil; -*- */ -/* dbus-types.h types such as dbus_bool_t - * - * Copyright (C) 2002 Red Hat Inc. - * - * Licensed under the Academic Free License version 2.1 - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2 of the License, or - * (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with this program; if not, write to the Free Software - * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA - * - */ -#if !defined (DBUS_INSIDE_DBUS_H) && !defined (DBUS_COMPILATION) -#error "Only <dbus/dbus.h> can be included directly, this file may disappear or change contents." -#endif - -#ifndef DBUS_TYPES_H -#define DBUS_TYPES_H - -#include <stddef.h> -#include <dbus/dbus-arch-deps.h> - -typedef dbus_uint32_t dbus_unichar_t; -/* boolean size must be fixed at 4 bytes due to wire protocol! */ -typedef dbus_uint32_t dbus_bool_t; - -/* Normally docs are in .c files, but there isn't a .c file for this. */ -/** - * @defgroup DBusTypes Basic types - * @ingroup DBus - * @brief dbus_bool_t, dbus_int32_t, etc. - * - * Typedefs for common primitive types. - * - * @{ - */ - -/** - * @typedef dbus_bool_t - * - * A boolean, valid values are #TRUE and #FALSE. - */ - -/** - * @typedef dbus_uint32_t - * - * A 32-bit unsigned integer on all platforms. - */ - -/** - * @typedef dbus_int32_t - * - * A 32-bit signed integer on all platforms. - */ - -/** - * @typedef dbus_uint16_t - * - * A 16-bit unsigned integer on all platforms. - */ - -/** - * @typedef dbus_int16_t - * - * A 16-bit signed integer on all platforms. - */ - - -/** - * @typedef dbus_uint64_t - * - * A 64-bit unsigned integer on all platforms that support it. - * If supported, #DBUS_HAVE_INT64 will be defined. - * - * C99 requires a 64-bit type and most likely all interesting - * compilers support one. GLib for example flat-out requires - * a 64-bit type. - * - * You probably want to just assume #DBUS_HAVE_INT64 is always defined. - */ - -/** - * @typedef dbus_int64_t - * - * A 64-bit signed integer on all platforms that support it. - * If supported, #DBUS_HAVE_INT64 will be defined. - * - * C99 requires a 64-bit type and most likely all interesting - * compilers support one. GLib for example flat-out requires - * a 64-bit type. - * - * You probably want to just assume #DBUS_HAVE_INT64 is always defined. - */ - -/** - * @def DBUS_HAVE_INT64 - * - * Defined if 64-bit integers are available. Will be defined - * on any platform you care about, unless you care about - * some truly ancient UNIX, or some bizarre embedded platform. - * - * C99 requires a 64-bit type and most likely all interesting - * compilers support one. GLib for example flat-out requires - * a 64-bit type. - * - * You should feel comfortable ignoring this macro and just using - * int64 unconditionally. - * - */ - -/** - * @def DBUS_INT64_CONSTANT - * - * Declare a 64-bit signed integer constant. The macro - * adds the necessary "LL" or whatever after the integer, - * giving a literal such as "325145246765LL" - */ - -/** - * @def DBUS_UINT64_CONSTANT - * - * Declare a 64-bit unsigned integer constant. The macro - * adds the necessary "ULL" or whatever after the integer, - * giving a literal such as "325145246765ULL" - */ - -/** @} */ - -#endif /* DBUS_TYPES_H */ diff --git a/include/dbus-1/dbus/dbus-userdb.h b/include/dbus-1/dbus/dbus-userdb.h deleted file mode 100644 index cb49d9e7..00000000 --- a/include/dbus-1/dbus/dbus-userdb.h +++ /dev/null @@ -1,121 +0,0 @@ -/* -*- mode: C; c-file-style: "gnu"; indent-tabs-mode: nil; -*- */ -/* dbus-userdb.h User database abstraction - * - * Copyright (C) 2003 Red Hat, Inc. - * - * Licensed under the Academic Free License version 2.1 - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2 of the License, or - * (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with this program; if not, write to the Free Software - * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA - * - */ - -#ifndef DBUS_USERDB_H -#define DBUS_USERDB_H - -#include <dbus/dbus-sysdeps-unix.h> - -#ifdef DBUS_WIN -#error "Don't include this on Windows" -#endif - -DBUS_BEGIN_DECLS - -typedef struct DBusUserDatabase DBusUserDatabase; - -#ifdef DBUS_USERDB_INCLUDES_PRIVATE -#include <dbus/dbus-hash.h> - -/** - * Internals of DBusUserDatabase - */ -struct DBusUserDatabase -{ - int refcount; /**< Reference count */ - - DBusHashTable *users; /**< Users in the database by UID */ - DBusHashTable *groups; /**< Groups in the database by GID */ - DBusHashTable *users_by_name; /**< Users in the database by name */ - DBusHashTable *groups_by_name; /**< Groups in the database by name */ - -}; - - -DBusUserDatabase* _dbus_user_database_new (void); -DBusUserDatabase* _dbus_user_database_ref (DBusUserDatabase *db); -void _dbus_user_database_flush (DBusUserDatabase *db); -void _dbus_user_database_unref (DBusUserDatabase *db); -dbus_bool_t _dbus_user_database_get_uid (DBusUserDatabase *db, - dbus_uid_t uid, - const DBusUserInfo **info, - DBusError *error); -dbus_bool_t _dbus_user_database_get_gid (DBusUserDatabase *db, - dbus_gid_t gid, - const DBusGroupInfo **info, - DBusError *error); -dbus_bool_t _dbus_user_database_get_username (DBusUserDatabase *db, - const DBusString *username, - const DBusUserInfo **info, - DBusError *error); -dbus_bool_t _dbus_user_database_get_groupname (DBusUserDatabase *db, - const DBusString *groupname, - const DBusGroupInfo **info, - DBusError *error); - -DBusUserInfo* _dbus_user_database_lookup (DBusUserDatabase *db, - dbus_uid_t uid, - const DBusString *username, - DBusError *error); -DBusGroupInfo* _dbus_user_database_lookup_group (DBusUserDatabase *db, - dbus_gid_t gid, - const DBusString *groupname, - DBusError *error); -void _dbus_user_info_free_allocated (DBusUserInfo *info); -void _dbus_group_info_free_allocated (DBusGroupInfo *info); -#endif /* DBUS_USERDB_INCLUDES_PRIVATE */ - -DBusUserDatabase* _dbus_user_database_get_system (void); -void _dbus_user_database_lock_system (void); -void _dbus_user_database_unlock_system (void); -void _dbus_user_database_flush_system (void); - -dbus_bool_t _dbus_get_user_id (const DBusString *username, - dbus_uid_t *uid); -dbus_bool_t _dbus_get_group_id (const DBusString *group_name, - dbus_gid_t *gid); -dbus_bool_t _dbus_get_user_id_and_primary_group (const DBusString *username, - dbus_uid_t *uid_p, - dbus_gid_t *gid_p); -dbus_bool_t _dbus_credentials_from_uid (dbus_uid_t user_id, - DBusCredentials *credentials); -dbus_bool_t _dbus_groups_from_uid (dbus_uid_t uid, - dbus_gid_t **group_ids, - int *n_group_ids); -dbus_bool_t _dbus_is_console_user (dbus_uid_t uid, - DBusError *error); - -dbus_bool_t _dbus_is_a_number (const DBusString *str, - unsigned long *num); - -dbus_bool_t _dbus_username_from_current_process (const DBusString **username); -dbus_bool_t _dbus_homedir_from_current_process (const DBusString **homedir); -dbus_bool_t _dbus_homedir_from_username (const DBusString *username, - DBusString *homedir); - -dbus_bool_t _dbus_homedir_from_uid (dbus_uid_t uid, - DBusString *homedir); - -DBUS_END_DECLS - -#endif /* DBUS_USERDB_H */ diff --git a/include/dbus-1/dbus/dbus-uuidgen.h b/include/dbus-1/dbus/dbus-uuidgen.h deleted file mode 100644 index 9c1b8595..00000000 --- a/include/dbus-1/dbus/dbus-uuidgen.h +++ /dev/null @@ -1,47 +0,0 @@ -/* -*- mode: C; c-file-style: "gnu"; indent-tabs-mode: nil; -*- */ -/* dbus-uuidgen.h The guts of the dbus-uuidgen binary live in libdbus, in this file. - * - * Copyright (C) 2006 Red Hat, Inc. - * - * Licensed under the Academic Free License version 2.1 - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2 of the License, or - * (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with this program; if not, write to the Free Software - * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA - * - */ -#ifdef DBUS_INSIDE_DBUS_H -#error "You can't include dbus-uuidgen.h in the public header dbus.h" -#endif - -#ifndef DBUS_UUIDGEN_H -#define DBUS_UUIDGEN_H - -#include <dbus/dbus-types.h> -#include <dbus/dbus-errors.h> - -DBUS_BEGIN_DECLS - -dbus_bool_t dbus_internal_do_not_use_get_uuid (const char *filename, - char **uuid_p, - dbus_bool_t create_if_not_found, - DBusError *error); -dbus_bool_t dbus_internal_do_not_use_ensure_uuid (const char *filename, - char **uuid_p, - DBusError *error); -dbus_bool_t dbus_internal_do_not_use_create_uuid (char **uuid_p); - - -DBUS_END_DECLS - -#endif /* DBUS_UUIDGEN_H */ diff --git a/include/dbus-1/dbus/dbus-watch.h b/include/dbus-1/dbus/dbus-watch.h deleted file mode 100644 index fa953ec1..00000000 --- a/include/dbus-1/dbus/dbus-watch.h +++ /dev/null @@ -1,83 +0,0 @@ -/* -*- mode: C; c-file-style: "gnu"; indent-tabs-mode: nil; -*- */ -/* dbus-watch.h DBusWatch internal interfaces - * - * Copyright (C) 2002 Red Hat Inc. - * - * Licensed under the Academic Free License version 2.1 - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2 of the License, or - * (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with this program; if not, write to the Free Software - * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA - * - */ -#ifndef DBUS_WATCH_H -#define DBUS_WATCH_H - -#include <dbus/dbus-internals.h> -#include <dbus/dbus-connection.h> - -DBUS_BEGIN_DECLS - -/** - * @addtogroup DBusWatchInternals - * @{ - */ - -/* Public methods on DBusWatch are in dbus-connection.h */ - -typedef struct DBusWatchList DBusWatchList; - -/** function to run when the watch is handled */ -typedef dbus_bool_t (* DBusWatchHandler) (DBusWatch *watch, - unsigned int flags, - void *data); - -DBusWatch* _dbus_watch_new (int fd, - unsigned int flags, - dbus_bool_t enabled, - DBusWatchHandler handler, - void *data, - DBusFreeFunction free_data_function); -DBusWatch* _dbus_watch_ref (DBusWatch *watch); -void _dbus_watch_unref (DBusWatch *watch); -void _dbus_watch_invalidate (DBusWatch *watch); -void _dbus_watch_sanitize_condition (DBusWatch *watch, - unsigned int *condition); -void _dbus_watch_set_handler (DBusWatch *watch, - DBusWatchHandler handler, - void *data, - DBusFreeFunction free_data_function); - - -DBusWatchList* _dbus_watch_list_new (void); -void _dbus_watch_list_free (DBusWatchList *watch_list); -dbus_bool_t _dbus_watch_list_set_functions (DBusWatchList *watch_list, - DBusAddWatchFunction add_function, - DBusRemoveWatchFunction remove_function, - DBusWatchToggledFunction toggled_function, - void *data, - DBusFreeFunction free_data_function); -dbus_bool_t _dbus_watch_list_add_watch (DBusWatchList *watch_list, - DBusWatch *watch); -void _dbus_watch_list_remove_watch (DBusWatchList *watch_list, - DBusWatch *watch); -void _dbus_watch_list_toggle_watch (DBusWatchList *watch_list, - DBusWatch *watch, - dbus_bool_t enabled); -dbus_bool_t _dbus_watch_get_enabled (DBusWatch *watch); - -/** @} */ - -DBUS_END_DECLS - -#endif /* DBUS_WATCH_H */ diff --git a/include/dbus-1/dbus/dbus.h b/include/dbus-1/dbus/dbus.h deleted file mode 100644 index 1f099508..00000000 --- a/include/dbus-1/dbus/dbus.h +++ /dev/null @@ -1,103 +0,0 @@ -/* -*- mode: C; c-file-style: "gnu"; indent-tabs-mode: nil; -*- */ -/* dbus.h Convenience header including all other headers - * - * Copyright (C) 2002, 2003 Red Hat Inc. - * - * Licensed under the Academic Free License version 2.1 - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2 of the License, or - * (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with this program; if not, write to the Free Software - * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA - * - */ - -#ifndef DBUS_H -#define DBUS_H - -#define DBUS_INSIDE_DBUS_H 1 - -#include <dbus/dbus-arch-deps.h> -#include <dbus/dbus-address.h> -#include <dbus/dbus-bus.h> -#include <dbus/dbus-connection.h> -#include <dbus/dbus-errors.h> -#include <dbus/dbus-macros.h> -#include <dbus/dbus-message.h> -#include <dbus/dbus-misc.h> -#include <dbus/dbus-pending-call.h> -#include <dbus/dbus-protocol.h> -#include <dbus/dbus-server.h> -#include <dbus/dbus-shared.h> -#include <dbus/dbus-signature.h> -#include <dbus/dbus-threads.h> -#include <dbus/dbus-types.h> - -#undef DBUS_INSIDE_DBUS_H - -/** - * @defgroup DBus D-Bus low-level public API - * @brief The low-level public API of the D-Bus library - * - * libdbus provides a low-level C API intended primarily for use by - * bindings to specific object systems and languages. D-Bus is most - * convenient when used with the GLib bindings, Python bindings, Qt - * bindings, Mono bindings, and so forth. This low-level API has a - * lot of complexity useful only for bindings. - * - * @{ - */ - -/** @} */ - -/** - * @mainpage - * - * This manual documents the <em>low-level</em> D-Bus C API. <b>If you use - * this low-level API directly, you're signing up for some pain.</b> - * - * Caveats aside, you might get started learning the low-level API by reading - * about @ref DBusConnection and @ref DBusMessage. - * - * There are several other places to look for D-Bus information, such - * as the tutorial and the specification; those can be found at <a - * href="http://www.freedesktop.org/wiki/Software/dbus">the D-Bus - * website</a>. If you're interested in a sysadmin or package - * maintainer's perspective on the dbus-daemon itself and its - * configuration, be sure to check out the man pages as well. - * - * The low-level API documented in this manual deliberately lacks - * most convenience functions - those are left up to higher-level libraries - * based on frameworks such as GLib, Qt, Python, Mono, Java, - * etc. These higher-level libraries (often called "D-Bus bindings") - * have features such as object systems and main loops that allow a - * <em>much</em> more convenient API. - * - * The low-level API also contains plenty of clutter to support - * integration with arbitrary object systems, languages, main loops, - * and so forth. These features add a lot of noise to the API that you - * probably don't care about unless you're coding a binding. - * - * This manual also contains docs for @ref DBusInternals "D-Bus internals", - * so you can use it to get oriented to the D-Bus source code if you're - * interested in patching the code. You should also read the - * file HACKING which comes with the source code if you plan to contribute to - * D-Bus. - * - * As you read the code, you can identify internal D-Bus functions - * because they start with an underscore ('_') character. Also, any - * identifier or macro that lacks a DBus, dbus_, or DBUS_ namepace - * prefix is internal, with a couple of exceptions such as #NULL, - * #TRUE, and #FALSE. - */ - -#endif /* DBUS_H */ diff --git a/include/dbus-1/dbus/sd-daemon.h b/include/dbus-1/dbus/sd-daemon.h deleted file mode 100644 index c68c96d2..00000000 --- a/include/dbus-1/dbus/sd-daemon.h +++ /dev/null @@ -1,257 +0,0 @@ -/*-*- Mode: C; c-basic-offset: 8; indent-tabs-mode: nil -*-*/ - -#ifndef foosddaemonhfoo -#define foosddaemonhfoo - -/*** - Copyright 2010 Lennart Poettering - - Permission is hereby granted, free of charge, to any person - obtaining a copy of this software and associated documentation files - (the "Software"), to deal in the Software without restriction, - including without limitation the rights to use, copy, modify, merge, - publish, distribute, sublicense, and/or sell copies of the Software, - and to permit persons to whom the Software is furnished to do so, - subject to the following conditions: - - The above copyright notice and this permission notice shall be - included in all copies or substantial portions of the Software. - - THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, - EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF - MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND - NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS - BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN - ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN - CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE - SOFTWARE. -***/ - -#include <sys/types.h> -#include <inttypes.h> - -#ifdef __cplusplus -extern "C" { -#endif - -/* - Reference implementation of a few systemd related interfaces for - writing daemons. These interfaces are trivial to implement. To - simplify porting we provide this reference implementation. - Applications are welcome to reimplement the algorithms described - here if they do not want to include these two source files. - - The following functionality is provided: - - - Support for logging with log levels on stderr - - File descriptor passing for socket-based activation - - Daemon startup and status notification - - Detection of systemd boots - - You may compile this with -DDISABLE_SYSTEMD to disable systemd - support. This makes all those calls NOPs that are directly related to - systemd (i.e. only sd_is_xxx() will stay useful). - - Since this is drop-in code we don't want any of our symbols to be - exported in any case. Hence we declare hidden visibility for all of - them. - - You may find an up-to-date version of these source files online: - - http://cgit.freedesktop.org/systemd/plain/src/sd-daemon.h - http://cgit.freedesktop.org/systemd/plain/src/sd-daemon.c - - This should compile on non-Linux systems, too, but with the - exception of the sd_is_xxx() calls all functions will become NOPs. - - See sd-daemon(7) for more information. -*/ - -#if __GNUC__ >= 4 -#define _sd_printf_attr_(a,b) __attribute__ ((format (printf, a, b))) -#define _sd_hidden_ __attribute__ ((visibility("hidden"))) -#else -#define _sd_printf_attr_(a,b) -#define _sd_hidden_ -#endif - -/* - Log levels for usage on stderr: - - fprintf(stderr, SD_NOTICE "Hello World!\n"); - - This is similar to printk() usage in the kernel. -*/ -#define SD_EMERG "<0>" /* system is unusable */ -#define SD_ALERT "<1>" /* action must be taken immediately */ -#define SD_CRIT "<2>" /* critical conditions */ -#define SD_ERR "<3>" /* error conditions */ -#define SD_WARNING "<4>" /* warning conditions */ -#define SD_NOTICE "<5>" /* normal but significant condition */ -#define SD_INFO "<6>" /* informational */ -#define SD_DEBUG "<7>" /* debug-level messages */ - -/* The first passed file descriptor is fd 3 */ -#define SD_LISTEN_FDS_START 3 - -/* - Returns how many file descriptors have been passed, or a negative - errno code on failure. Optionally, removes the $LISTEN_FDS and - $LISTEN_PID file descriptors from the environment (recommended, but - problematic in threaded environments). If r is the return value of - this function you'll find the file descriptors passed as fds - SD_LISTEN_FDS_START to SD_LISTEN_FDS_START+r-1. Returns a negative - errno style error code on failure. This function call ensures that - the FD_CLOEXEC flag is set for the passed file descriptors, to make - sure they are not passed on to child processes. If FD_CLOEXEC shall - not be set, the caller needs to unset it after this call for all file - descriptors that are used. - - See sd_listen_fds(3) for more information. -*/ -int sd_listen_fds(int unset_environment) _sd_hidden_; - -/* - Helper call for identifying a passed file descriptor. Returns 1 if - the file descriptor is a FIFO in the file system stored under the - specified path, 0 otherwise. If path is NULL a path name check will - not be done and the call only verifies if the file descriptor - refers to a FIFO. Returns a negative errno style error code on - failure. - - See sd_is_fifo(3) for more information. -*/ -int sd_is_fifo(int fd, const char *path) _sd_hidden_; - -/* - Helper call for identifying a passed file descriptor. Returns 1 if - the file descriptor is a socket of the specified family (AF_INET, - ...) and type (SOCK_DGRAM, SOCK_STREAM, ...), 0 otherwise. If - family is 0 a socket family check will not be done. If type is 0 a - socket type check will not be done and the call only verifies if - the file descriptor refers to a socket. If listening is > 0 it is - verified that the socket is in listening mode. (i.e. listen() has - been called) If listening is == 0 it is verified that the socket is - not in listening mode. If listening is < 0 no listening mode check - is done. Returns a negative errno style error code on failure. - - See sd_is_socket(3) for more information. -*/ -int sd_is_socket(int fd, int family, int type, int listening) _sd_hidden_; - -/* - Helper call for identifying a passed file descriptor. Returns 1 if - the file descriptor is an Internet socket, of the specified family - (either AF_INET or AF_INET6) and the specified type (SOCK_DGRAM, - SOCK_STREAM, ...), 0 otherwise. If version is 0 a protocol version - check is not done. If type is 0 a socket type check will not be - done. If port is 0 a socket port check will not be done. The - listening flag is used the same way as in sd_is_socket(). Returns a - negative errno style error code on failure. - - See sd_is_socket_inet(3) for more information. -*/ -int sd_is_socket_inet(int fd, int family, int type, int listening, uint16_t port) _sd_hidden_; - -/* - Helper call for identifying a passed file descriptor. Returns 1 if - the file descriptor is an AF_UNIX socket of the specified type - (SOCK_DGRAM, SOCK_STREAM, ...) and path, 0 otherwise. If type is 0 - a socket type check will not be done. If path is NULL a socket path - check will not be done. For normal AF_UNIX sockets set length to - 0. For abstract namespace sockets set length to the length of the - socket name (including the initial 0 byte), and pass the full - socket path in path (including the initial 0 byte). The listening - flag is used the same way as in sd_is_socket(). Returns a negative - errno style error code on failure. - - See sd_is_socket_unix(3) for more information. -*/ -int sd_is_socket_unix(int fd, int type, int listening, const char *path, size_t length) _sd_hidden_; - -/* - Informs systemd about changed daemon state. This takes a number of - newline seperated environment-style variable assignments in a - string. The following variables are known: - - READY=1 Tells systemd that daemon startup is finished (only - relevant for services of Type=notify). The passed - argument is a boolean "1" or "0". Since there is - little value in signalling non-readiness the only - value daemons should send is "READY=1". - - STATUS=... Passes a single-line status string back to systemd - that describes the daemon state. This is free-from - and can be used for various purposes: general state - feedback, fsck-like programs could pass completion - percentages and failing programs could pass a human - readable error message. Example: "STATUS=Completed - 66% of file system check..." - - ERRNO=... If a daemon fails, the errno-style error code, - formatted as string. Example: "ERRNO=2" for ENOENT. - - BUSERROR=... If a daemon fails, the D-Bus error-style error - code. Example: "BUSERROR=org.freedesktop.DBus.Error.TimedOut" - - MAINPID=... The main pid of a daemon, in case systemd did not - fork off the process itself. Example: "MAINPID=4711" - - Daemons can choose to send additional variables. However, it is - recommened to prefix variable names not listed above with X_. - - Returns a negative errno-style error code on failure. Returns > 0 - if systemd could be notified, 0 if it couldn't possibly because - systemd is not running. - - Example: When a daemon finished starting up, it could issue this - call to notify systemd about it: - - sd_notify(0, "READY=1"); - - See sd_notifyf() for more complete examples. - - See sd_notify(3) for more information. -*/ -int sd_notify(int unset_environment, const char *state) _sd_hidden_; - -/* - Similar to sd_notify() but takes a format string. - - Example 1: A daemon could send the following after initialization: - - sd_notifyf(0, "READY=1\n" - "STATUS=Processing requests...\n" - "MAINPID=%lu", - (unsigned long) getpid()); - - Example 2: A daemon could send the following shortly before - exiting, on failure: - - sd_notifyf(0, "STATUS=Failed to start up: %s\n" - "ERRNO=%i", - strerror(errno), - errno); - - See sd_notifyf(3) for more information. -*/ -int sd_notifyf(int unset_environment, const char *format, ...) _sd_printf_attr_(2,3) _sd_hidden_; - -/* - Returns > 0 if the system was booted with systemd. Returns < 0 on - error. Returns 0 if the system was not booted with systemd. Note - that all of the functions above handle non-systemd boots just - fine. You should NOT protect them with a call to this function. Also - note that this function checks whether the system, not the user - session is controlled by systemd. However the functions above work - for both session and system services. - - See sd_booted(3) for more information. -*/ -int sd_booted(void) _sd_hidden_; - -#ifdef __cplusplus -} -#endif - -#endif |