import dleyna-renderer-0.6.0-3.el8

This commit is contained in:
CentOS Sources 2020-08-25 18:31:39 +00:00 committed by Andrew Lukoshko
commit a17934aeb4
5 changed files with 503 additions and 0 deletions

View File

@ -0,0 +1 @@
2c590af078c9f500a7639d2af2274507b1e4213e SOURCES/dleyna-renderer-0.6.0.tar_2.gz

1
.gitignore vendored Normal file
View File

@ -0,0 +1 @@
SOURCES/dleyna-renderer-0.6.0.tar_2.gz

View File

@ -0,0 +1,264 @@
From d80c3cbfaae6683e0e1685e5337b7dfe3a36692a Mon Sep 17 00:00:00 2001
From: Debarshi Ray <debarshir@freedesktop.org>
Date: Mon, 22 Jun 2020 17:02:42 +0200
Subject: [PATCH] Add a manual
https://github.com/phako/dleyna-renderer/pull/1
---
Makefile.am | 2 +-
configure.ac | 6 +
doc/Makefile.am | 18 +++
doc/dleyna-renderer-service.conf.xml | 182 +++++++++++++++++++++++++++
4 files changed, 207 insertions(+), 1 deletion(-)
create mode 100644 doc/Makefile.am
create mode 100644 doc/dleyna-renderer-service.conf.xml
diff --git a/Makefile.am b/Makefile.am
index 200e1967f0e5..35bd628faf47 100644
--- a/Makefile.am
+++ b/Makefile.am
@@ -1,4 +1,4 @@
-SUBDIRS = libdleyna/renderer
+SUBDIRS = doc libdleyna/renderer
if BUILD_SERVER
SUBDIRS += server
diff --git a/configure.ac b/configure.ac
index 271ee92ead00..4d96903c67a3 100644
--- a/configure.ac
+++ b/configure.ac
@@ -34,6 +34,11 @@ LT_PREREQ([2.2.6])
LT_INIT([dlopen disable-static])
LT_LANG([C])
+AC_PATH_PROG([XSLTPROC], [xsltproc])
+if test -z "$XSLTPROC"; then
+ AC_MSG_ERROR([xsltproc not found])
+fi
+
# Checks for libraries.
PKG_PROG_PKG_CONFIG(0.16)
PKG_CHECK_MODULES([GLIB], [glib-2.0 >= 2.28])
@@ -231,6 +236,7 @@ AC_SUBST([with_log_level])
AC_SUBST([with_log_type])
AC_CONFIG_FILES([Makefile \
+ doc/Makefile \
libdleyna/renderer/Makefile \
libdleyna/renderer/dleyna-renderer-service.conf \
server/dleyna-renderer-service-1.0.pc \
diff --git a/doc/Makefile.am b/doc/Makefile.am
new file mode 100644
index 000000000000..80069b1c82e7
--- /dev/null
+++ b/doc/Makefile.am
@@ -0,0 +1,18 @@
+XSLTPROC_FLAGS = \
+ --nonet \
+ --stringparam man.output.quietly 1 \
+ --stringparam funcsynopsis.style ansi \
+ --stringparam man.authors.section.enabled 0 \
+ --stringparam man.copyright.section.enabled 0
+
+.xml.5:
+ $(AM_V_GEN) $(XSLTPROC) $(XSLTPROC_FLAGS) http://docbook.sourceforge.net/release/xsl/current/manpages/docbook.xsl $<
+
+man_MANS = \
+ dleyna-renderer-service.conf.5
+
+xml_files = $(man_MANS:.5=.xml)
+
+EXTRA_DIST = $(xml_files)
+
+CLEANFILES = $(man_MANS)
diff --git a/doc/dleyna-renderer-service.conf.xml b/doc/dleyna-renderer-service.conf.xml
new file mode 100644
index 000000000000..e6be27411cf9
--- /dev/null
+++ b/doc/dleyna-renderer-service.conf.xml
@@ -0,0 +1,182 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<refentry id="dleyna-renderer-service.conf.5">
+ <refentryinfo>
+ <title>dleyna-renderer-service.conf</title>
+ <date>June 2020</date>
+ <productname>dLeyna</productname>
+ </refentryinfo>
+
+ <refmeta>
+ <refentrytitle>dleyna-renderer-service.conf</refentrytitle>
+ <manvolnum>5</manvolnum>
+ <refmiscinfo class="manual">Linux Programmer's Manual</refmiscinfo>
+ </refmeta>
+
+ <refnamediv>
+ <refname>dleyna-renderer-service.conf</refname>
+ <refpurpose>Configuration file for dleyna-renderer</refpurpose>
+ </refnamediv>
+
+ <refsynopsisdiv>
+ <cmdsynopsis>
+ <command>/etc/dleyna-renderer-service.conf</command>
+ </cmdsynopsis>
+ </refsynopsisdiv>
+
+
+ <refsect1>
+ <title>DESCRIPTION</title>
+ <para>
+ The <command>dleyna-renderer-service</command> program provides the
+ <emphasis>com.intel.dleyna-renderer</emphasis> name on the session
+ message bus. It is a service for discovering and manipulating DLNA
+ Digital Media Renderers (or DMRs).
+ </para>
+ <para>
+ Users or administrators should never need to start this daemon as it will
+ be automatically started by
+ <citerefentry><refentrytitle>dbus-daemon</refentrytitle><manvolnum>1</manvolnum></citerefentry>
+ whenever a process sends a D-Bus message to the
+ <emphasis>com.intel.dleyna-renderer</emphasis> name on the session bus.
+ </para>
+ <para>
+ This file can be used to configure the behaviour of the
+ <command>dleyna-renderer-service</command> program.
+ </para>
+ </refsect1>
+
+ <refsect1>
+ <title>FILE FORMAT</title>
+ <para>
+ The configuration file format is the so-called key file (sort of
+ ini-style) format. It consists of sections (or groups) of key-value
+ Lines beginning with a '#' and blank lines are considered comments.
+ Sections are started by a header line containing the section enclosed
+ in '[' and ']', and ended implicitly by the start of the next section
+ or the end of the file. Each key-value pair must be contained in a
+ section.
+ </para>
+ </refsect1>
+
+ <refsect1>
+ <title>GENERAL SECTION</title>
+ <variablelist>
+ <varlistentry>
+ <term><option>connector-name=dbus</option></term>
+ <listitem>
+ <para>
+ The name of the inter-process communication method to be used.
+ The only supported value is <emphasis>dbus</emphasis>.
+ </para>
+ </listitem>
+ </varlistentry>
+ <varlistentry>
+ <term><option>never-quit=false|true</option></term>
+ <listitem>
+ <para>
+ Whether the process should stay alive forever or quit when the
+ last client disconnects. The default value is
+ <emphasis>false</emphasis>.
+ </para>
+ </listitem>
+ </varlistentry>
+ <varlistentry>
+ <term><option>port</option></term>
+ <listitem>
+ <para>
+ Source port for Simple Service Discovery Protocol (or SSDP)
+ messages. The default value is <emphasis>0</emphasis> which
+ means that a random available port will be used.
+ </para>
+ </listitem>
+ </varlistentry>
+ <varlistentry>
+ <term><option>push-host-port</option></term>
+ <listitem>
+ <para>
+ Port for push host file server. The default value is
+ <emphasis>0</emphasis> which means that a random available
+ port will be used.
+ </para>
+ </listitem>
+ </varlistentry>
+ </variablelist>
+ </refsect1>
+
+ <refsect1>
+ <title>LOG SECTION</title>
+ <variablelist>
+ <varlistentry>
+ <term><option>log-type=0|1|2</option></term>
+ <listitem>
+ <para>
+ The logging method to be used. Three technologies are supported.
+ 0 for syslog, 1 for GLib, and 2 for file. The default value is
+ <emphasis>0</emphasis>.
+ </para>
+ </listitem>
+ </varlistentry>
+ <varlistentry>
+ <term><option>log-level=0|1|2|...|8</option></term>
+ <listitem>
+ <para>
+ Comma-separated list of logging levels. The levels are 1 for
+ critical, 2 for error, 3 for warning, 4 for message, 5 for info
+ and 6 for debug. 0 excludes all levels, 7 is a combination of
+ critical, error and info, and 8 includes all levels.
+ </para>
+ <para>
+ The default value is <emphasis>7</emphasis>.
+ </para>
+ </listitem>
+ </varlistentry>
+ </variablelist>
+ </refsect1>
+
+ <refsect1>
+ <title>NETF SECTION</title>
+ <variablelist>
+ <varlistentry>
+ <term><option>netf-enabled=false|true</option></term>
+ <listitem>
+ <para>
+ Whether network filtering should be enabled or not. The default
+ values is <emphasis>false</emphasis>.
+ </para>
+ </listitem>
+ </varlistentry>
+ <varlistentry>
+ <term><option>netf-list</option></term>
+ <listitem>
+ <para>
+ Comma-separated list of interface names, service set identifiers
+ (or SSIDs), and Internet Protocol (or IP) addresses. If network
+ filtering is requested but the list is empty, then filtering
+ remains disabled.
+ </para>
+ <para>
+ The list is empty by default.
+ </para>
+ </listitem>
+ </varlistentry>
+ </variablelist>
+ </refsect1>
+
+ <refsect1>
+ <title>BUGS</title>
+ <para>
+ Please send bug reports to either the distribution bug tracker
+ or the upstream bug tracker at
+ <ulink url="https://github.com/intel/dleyna-renderer/issues"></ulink>.
+ </para>
+ </refsect1>
+
+ <refsect1>
+ <title>SEE ALSO</title>
+ <para>
+ <citerefentry>
+ <refentrytitle>dbus-daemon</refentrytitle><manvolnum>1</manvolnum>
+ </citerefentry>
+ </para>
+ </refsect1>
+</refentry>
--
2.25.4

View File

@ -0,0 +1,77 @@
From 916daa1bf04bfb1d8823c3f677a021bf41df1db0 Mon Sep 17 00:00:00 2001
From: Debarshi Ray <debarshir@freedesktop.org>
Date: Tue, 20 Jan 2015 13:59:33 +0100
Subject: [PATCH] Disconnect signal handlers during destruction
A GUPnPContextManager can outlive a dlr_upnp_t because it might be
using asynchronous operations during its construction (eg.,
GUPnPNetworkManager) which retain references to it. This can be
demonstrated if the service is spawned as a result of the following
command:
$ gdbus call \
--session \
--dest com.intel.dleyna-renderer \
--object-path /com/intel/dLeynaRenderer \
--method com.intel.dLeynaRenderer.Manager.Release
This leads to the signal handlers being invoked with an invalid
dlr_upnp_t and the outcome is a crash.
To avoid this, we should disconnect the callbacks listening to the
context manager and the control points belonging to it.
---
libdleyna/renderer/upnp.c | 20 ++++++++++++++++++++
1 file changed, 20 insertions(+)
diff --git a/libdleyna/renderer/upnp.c b/libdleyna/renderer/upnp.c
index 17cbda720bc1..707dc09aaf5a 100644
--- a/libdleyna/renderer/upnp.c
+++ b/libdleyna/renderer/upnp.c
@@ -45,6 +45,7 @@ struct dlr_upnp_t_ {
void *user_data;
GHashTable *server_udn_map;
GHashTable *server_uc_map;
+ GList *cps;
dlr_host_service_t *host_service;
};
@@ -352,6 +353,7 @@ static void prv_on_context_available(GUPnPContextManager *context_manager,
gssdp_resource_browser_set_active(GSSDP_RESOURCE_BROWSER(cp), TRUE);
gupnp_context_manager_manage_control_point(upnp->context_manager, cp);
+ upnp->cps = g_list_prepend (upnp->cps, g_object_ref (cp));
g_object_unref(cp);
}
@@ -390,10 +392,28 @@ dlr_upnp_t *dlr_upnp_new(dleyna_connector_id_t connection,
void dlr_upnp_delete(dlr_upnp_t *upnp)
{
if (upnp) {
+ GList *l;
+
+ for (l = upnp->cps; l != NULL; l = l->next) {
+ GUPnPControlPoint *cp = GUPNP_CONTROL_POINT (l->data);
+
+ g_signal_handlers_disconnect_by_func (cp,
+ prv_server_available_cb,
+ upnp);
+ g_signal_handlers_disconnect_by_func (cp,
+ prv_server_unavailable_cb,
+ upnp);
+ }
+
+ g_signal_handlers_disconnect_by_func (upnp->context_manager,
+ prv_on_context_available,
+ upnp);
+
dlr_host_service_delete(upnp->host_service);
g_object_unref(upnp->context_manager);
g_hash_table_unref(upnp->server_udn_map);
g_hash_table_unref(upnp->server_uc_map);
+ g_list_free_full (upnp->cps, g_object_unref);
g_free(upnp);
}
--
2.9.5

160
SPECS/dleyna-renderer.spec Normal file
View File

@ -0,0 +1,160 @@
%global api 1.0
Name: dleyna-renderer
Version: 0.6.0
Release: 3%{?dist}
Summary: Service for interacting with Digital Media Renderers
License: LGPLv2
URL: https://01.org/dleyna/
Source0: https://01.org/sites/default/files/downloads/dleyna/%{name}-%{version}.tar_2.gz
# https://bugzilla.gnome.org/show_bug.cgi?id=741257
Patch0: 0001-UPnP-Disconnect-signal-handlers-during-destruction.patch
# https://bugzilla.redhat.com/show_bug.cgi?id=1612579
Patch1: 0001-Add-a-manual.patch
BuildRequires: autoconf
BuildRequires: automake
BuildRequires: docbook-style-xsl
BuildRequires: libtool
BuildRequires: libxslt
BuildRequires: pkgconfig
BuildRequires: pkgconfig(dleyna-core-1.0)
BuildRequires: pkgconfig(gio-2.0)
BuildRequires: pkgconfig(glib-2.0)
BuildRequires: pkgconfig(gssdp-1.0)
BuildRequires: pkgconfig(gupnp-1.0)
BuildRequires: pkgconfig(gupnp-av-1.0)
BuildRequires: pkgconfig(gupnp-dlna-2.0)
BuildRequires: pkgconfig(libsoup-2.4)
Requires: dbus
Requires: dleyna-connector-dbus%{?_isa}
%description
D-Bus service for clients to discover and manipulate DLNA Digital Media
Renderers (DMRs).
%package devel
Summary: Development files for %{name}
Requires: %{name}%{?_isa} = %{version}-%{release}
%description devel
The %{name}-devel package contains libraries and header files for
developing applications that use %{name}.
%prep
%setup -q
%patch0 -p1
%patch1 -p1
%build
autoreconf -f -i
%configure \
--disable-silent-rules \
--disable-static
# Omit unused direct shared library dependencies.
sed --in-place --expression 's! -shared ! -Wl,--as-needed\0!g' libtool
make %{?_smp_mflags}
%install
%make_install
find $RPM_BUILD_ROOT -name '*.la' -delete
# We don't need to install the headers because only the daemon is supposed to be
# using the library.
rm -rf $RPM_BUILD_ROOT/%{_includedir}
rm -f $RPM_BUILD_ROOT/%{_libdir}/%{name}/libdleyna-renderer-%{api}.so
%files
%license COPYING
%doc AUTHORS
%doc ChangeLog
%doc README
%{_datadir}/dbus-1/services/com.intel.%{name}.service
%{_datadir}/man/man5/%{name}-service.conf.5*
%dir %{_libdir}/%{name}
%{_libdir}/%{name}/libdleyna-renderer-%{api}.so.*
%{_libexecdir}/%{name}-service
%config(noreplace) %{_sysconfdir}/%{name}-service.conf
%files devel
%{_libdir}/pkgconfig/dleyna-renderer-service-%{api}.pc
%changelog
* Sun Aug 23 2020 Debarshi Ray <rishi@fedoraproject.org> - 0.6.0-3
- Add a manual
Resolves: #1612579
* Wed Feb 07 2018 Fedora Release Engineering <releng@fedoraproject.org> - 0.6.0-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_28_Mass_Rebuild
* Fri Oct 06 2017 Debarshi Ray <rishi@fedoraproject.org> - 0.6.0-1
- Update to 0.6.0
* Fri Oct 06 2017 Debarshi Ray <rishi@fedoraproject.org> - 0.5.0-9
- Use arch-specific Requires on dleyna-connector-dbus
* Wed Aug 02 2017 Fedora Release Engineering <releng@fedoraproject.org> - 0.5.0-8
- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Binutils_Mass_Rebuild
* Wed Jul 26 2017 Fedora Release Engineering <releng@fedoraproject.org> - 0.5.0-7
- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Mass_Rebuild
* Fri Feb 10 2017 Fedora Release Engineering <releng@fedoraproject.org> - 0.5.0-6
- Rebuilt for https://fedoraproject.org/wiki/Fedora_26_Mass_Rebuild
* Thu Sep 15 2016 Debarshi Ray <rishi@fedoraproject.org> - 0.5.0-5
- Avoid any attempts to delete the same dlr_upnp_t twice (RH #1251366)
* Wed Feb 03 2016 Fedora Release Engineering <releng@fedoraproject.org> - 0.5.0-4
- Rebuilt for https://fedoraproject.org/wiki/Fedora_24_Mass_Rebuild
* Thu Jan 21 2016 Kalev Lember <klember@redhat.com> - 0.5.0-3
- Add -devel subpackage with the .pc file
- Use make_install macro
- Use license macro for COPYING
* Wed Jun 17 2015 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 0.5.0-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_23_Mass_Rebuild
* Thu May 07 2015 Debarshi Ray <rishi@fedoraproject.org> - 0.5.0-1
- Update to 0.5.0
* Tue Jan 20 2015 Debarshi Ray <rishi@fedoraproject.org> - 0.4.0-4
- Fix crash when spawned by a call to com.intel.dLeynaRenderer.Manager.Release
(RH #1154788)
* Sat Aug 16 2014 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 0.4.0-3
- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_22_Mass_Rebuild
* Sat Jun 07 2014 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 0.4.0-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_Mass_Rebuild
* Wed Jan 15 2014 Bastien Nocera <bnocera@redhat.com> - 0.4.0-1
- Update to 0.4.0
* Mon Sep 02 2013 Debarshi Ray <rishi@fedoraproject.org> - 0.1.3-2
- Do not remove the rpaths anymore because the library has now been moved to a
private location.
* Mon Sep 02 2013 Debarshi Ray <rishi@fedoraproject.org> - 0.1.3-1
- Update to 0.1.3.
* Sat Aug 03 2013 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 0.1.1-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_20_Mass_Rebuild
* Wed Jun 26 2013 Debarshi Ray <rishi@fedoraproject.org> - 0.1.1-1
- Initial spec.