26 #ifdef DBUS_BUILD_TESTS
27 #include "dbus-marshal-byteswap.h"
28 #include "dbus-test.h"
32 do_byteswap_test (
int byte_order)
45 while (dbus_internal_do_not_use_generate_bodies (sequence,
69 if (!_dbus_type_reader_equal_values (&body_reader, ©_reader))
78 _dbus_warn (
"Byte-swapped data did not have same values as original data\n");
92 printf (
" %d blocks swapped from order '%c' to '%c'\n",
93 sequence, byte_order, opposite_order);
97 _dbus_marshal_byteswap_test (
void)
dbus_bool_t _dbus_string_init(DBusString *str)
Initializes a string.
dbus_bool_t _dbus_string_copy(const DBusString *source, int start, DBusString *dest, int insert_at)
Like _dbus_string_move(), but does not delete the section of the source string that's copied to the d...
dbus_uint32_t dbus_bool_t
A boolean, valid values are TRUE and FALSE.
void _dbus_warn(const char *format,...)
Prints a warning message to stderr.
int _dbus_string_get_length(const DBusString *str)
Gets the length of a string (not including nul termination).
#define DBUS_BIG_ENDIAN
Code marking MSB-first byte order in the wire protocol.
void _dbus_string_free(DBusString *str)
Frees a string created by _dbus_string_init().
The type reader is an iterator for reading values from a block of values.
#define TRUE
Expands to "1".
#define _dbus_assert_not_reached(explanation)
Aborts with an error message if called.
void _dbus_type_reader_init(DBusTypeReader *reader, int byte_order, const DBusString *type_str, int type_pos, const DBusString *value_str, int value_pos)
Initializes a type reader.
dbus_bool_t _dbus_string_set_length(DBusString *str, int length)
Sets the length of a string.
void _dbus_verbose_bytes_of_string(const DBusString *str, int start, int len)
Dump the given part of the string to verbose log.
void _dbus_marshal_byteswap(const DBusString *signature, int signature_start, int old_byte_order, int new_byte_order, DBusString *value_str, int value_pos)
Byteswaps the marshaled data in the given value_str.
#define DBUS_LITTLE_ENDIAN
Code marking LSB-first byte order in the wire protocol.