Package: gmediaserver
Version: 0.13.0-7~libupnp6+1
Severity: normal
Tags: patch ipv6
Hi,
To aid the forthcoming transition from libupnp3 to libupnp6, please
could you apply the attached patch to Build-Depend on libupnp-dev ?
The intention is that this will always point to the stable branch
of libupnp.
Please note that libupnp6 will introduce IPv6 support to libupnp by
default. I hope that I've added support for it correctly in the patch.
Many thanks,
Nick Leverton
-- System Information:
Debian Release: 6.0.3
APT prefers stable-updates
APT policy: (600, 'stable-updates'), (600, 'stable'), (450, 'oldstable'),
(120, 'testing'), (3, 'unstable')
Architecture: i386 (i686)
Kernel: Linux 2.6.39-bpo.2-686-pae (SMP w/2 CPU cores)
Locale: LANG=en_GB.UTF-8, LC_CTYPE=en_GB.UTF-8 (charmap=UTF-8)
Shell: /bin/sh linked to /bin/bash
Versions of packages gmediaserver depends on:
ii dpkg 1.15.8.11 Debian package management system
ii install-i 4.13a.dfsg.1-6 Manage installed documentation in
ii libc6 2.11.2-10 Embedded GNU C Library: Shared lib
ii libid3-3. 3.8.3-13 A library for manipulating ID3v1 a
ii libmagic1 5.04-6.0~0njl.0 File type determination library us
ii libtag1c2 1.6.3-1 TagLib Audio Meta-Data Library
ii libtagc0 1.6.3-1 TagLib Audio Meta-Data Library (C
ii libupnp6 1:1.6.13-1~20111022dev~njl60+1 Portable SDK for UPnP Devices, ver
ii libuuid1 2.17.2-9 Universally Unique ID library
gmediaserver recommends no packages.
gmediaserver suggests no packages.
-- Configuration Files:
/etc/default/gmediaserver changed:
GMEDIASERVERRUN=yes
GMEDIASERVERARGS="--output=/var/log/gmediaserver/gmediaserver.log
--profile=generic --verbose=4 -ieth0"
GMEDIASERVERDIR="/music"
-- no debconf information
diff -urwN ../orig/gmediaserver-0.13.0/debian/patches/09_libupnp6.diff gmediaserver-0.13.0/debian/patches/09_libupnp6.diff
--- ../orig/gmediaserver-0.13.0/debian/patches/09_libupnp6.diff 1970-01-01 01:00:00.000000000 +0100
+++ gmediaserver-0.13.0/debian/patches/09_libupnp6.diff 2011-10-18 18:00:27.000000000 +0100
@@ -0,0 +1,78 @@
+Index: gmediaserver-0.13.0/src/upnp.c
+===================================================================
+--- gmediaserver-0.13.0.orig/src/upnp.c 2011-10-18 09:51:53.000000000 +0100
++++ gmediaserver-0.13.0/src/upnp.c 2011-10-18 17:39:39.000000000 +0100
+@@ -26,6 +26,8 @@
+ #include <netinet/in.h> /* ?; inet_ntoa */
+ #include <arpa/inet.h> /* ?; inet_ntoa */
+ #include <inttypes.h> /* POSIX */
++#include <sys/socket.h>
++#include <netdb.h>
+ #include "gettext.h" /* Gnulib/gettext */
+ #define _(s) gettext(s)
+ #define N_(s) gettext_noop(s)
+@@ -261,11 +263,18 @@
+ Service *service;
+ ServiceVariable *variable;
+
++ char addrStr[INET6_ADDRSTRLEN];
++ int error;
++
++ error = getnameinfo((struct sockaddr *)&request->CtrlPtIPAddr, sizeof(request->CtrlPtIPAddr),
++ addrStr, sizeof(addrStr), 0, 0,
++ NI_NUMERICHOST);
++
+ say(2, _("Event received: Get variable request\n"));
+ say(3, _("Event device UDN: %s\n"), quotearg(request->DevUDN));
+ say(3, _("Event service ID: %s\n"), quotearg(request->ServiceID));
+ say(3, _("Event variable name: %s\n"), quotearg(request->StateVarName));
+- say(3, _("Event source: %s\n"), inet_ntoa(request->CtrlPtIPAddr));
++ say(3, _("Event source: %s\n"), error == 0 ? addrStr : "unknown address");
+
+ if (strcmp(request->DevUDN, device_udn) != 0) {
+ say(1, _("Discarding event - event device UDN (%s) not recognized\n"), quotearg(request->DevUDN));
+@@ -302,11 +311,18 @@
+ ServiceAction *action;
+ ActionEvent event;
+
++ char addrStr[INET6_ADDRSTRLEN];
++ int error;
++
++ error = getnameinfo((struct sockaddr *)&request->CtrlPtIPAddr, sizeof(request->CtrlPtIPAddr),
++ addrStr, sizeof(addrStr), 0, 0,
++ NI_NUMERICHOST);
++
+ say(2, _("Event received: Action request\n"));
+ say(3, _("Event device UDN: %s\n"), quotearg(request->DevUDN));
+ say(3, _("Event service ID: %s\n"), quotearg(request->ServiceID));
+ say(3, _("Event action name: %s\n"), quotearg(request->ActionName));
+- say(3, _("Event source: %s\n"), inet_ntoa(request->CtrlPtIPAddr));
++ say(3, _("Event source: %s\n"), error == 0 ? addrStr : "unknown address");
+ say_document(4, _("Event action request:\n"), request->ActionRequest);
+
+ if (strcmp(request->DevUDN, device_udn) != 0) {
+Index: gmediaserver-0.13.0/src/contentdir.c
+===================================================================
+--- gmediaserver-0.13.0.orig/src/contentdir.c 2011-10-18 17:44:50.000000000 +0100
++++ gmediaserver-0.13.0/src/contentdir.c 2011-10-18 17:44:58.000000000 +0100
+@@ -19,6 +19,7 @@
+ */
+
+ #include <config.h>
++#include <assert.h>
+ #include <stdint.h> /* Gnulib/C99 */
+ #include <inttypes.h> /* ? */
+ #include <sys/stat.h> /* POSIX */
+Index: gmediaserver-0.13.0/src/webserver.c
+===================================================================
+--- gmediaserver-0.13.0.orig/src/webserver.c 2011-10-18 18:00:17.000000000 +0100
++++ gmediaserver-0.13.0/src/webserver.c 2011-10-18 18:00:22.000000000 +0100
+@@ -83,7 +83,7 @@
+ return get_entry_by_id(id);
+ }
+
+-static int
++static VDCallback_GetInfo
+ webserver_get_info(const char *filename, struct File_Info *info)
+ {
+ Entry *entry;
diff -urwN ../orig/gmediaserver-0.13.0/debian/patches/series gmediaserver-0.13.0/debian/patches/series
--- ../orig/gmediaserver-0.13.0/debian/patches/series 2011-01-24 17:08:42.000000000 +0000
+++ gmediaserver-0.13.0/debian/patches/series 2012-01-19 00:20:08.000000000 +0000
@@ -4,3 +4,4 @@
06_fix_noxon_sort.diff
07_mime_magic.diff
08_fix_thread_unsafe_func.diff
+09_libupnp6.diff