summaryrefslogtreecommitdiff
path: root/libdleyna/renderer/server.c
diff options
context:
space:
mode:
Diffstat (limited to 'libdleyna/renderer/server.c')
-rw-r--r--libdleyna/renderer/server.c26
1 files changed, 20 insertions, 6 deletions
diff --git a/libdleyna/renderer/server.c b/libdleyna/renderer/server.c
index ea18689..15a5ed7 100644
--- a/libdleyna/renderer/server.c
+++ b/libdleyna/renderer/server.c
@@ -386,7 +386,7 @@ static const dleyna_connector_dispatch_cb_t g_root_vtables[1] = {
static const dleyna_connector_dispatch_cb_t
g_server_vtables[DLR_INTERFACE_INFO_MAX] = {
- /* MUST be in the exact same order as g_msu_server_introspection */
+ /* MUST be in the exact same order as g_server_introspection */
prv_props_method_call,
prv_dlr_device_method_call,
prv_dlr_player_method_call,
@@ -394,6 +394,20 @@ static const dleyna_connector_dispatch_cb_t
prv_renderer_device_method_call
};
+static const gchar *g_server_interfaces[DLR_INTERFACE_INFO_MAX] = {
+ /* MUST be in the exact same order as g_server_introspection */
+ DLR_INTERFACE_PROPERTIES,
+ DLR_INTERFACE_SERVER,
+ DLR_INTERFACE_PLAYER,
+ DLEYNA_INTERFACE_PUSH_HOST,
+ DLEYNA_SERVER_INTERFACE_RENDERER_DEVICE
+};
+
+const gchar *dlr_renderer_get_interface_name(guint index)
+{
+ return g_server_interfaces[index];
+}
+
const dleyna_connector_t *dlr_renderer_get_connector(void)
{
return g_context.connector;
@@ -934,11 +948,11 @@ static gboolean prv_control_point_start_service(
g_context.connection = connection;
g_context.dlr_id = g_context.connector->publish_object(
- connection,
- DLEYNA_SERVER_OBJECT,
- TRUE,
- 0,
- g_root_vtables);
+ connection,
+ DLEYNA_SERVER_OBJECT,
+ TRUE,
+ DLEYNA_SERVER_INTERFACE_MANAGER,
+ g_root_vtables);
if (g_context.dlr_id)
g_context.upnp = dlr_upnp_new(connection,