diff options
Diffstat (limited to 'dbus')
30 files changed, 412 insertions, 73 deletions
diff --git a/dbus/dbus-address.c b/dbus/dbus-address.c index c6354f14..d92209d9 100644 --- a/dbus/dbus-address.c +++ b/dbus/dbus-address.c @@ -49,8 +49,20 @@ struct DBusAddressEntry }; +/** + * + * Sets #DBUS_ERROR_BAD_ADDRESS. + * If address_problem_type and address_problem_field are not #NULL, + * sets an error message about how the field is no good. Otherwise, sets + * address_problem_other as the error message. + * + * @param error the error to set + * @param address_problem_type the address type of the bad address or #NULL + * @param address_problem_field the missing field of the bad address or #NULL + * @param address_problem_other any other error message or #NULL + */ void -_dbus_set_bad_address (DBusError *error, +_dbus_set_bad_address (DBusError *error, const char *address_problem_type, const char *address_problem_field, const char *address_problem_other) @@ -65,6 +77,10 @@ _dbus_set_bad_address (DBusError *error, address_problem_other); } +/** + * #TRUE if the byte need not be escaped when found in a dbus address. + * All other bytes are required to be escaped in a valid address. + */ #define _DBUS_ADDRESS_OPTIONALLY_ESCAPED_BYTE(b) \ (((b) >= 'a' && (b) <= 'z') || \ ((b) >= 'A' && (b) <= 'Z') || \ @@ -615,6 +631,9 @@ dbus_address_unescape_value (const char *value, /** @} */ /* End of public API */ #ifdef DBUS_BUILD_TESTS + +#ifndef DOXYGEN_SHOULD_SKIP_THIS + #include "dbus-test.h" #include <stdlib.h> @@ -782,4 +801,6 @@ _dbus_address_test (void) return TRUE; } +#endif /* !DOXYGEN_SHOULD_SKIP_THIS */ + #endif diff --git a/dbus/dbus-connection.c b/dbus/dbus-connection.c index 4c1bce91..92fa15a8 100644 --- a/dbus/dbus-connection.c +++ b/dbus/dbus-connection.c @@ -373,18 +373,18 @@ _dbus_connection_queue_received_message (DBusConnection *connection, * variable pointer */ void -_dbus_connection_test_get_locks (DBusConnection *conn, +_dbus_connection_test_get_locks (DBusConnection *connection, DBusMutex **mutex_loc, DBusMutex **dispatch_mutex_loc, DBusMutex **io_path_mutex_loc, DBusCondVar **dispatch_cond_loc, DBusCondVar **io_path_cond_loc) { - *mutex_loc = conn->mutex; - *dispatch_mutex_loc = conn->dispatch_mutex; - *io_path_mutex_loc = conn->io_path_mutex; - *dispatch_cond_loc = conn->dispatch_cond; - *io_path_cond_loc = conn->io_path_cond; + *mutex_loc = connection->mutex; + *dispatch_mutex_loc = connection->dispatch_mutex; + *io_path_mutex_loc = connection->io_path_mutex; + *dispatch_cond_loc = connection->dispatch_cond; + *io_path_cond_loc = connection->io_path_cond; } #endif @@ -578,10 +578,13 @@ _dbus_connection_message_sent (DBusConnection *connection, dbus_message_unref (message); } +/** Function to be called in protected_change_watch() with refcount held */ typedef dbus_bool_t (* DBusWatchAddFunction) (DBusWatchList *list, DBusWatch *watch); +/** Function to be called in protected_change_watch() with refcount held */ typedef void (* DBusWatchRemoveFunction) (DBusWatchList *list, DBusWatch *watch); +/** Function to be called in protected_change_watch() with refcount held */ typedef void (* DBusWatchToggleFunction) (DBusWatchList *list, DBusWatch *watch, dbus_bool_t enabled); @@ -696,10 +699,13 @@ _dbus_connection_toggle_watch_unlocked (DBusConnection *connection, enabled); } +/** Function to be called in protected_change_timeout() with refcount held */ typedef dbus_bool_t (* DBusTimeoutAddFunction) (DBusTimeoutList *list, DBusTimeout *timeout); +/** Function to be called in protected_change_timeout() with refcount held */ typedef void (* DBusTimeoutRemoveFunction) (DBusTimeoutList *list, DBusTimeout *timeout); +/** Function to be called in protected_change_timeout() with refcount held */ typedef void (* DBusTimeoutToggleFunction) (DBusTimeoutList *list, DBusTimeout *timeout, dbus_bool_t enabled); @@ -1736,6 +1742,58 @@ _dbus_connection_open_internal (const char *address, return connection; } +/** + * Closes a shared OR private connection, while dbus_connection_close() can + * only be used on private connections. Should only be called by the + * dbus code that owns the connection - an owner must be known, + * the open/close state is like malloc/free, not like ref/unref. + * + * @param connection the connection + */ +void +_dbus_connection_close_possibly_shared (DBusConnection *connection) +{ + _dbus_assert (connection != NULL); + _dbus_assert (connection->generation == _dbus_current_generation); + + CONNECTION_LOCK (connection); + _dbus_connection_close_possibly_shared_and_unlock (connection); +} + + +/** + * Like dbus_connection_send(), but assumes the connection + * is already locked on function entry, and unlocks before returning. + * + * @param connection the connection + * @param message the message to send + * @param client_serial return location for client serial of sent message + * @returns #FALSE on out-of-memory + */ +dbus_bool_t +_dbus_connection_send_and_unlock (DBusConnection *connection, + DBusMessage *message, + dbus_uint32_t *client_serial) +{ + DBusPreallocatedSend *preallocated; + + _dbus_assert (connection != NULL); + _dbus_assert (message != NULL); + + preallocated = _dbus_connection_preallocate_send_unlocked (connection); + if (preallocated == NULL) + { + CONNECTION_UNLOCK (connection); + return FALSE; + } + + _dbus_connection_send_preallocated_and_unlock (connection, + preallocated, + message, + client_serial); + return TRUE; +} + /** @} */ /** @@ -2062,16 +2120,6 @@ _dbus_connection_close_possibly_shared_and_unlock (DBusConnection *connection) dbus_connection_unref (connection); } -void -_dbus_connection_close_possibly_shared (DBusConnection *connection) -{ - _dbus_assert (connection != NULL); - _dbus_assert (connection->generation == _dbus_current_generation); - - CONNECTION_LOCK (connection); - _dbus_connection_close_possibly_shared_and_unlock (connection); -} - /** * Closes a private connection, so no further data can be sent or received. * This disconnects the transport (such as a socket) underlying the @@ -2505,30 +2553,6 @@ _dbus_connection_send_unlocked_no_update (DBusConnection *connection, return TRUE; } -dbus_bool_t -_dbus_connection_send_and_unlock (DBusConnection *connection, - DBusMessage *message, - dbus_uint32_t *client_serial) -{ - DBusPreallocatedSend *preallocated; - - _dbus_assert (connection != NULL); - _dbus_assert (message != NULL); - - preallocated = _dbus_connection_preallocate_send_unlocked (connection); - if (preallocated == NULL) - { - CONNECTION_UNLOCK (connection); - return FALSE; - } - - _dbus_connection_send_preallocated_and_unlock (connection, - preallocated, - message, - client_serial); - return TRUE; -} - /** * Adds a message to the outgoing message queue. Does not block to * write the message to the network; that happens asynchronously. To @@ -3997,7 +4021,7 @@ _dbus_connection_run_builtin_filters_unlocked_no_update (DBusConnection *connect * unrefs the message. Returns a status indicating whether messages/data * remain, more memory is needed, or all data has been processed. * - * Even if the dispatch status is #DBUS_DISPATCH_DATA_REMAINS, + * Even if the dispatch status is #DBUS_DISPATCH_DATA_REMAINS * does not necessarily dispatch a message, as the data may * be part of authentication or the like. * diff --git a/dbus/dbus-dataslot.c b/dbus/dbus-dataslot.c index 3e9aabfc..a84b9244 100644 --- a/dbus/dbus-dataslot.c +++ b/dbus/dbus-dataslot.c @@ -151,7 +151,7 @@ _dbus_data_slot_allocator_alloc (DBusDataSlotAllocator *allocator, /** * Deallocates an ID previously allocated with * _dbus_data_slot_allocator_alloc(). Existing data stored on - * existing #DBusDataList objects with this ID will be freed when the + * existing #DBusDataSlotList objects with this ID will be freed when the * data list is finalized, but may not be retrieved (and may only be * replaced if someone else reallocates the slot). * The slot value is reset to -1 if this is the last unref. diff --git a/dbus/dbus-hash.h b/dbus/dbus-hash.h index 0d1e322b..4424e8c8 100644 --- a/dbus/dbus-hash.h +++ b/dbus/dbus-hash.h @@ -58,6 +58,7 @@ typedef enum DBUS_HASH_POINTER, /**< Hash keys are pointers. */ DBUS_HASH_ULONG /**< Hash keys are unsigned long. */ } DBusHashType; + DBusHashTable* _dbus_hash_table_new (DBusHashType type, DBusFreeFunction key_free_function, DBusFreeFunction value_free_function); diff --git a/dbus/dbus-internals.c b/dbus/dbus-internals.c index 2233fc68..5268ebdf 100644 --- a/dbus/dbus-internals.c +++ b/dbus/dbus-internals.c @@ -28,8 +28,12 @@ #include <string.h> #include <stdlib.h> +/* the blurb for this is "D-Bus secret" so it comes after "D-Bus low-level" + * which is the blurb for the DBus group, which makes Doxygen show + * the public API first on the index page. Yay for lame hacks. + */ /** - * @defgroup DBusInternals D-Bus internal implementation details + * @defgroup DBusInternals D-Bus secret internal implementation details * @brief Documentation useful when developing or debugging D-Bus itself. * */ @@ -288,6 +292,7 @@ _dbus_warn_check_failed(const char *format, static dbus_bool_t verbose_initted = FALSE; static dbus_bool_t verbose = TRUE; +/** Whether to show the current thread in verbose messages */ #define PTHREAD_IN_VERBOSE 0 #if PTHREAD_IN_VERBOSE #include <pthread.h> @@ -304,6 +309,11 @@ _dbus_verbose_init (void) } } +/** + * Implementation of dbus_is_verbose() macro if built with verbose logging + * enabled. + * @returns whether verbose logging is active. + */ dbus_bool_t _dbus_is_verbose_real (void) { diff --git a/dbus/dbus-internals.h b/dbus/dbus-internals.h index 3c8750e9..c0422c83 100644 --- a/dbus/dbus-internals.h +++ b/dbus/dbus-internals.h @@ -322,8 +322,8 @@ void _dbus_set_bad_address (DBusError *error, */ union DBusGUID { - dbus_uint32_t as_uint32s[DBUS_UUID_LENGTH_BYTES / 4]; - char as_bytes[DBUS_UUID_LENGTH_BYTES]; + dbus_uint32_t as_uint32s[DBUS_UUID_LENGTH_BYTES / 4]; /**< guid as four uint32 values */ + char as_bytes[DBUS_UUID_LENGTH_BYTES]; /**< guid as 16 single-byte values */ }; void _dbus_generate_uuid (DBusGUID *uuid); diff --git a/dbus/dbus-mainloop.c b/dbus/dbus-mainloop.c index b3089bbc..68284474 100644 --- a/dbus/dbus-mainloop.c +++ b/dbus/dbus-mainloop.c @@ -905,4 +905,4 @@ _dbus_wait_for_memory (void) _dbus_sleep_milliseconds (_dbus_get_oom_wait ()); } -#endif /* DOXYGEN_SHOULD_SKIP_THIS */ +#endif /* !DOXYGEN_SHOULD_SKIP_THIS */ diff --git a/dbus/dbus-mainloop.h b/dbus/dbus-mainloop.h index cc23129b..52bcd8fc 100644 --- a/dbus/dbus-mainloop.h +++ b/dbus/dbus-mainloop.h @@ -70,7 +70,7 @@ 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 /* !DOXYGEN_SHOULD_SKIP_THIS */ #endif /* DBUS_MAINLOOP_H */ diff --git a/dbus/dbus-marshal-header.c b/dbus/dbus-marshal-header.c index 6df8605b..564e47b5 100644 --- a/dbus/dbus-marshal-header.c +++ b/dbus/dbus-marshal-header.c @@ -67,8 +67,8 @@ _DBUS_STRING_DEFINE_STATIC(_dbus_local_path_str, DBUS_PATH_LOCAL); typedef struct { - unsigned char code; - unsigned char type; + unsigned char code; /**< the field code */ + unsigned char type; /**< the value type */ } HeaderFieldType; static const HeaderFieldType diff --git a/dbus/dbus-marshal-recursive-util.c b/dbus/dbus-marshal-recursive-util.c index e73edf49..3d4320d9 100644 --- a/dbus/dbus-marshal-recursive-util.c +++ b/dbus/dbus-marshal-recursive-util.c @@ -124,6 +124,9 @@ _dbus_type_reader_equal_values (const DBusTypeReader *lhs, } /* TESTS */ + +#ifndef DOXYGEN_SHOULD_SKIP_THIS + #include "dbus-test.h" #include "dbus-list.h" #include <stdio.h> @@ -3557,4 +3560,6 @@ container_destroy (TestTypeNode *node) } } +#endif /* !DOXYGEN_SHOULD_SKIP_THIS */ + #endif /* DBUS_BUILD_TESTS */ diff --git a/dbus/dbus-marshal-recursive.c b/dbus/dbus-marshal-recursive.c index 536d4cbf..501e9a53 100644 --- a/dbus/dbus-marshal-recursive.c +++ b/dbus/dbus-marshal-recursive.c @@ -1116,8 +1116,8 @@ _dbus_type_reader_get_signature (const DBusTypeReader *reader, typedef struct { - DBusString replacement; - int padding; + DBusString replacement; /**< Marshaled value including alignment padding */ + int padding; /**< How much of the replacement block is padding */ } ReplacementBlock; static dbus_bool_t diff --git a/dbus/dbus-marshal-validate-util.c b/dbus/dbus-marshal-validate-util.c index d9beee6c..341b2762 100644 --- a/dbus/dbus-marshal-validate-util.c +++ b/dbus/dbus-marshal-validate-util.c @@ -23,6 +23,9 @@ #include <config.h> #ifdef DBUS_BUILD_TESTS + +#ifndef DOXYGEN_SHOULD_SKIP_THIS + #include "dbus-internals.h" #include "dbus-marshal-validate.h" #include "dbus-marshal-recursive.h" @@ -579,4 +582,6 @@ _dbus_marshal_validate_test (void) return TRUE; } +#endif /* !DOXYGEN_SHOULD_SKIP_THIS */ + #endif /* DBUS_BUILD_TESTS */ diff --git a/dbus/dbus-md5.c b/dbus/dbus-md5.c index 079b1cc0..b7ddb5f4 100644 --- a/dbus/dbus-md5.c +++ b/dbus/dbus-md5.c @@ -157,7 +157,7 @@ main(int argc, char **argv) #define T62 /* 0xbd3af235 */ (T_MASK ^ 0x42c50dca) #define T63 0x2ad7d2bb #define T64 /* 0xeb86d391 */ (T_MASK ^ 0x14792c6e) -#endif /* DOXYGEN_SHOULD_SKIP_THIS */ +#endif /* !DOXYGEN_SHOULD_SKIP_THIS */ static void md5_process(DBusMD5Context *context, const unsigned char *data /*[64]*/) diff --git a/dbus/dbus-message-factory.c b/dbus/dbus-message-factory.c index c3fb1bc1..db1b254d 100644 --- a/dbus/dbus-message-factory.c +++ b/dbus/dbus-message-factory.c @@ -22,6 +22,8 @@ */ #include <config.h> +#ifndef DOXYGEN_SHOULD_SKIP_THIS + #ifdef DBUS_BUILD_TESTS #include "dbus-message-factory.h" #include "dbus-message-private.h" @@ -1221,4 +1223,6 @@ _dbus_message_data_iter_get_and_next (DBusMessageDataIter *iter, return TRUE; } +#endif /* !DOXYGEN_SHOULD_SKIP_THIS */ + #endif /* DBUS_BUILD_TESTS */ diff --git a/dbus/dbus-message.c b/dbus/dbus-message.c index 9b0d7a0b..80eee1cb 100644 --- a/dbus/dbus-message.c +++ b/dbus/dbus-message.c @@ -126,6 +126,12 @@ _dbus_message_byteswap (DBusMessage *message) _dbus_header_byteswap (&message->header, DBUS_COMPILER_BYTE_ORDER); } +/** byte-swap the message if it doesn't match our byte order. + * Called only when we need the message in our own byte order, + * normally when reading arrays of integers or doubles. + * Otherwise should not be called since it would do needless + * work. + */ #define ensure_byte_order(message) \ if (message->byte_order != DBUS_COMPILER_BYTE_ORDER) \ _dbus_message_byteswap (message) @@ -1119,10 +1125,9 @@ dbus_message_unref (DBusMessage *message) * #DBUS_MESSAGE_TYPE_METHOD_CALL, #DBUS_MESSAGE_TYPE_METHOD_RETURN, * #DBUS_MESSAGE_TYPE_ERROR, #DBUS_MESSAGE_TYPE_SIGNAL, but other * types are allowed and all code must silently ignore messages of - * unknown type. DBUS_MESSAGE_TYPE_INVALID will never be returned, + * unknown type. #DBUS_MESSAGE_TYPE_INVALID will never be returned, * however. * - * * @param message the message * @returns the type of the message */ diff --git a/dbus/dbus-object-tree.c b/dbus/dbus-object-tree.c index ec83498b..e5ff7734 100644 --- a/dbus/dbus-object-tree.c +++ b/dbus/dbus-object-tree.c @@ -1141,6 +1141,9 @@ _dbus_decompose_path (const char* data, /** @} */ #ifdef DBUS_BUILD_TESTS + +#ifndef DOXYGEN_SHOULD_SKIP_THIS + #include "dbus-test.h" #include <stdio.h> @@ -1926,4 +1929,6 @@ _dbus_object_tree_test (void) return TRUE; } +#endif /* !DOXYGEN_SHOULD_SKIP_THIS */ + #endif /* DBUS_BUILD_TESTS */ diff --git a/dbus/dbus-pending-call.c b/dbus/dbus-pending-call.c index ec57395e..79dacc8a 100644 --- a/dbus/dbus-pending-call.c +++ b/dbus/dbus-pending-call.c @@ -44,7 +44,14 @@ * * Opaque object representing a reply message that we're waiting for. */ + +/** + * shorter and more visible way to write _dbus_connection_lock() + */ #define CONNECTION_LOCK(connection) _dbus_connection_lock(connection) +/** + * shorter and more visible way to write _dbus_connection_unlock() + */ #define CONNECTION_UNLOCK(connection) _dbus_connection_unlock(connection) struct DBusPendingCall @@ -189,6 +196,13 @@ _dbus_pending_call_complete (DBusPendingCall *pending) } } +/** + * If the pending call hasn't been timed out, add its timeout + * error reply to the connection's incoming message queue. + * + * @param pending the pending call + * @param connection the connection the call was sent to + */ void _dbus_pending_call_queue_timeout_error_unlocked (DBusPendingCall *pending, DBusConnection *connection) diff --git a/dbus/dbus-protocol.h b/dbus/dbus-protocol.h index 4cfb6d16..a36e67c3 100644 --- a/dbus/dbus-protocol.h +++ b/dbus/dbus-protocol.h @@ -31,6 +31,9 @@ #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. */ @@ -52,62 +55,113 @@ extern "C" { /** Protocol version */ #define DBUS_MAJOR_PROTOCOL_VERSION 1 -/** Never a legitimate type */ +/** 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" /* 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 count INVALID */ +/** 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 @@ -160,27 +214,74 @@ extern "C" { #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 /* 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 +/** + * 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_SIGNATURE /** Header format is defined as a signature: @@ -224,47 +325,88 @@ extern "C" { * 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. */ #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 other timeout errors, e.g. while starting a service. @todo redundant with #DBUS_ERROR_TIMEOUT */ #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" +/** 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" +/* 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 diff --git a/dbus/dbus-server-debug-pipe.c b/dbus/dbus-server-debug-pipe.c index 0fb45c63..27115caa 100644 --- a/dbus/dbus-server-debug-pipe.c +++ b/dbus/dbus-server-debug-pipe.c @@ -329,7 +329,7 @@ _dbus_transport_debug_pipe_new (const char *server_name, * Sets error if the result is not OK. * * @param entry an address entry - * @param a new DBusServer, or #NULL on failure. + * @param server_p location to store a new DBusServer, or #NULL on failure. * @param error location to store rationale for failure on bad address * @returns the outcome * @@ -376,6 +376,14 @@ _dbus_server_listen_debug_pipe (DBusAddressEntry *entry, } } +/** + * Opens a debug pipe transport, used in the test suite. + * + * @param entry the address entry to try opening as debug-pipe + * @param transport_p return location for the opened transport + * @param error error to be set + * @returns result of the attempt + */ DBusTransportOpenResult _dbus_transport_open_debug_pipe (DBusAddressEntry *entry, DBusTransport **transport_p, diff --git a/dbus/dbus-server-unix.c b/dbus/dbus-server-unix.c index ffc68709..6dd28bcf 100644 --- a/dbus/dbus-server-unix.c +++ b/dbus/dbus-server-unix.c @@ -43,7 +43,7 @@ * Sets error if the result is not OK. * * @param entry an address entry - * @param a new DBusServer, or #NULL on failure. + * @param server_p location to store a new DBusServer, or #NULL on failure. * @param error location to store rationale for failure on bad address * @returns the outcome * diff --git a/dbus/dbus-server.c b/dbus/dbus-server.c index 059c8485..b54133bb 100644 --- a/dbus/dbus-server.c +++ b/dbus/dbus-server.c @@ -194,10 +194,13 @@ _dbus_server_finalize_base (DBusServer *server) } +/** Function to be called in protected_change_watch() with refcount held */ typedef dbus_bool_t (* DBusWatchAddFunction) (DBusWatchList *list, DBusWatch *watch); +/** Function to be called in protected_change_watch() with refcount held */ typedef void (* DBusWatchRemoveFunction) (DBusWatchList *list, DBusWatch *watch); +/** Function to be called in protected_change_watch() with refcount held */ typedef void (* DBusWatchToggleFunction) (DBusWatchList *list, DBusWatch *watch, dbus_bool_t enabled); @@ -307,11 +310,13 @@ _dbus_server_toggle_watch (DBusServer *server, enabled); } - +/** Function to be called in protected_change_timeout() with refcount held */ typedef dbus_bool_t (* DBusTimeoutAddFunction) (DBusTimeoutList *list, DBusTimeout *timeout); +/** Function to be called in protected_change_timeout() with refcount held */ typedef void (* DBusTimeoutRemoveFunction) (DBusTimeoutList *list, DBusTimeout *timeout); +/** Function to be called in protected_change_timeout() with refcount held */ typedef void (* DBusTimeoutToggleFunction) (DBusTimeoutList *list, DBusTimeout *timeout, dbus_bool_t enabled); diff --git a/dbus/dbus-sha.c b/dbus/dbus-sha.c index b386e452..4a5b8d18 100644 --- a/dbus/dbus-sha.c +++ b/dbus/dbus-sha.c @@ -157,7 +157,7 @@ effort (for example the reengineering of a great many Capstone chips). #define subRound(a, b, c, d, e, f, k, data) \ ( e += ROTL( 5, a ) + f( b, c, d ) + k + data, b = ROTL( 30, b ) ) -#endif /* DOXYGEN_SHOULD_SKIP_THIS */ +#endif /* !DOXYGEN_SHOULD_SKIP_THIS */ /* Perform the SHA transformation. Note that this code, like MD5, seems to break some optimizing compilers due to the complexity of the expressions diff --git a/dbus/dbus-shared.h b/dbus/dbus-shared.h index 357327da..78d305ef 100644 --- a/dbus/dbus-shared.h +++ b/dbus/dbus-shared.h @@ -30,6 +30,9 @@ #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. */ @@ -44,6 +47,9 @@ extern "C" { */ +/** + * Well-known bus types. See dbus_bus_get(). + */ typedef enum { DBUS_BUS_SESSION, /**< The login session bus */ @@ -51,26 +57,37 @@ typedef enum 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 */ - DBUS_HANDLER_RESULT_NOT_YET_HANDLED, /**< Message has not had any effect */ - DBUS_HANDLER_RESULT_NEED_MEMORY /**< Need more memory to return another result */ + 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; -/* Services */ +/* 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 @@ -102,6 +119,9 @@ typedef enum /** @} */ #ifdef __cplusplus +#if 0 +{ /* avoids confusing emacs indentation */ +#endif } #endif diff --git a/dbus/dbus-signature.c b/dbus/dbus-signature.c index 2852ed4d..5ac1afa1 100644 --- a/dbus/dbus-signature.c +++ b/dbus/dbus-signature.c @@ -29,9 +29,9 @@ typedef struct { - const char *pos; - unsigned int finished : 1; - unsigned int in_array : 1; + const char *pos; /**< current position in the signature string */ + unsigned int finished : 1; /**< true if we are at the end iter */ + unsigned int in_array : 1; /**< true if we are a subiterator pointing to an array's element type */ } DBusSignatureRealIter; /** diff --git a/dbus/dbus-string.c b/dbus/dbus-string.c index 86cb986f..bfacb24e 100644 --- a/dbus/dbus-string.c +++ b/dbus/dbus-string.c @@ -2011,7 +2011,7 @@ _dbus_string_skip_white_reverse (const DBusString *str, * @todo owen correctly notes that this is a stupid function (it was * written purely for test code, * e.g. dbus-message-builder.c). Probably should be enforced as test - * code only with #ifdef DBUS_BUILD_TESTS + * code only with ifdef DBUS_BUILD_TESTS * * @param source the source string * @param dest the destination string (contents are replaced) diff --git a/dbus/dbus-sysdeps-unix.c b/dbus/dbus-sysdeps-unix.c index aa0de381..c8a349cc 100644 --- a/dbus/dbus-sysdeps-unix.c +++ b/dbus/dbus-sysdeps-unix.c @@ -107,6 +107,13 @@ _dbus_open_tcp_socket (int *fd, return _dbus_open_socket(fd, AF_INET, SOCK_STREAM, 0, error); } +/** + * Opens a UNIX domain socket (as in the socket() call). + * Does not bind the socket. + * @param fd return location for socket descriptor + * @param error return location for an error + * @returns #FALSE if error is set + */ dbus_bool_t _dbus_open_unix_socket (int *fd, DBusError *error) @@ -114,6 +121,14 @@ _dbus_open_unix_socket (int *fd, return _dbus_open_socket(fd, PF_UNIX, SOCK_STREAM, 0, error); } +/** + * Closes a socket. Should not be used on non-socket + * file descriptors or handles. + * + * @param fd the socket + * @param error return location for an error + * @returns #FALSE if error is set + */ dbus_bool_t _dbus_close_socket (int fd, DBusError *error) @@ -121,6 +136,15 @@ _dbus_close_socket (int fd, return _dbus_close (fd, error); } +/** + * Like _dbus_read(), but only works on sockets so is + * available on Windows. + * + * @param fd the socket + * @param buffer string to append data to + * @param count max amount of data to read + * @returns number of bytes appended to the string + */ int _dbus_read_socket (int fd, DBusString *buffer, @@ -129,6 +153,16 @@ _dbus_read_socket (int fd, return _dbus_read (fd, buffer, count); } +/** + * Like _dbus_write(), but only supports sockets + * and is thus available on Windows. + * + * @param fd the file descriptor to write + * @param buffer the buffer to write data from + * @param start the first byte in the buffer to write + * @param len the number of bytes to try to write + * @returns the number of bytes written or -1 on error + */ int _dbus_write_socket (int fd, const DBusString *buffer, @@ -138,6 +172,19 @@ _dbus_write_socket (int fd, return _dbus_write (fd, buffer, start, len); } +/** + * Like _dbus_write_two() but only works on sockets and is thus + * available on Windows. + * + * @param fd the file descriptor + * @param buffer1 first buffer + * @param start1 first byte to write in first buffer + * @param len1 number of bytes to write from first buffer + * @param buffer2 second buffer, or #NULL + * @param start2 first byte to write in second buffer + * @param len2 number of bytes to write in second buffer + * @returns total bytes written from both buffers, or -1 on error + */ int _dbus_write_socket_two (int fd, const DBusString *buffer1, @@ -157,9 +204,12 @@ _dbus_write_socket_two (int fd, * the data it reads to the DBusString buffer. It appends * up to the given count, and returns the same value * and same errno as read(). The only exception is that - * _dbus_read() handles EINTR for you. _dbus_read() can + * _dbus_read() handles EINTR for you. Also, _dbus_read() can * return ENOMEM, even though regular UNIX read doesn't. * + * Unlike _dbus_read_socket(), _dbus_read() is not available + * on Windows. + * * @param fd the file descriptor to read from * @param buffer the buffer to append data to * @param count the amount of data to read @@ -2441,7 +2491,7 @@ _dbus_get_autolaunch_address (DBusString *address, * we might want to use the registry instead of a file for * this, and I'm not sure how we'd ensure the uuid gets created. * - * @param guid to init with the machine's uuid + * @param machine_id guid to init with the machine's uuid * @param create_if_not_found try to create the uuid if it doesn't exist * @param error the error return * @returns #FALSE if the error is set diff --git a/dbus/dbus-transport-socket.c b/dbus/dbus-transport-socket.c index 183604b7..76a6fcfb 100644 --- a/dbus/dbus-transport-socket.c +++ b/dbus/dbus-transport-socket.c @@ -1258,6 +1258,14 @@ error: return NULL; } +/** + * Opens a TCP socket transport. + * + * @param entry the address entry to try opening as a tcp transport. + * @param transport_p return location for the opened transport + * @param error error to be set + * @returns result of the attempt + */ DBusTransportOpenResult _dbus_transport_open_socket(DBusAddressEntry *entry, DBusTransport **transport_p, diff --git a/dbus/dbus-transport-unix.c b/dbus/dbus-transport-unix.c index 40b27eae..16239e61 100644 --- a/dbus/dbus-transport-unix.c +++ b/dbus/dbus-transport-unix.c @@ -108,6 +108,14 @@ _dbus_transport_new_for_domain_socket (const char *path, return NULL; } +/** + * Opens platform specific transport types. + * + * @param entry the address entry to try opening + * @param transport_p return location for the opened transport + * @param error error to be set + * @returns result of the attempt + */ DBusTransportOpenResult _dbus_transport_open_platform_specific (DBusAddressEntry *entry, DBusTransport **transport_p, diff --git a/dbus/dbus-types.h b/dbus/dbus-types.h index d45c2516..81943dfd 100644 --- a/dbus/dbus-types.h +++ b/dbus/dbus-types.h @@ -85,6 +85,8 @@ typedef dbus_uint32_t dbus_bool_t; * 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. */ /** @@ -96,6 +98,8 @@ typedef dbus_uint32_t dbus_bool_t; * 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. */ /** diff --git a/dbus/dbus-uuidgen.c b/dbus/dbus-uuidgen.c index 8da83960..0d1f28c0 100644 --- a/dbus/dbus-uuidgen.c +++ b/dbus/dbus-uuidgen.c @@ -70,7 +70,7 @@ return_uuid (DBusGUID *uuid, * @param uuid_p out param to return the uuid * @param create_if_not_found whether to create it if not already there * @param error error return - * @param returns #FALSE if error is set + * @returns #FALSE if error is set */ dbus_bool_t dbus_internal_do_not_use_get_uuid (const char *filename, @@ -109,7 +109,7 @@ dbus_internal_do_not_use_get_uuid (const char *filename, * the libdbus soname. * * @param uuid_p out param to return the uuid - * @param returns #FALSE if no memory + * @returns #FALSE if no memory */ dbus_bool_t dbus_internal_do_not_use_create_uuid (char **uuid_p) |