dbus: Handle the cases when a non-existing interface is detected in an incoming message.
authorTanu Kaskinen <ext-tanu.kaskinen@nokia.com>
Thu, 3 Dec 2009 13:28:36 +0000 (15:28 +0200)
committerColin Guthrie <cguthrie@mandriva.org>
Thu, 3 Dec 2009 21:50:19 +0000 (21:50 +0000)
src/pulsecore/protocol-dbus.c
src/pulsecore/protocol-dbus.h

index e427bb1..95518a1 100644 (file)
@@ -552,10 +552,18 @@ static DBusHandlerResult handle_message_cb(DBusConnection *connection, DBusMessa
             pa_dbus_send_error(connection, message, DBUS_ERROR_UNKNOWN_METHOD, "No such method: %s", call_info.method);
             break;
 
+        case NO_SUCH_INTERFACE:
+            pa_dbus_send_error(connection, message, PA_DBUS_ERROR_NO_SUCH_INTERFACE, "No such interface: %s", call_info.interface);
+            break;
+
         case NO_SUCH_PROPERTY:
             pa_dbus_send_error(connection, message, PA_DBUS_ERROR_NO_SUCH_PROPERTY, "No such property: %s", call_info.property);
             break;
 
+        case NO_SUCH_PROPERTY_INTERFACE:
+            pa_dbus_send_error(connection, message, PA_DBUS_ERROR_NO_SUCH_INTERFACE, "No such property interface: %s", call_info.property_interface);
+            break;
+
         case INVALID_METHOD_SIG:
             pa_dbus_send_error(connection, message, DBUS_ERROR_INVALID_ARGS,
                                "Invalid signature for method %s: '%s'. Expected '%s'.",
index 6d100f7..8999933 100644 (file)
@@ -35,6 +35,7 @@
 #define PA_DBUS_CORE_INTERFACE "org.PulseAudio.Core1"
 #define PA_DBUS_CORE_OBJECT_PATH "/org/pulseaudio/core1"
 
+#define PA_DBUS_ERROR_NO_SUCH_INTERFACE PA_DBUS_CORE_INTERFACE ".NoSuchInterfaceError"
 #define PA_DBUS_ERROR_NO_SUCH_PROPERTY PA_DBUS_CORE_INTERFACE ".NoSuchPropertyError"
 #define PA_DBUS_ERROR_NOT_FOUND PA_DBUS_CORE_INTERFACE ".NotFoundError"