diff options
Diffstat (limited to 'tools/dbus-print-message.c')
-rw-r--r-- | tools/dbus-print-message.c | 23 |
1 files changed, 22 insertions, 1 deletions
diff --git a/tools/dbus-print-message.c b/tools/dbus-print-message.c index bb380ce5..7c5328da 100644 --- a/tools/dbus-print-message.c +++ b/tools/dbus-print-message.c @@ -21,15 +21,36 @@ */ #include "dbus-print-message.h" +static const char* +type_to_name (int message_type) +{ + switch (message_type) + { + case DBUS_MESSAGE_TYPE_SIGNAL: + return "signal"; + case DBUS_MESSAGE_TYPE_METHOD_CALL: + return "method call"; + case DBUS_MESSAGE_TYPE_METHOD_RETURN: + return "method return"; + case DBUS_MESSAGE_TYPE_ERROR: + return "error"; + default: + return "(unknown message type)"; + } +} + void print_message (DBusMessage *message) { DBusMessageIter iter; const char *sender; + int message_type; + message_type = dbus_message_get_type (message); sender = dbus_message_get_sender (message); - printf ("message name=%s; sender=%s\n", + printf ("%s name=%s; sender=%s\n", + type_to_name (message_type), dbus_message_get_name (message), sender ? sender : "(no sender)"); |