debian/0000775000000000000000000000000012277427023007176 5ustar debian/copyright0000664000000000000000000000452611267313445011140 0ustar This package was debianized by Jochen Friedrich on Sat, 16 Jul 2005 10:07:59 +0200. It was downloaded from http://www.nongnu.org/gmediaserver/ Upstream Author: Oskar Liljeblad Copyright: GMediaServer is copyright (C) 2005, 2006, 2007 Oskar Liljeblad. This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 3 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. Note that GMediaServer links with libupnp, which is licensed under the terms of a modified BSD license (i.e. the original BSD license without the advertising clause). This license is compatible with the GNU GPL. GMediaServer optionally links with id3lib, which is licensed under the terms of the GNU General Public License. The source code of this project may contain files from other projects, and files generated by other projects, including: * GNU Autoconf (http://www.gnu.org/software/autoconf/) * GNU Automake (http://sources.redhat.com/automake/) * GNU gettext (http://www.gnu.org/software/gettext/) * Gnulib (http://www.gnu.org/software/gnulib/) * Flex (http://www.gnu.org/software/flex/) * GNU Bison (http://www.gnu.org/software/bison/) * Autoconf Macro Archive (http://ac-archive.sourceforge.net/) Such files are licensed under the terms of the GNU General Public License or a license compatible with the GNU GPL (as listed on http://www.gnu.org/licenses/license-list.html). See each file for copyright details. The Swedish translations in the po directory may contain translations from other projects, including: * GNU C Library (http://www.gnu.org/software/libc/libc.html) * GNU Core Utilities (http://www.gnu.org/software/coreutils/) See the specific message file (PO file) for copyright of those messages. The GNU GPL may be viewed on Debian systems in /usr/share/common-licenses/GPL debian/init.d0000664000000000000000000000477011372003213010300 0ustar #! /bin/sh -e ### BEGIN INIT INFO # Provides: gmediaserver # Required-Start: $network $local_fs $remote_fs # Required-Stop: $network $local_fs $remote_fs # Default-Start: 2 3 4 5 # Default-Stop: 0 1 6 # Short-Description: gmediaserver UPnP media server # Description: gmediaserver UPnP media server ### END INIT INFO # # Author: Jochen Friedrich # set -e PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin DAEMON=/usr/bin/gmediaserver NAME=gmediaserver DESC=gmediaserver test -x $DAEMON || exit 0 # Include gmediaserver defaults if available if [ -f /etc/default/gmediaserver ] ; then . /etc/default/gmediaserver fi case "$1" in start) echo -n "Starting $DESC: " if [ "$GMEDIASERVERRUN" = "yes" ]; then if [ ! -d /var/run/$NAME ]; then mkdir /var/run/$NAME fi chown nobody:nogroup /var/run/$NAME start-stop-daemon --start --quiet \ --pidfile /var/run/$NAME/$NAME.pid \ --chuid nobody:nogroup --exec $DAEMON \ -- -b --pid-file=/var/run/$NAME/$NAME.pid \ $GMEDIASERVERARGS $GMEDIASERVERDIR echo "$NAME." fi ;; stop) echo -n "Stopping $DESC: " start-stop-daemon --stop --quiet --pidfile /var/run/$NAME/$NAME.pid \ --oknodo --exec $DAEMON echo "$NAME." ;; #reload) # # If the daemon can reload its config files on the fly # for example by sending it SIGHUP, do it here. # # If the daemon responds to changes in its config file # directly anyway, make this a do-nothing entry. # # echo "Reloading $DESC configuration files." # start-stop-daemon --stop --signal 1 --quiet --pidfile \ # /var/run/$NAME.pid --exec $DAEMON #;; restart|force-reload) # # If the "reload" option is implemented, move the "force-reload" # option to the "reload" entry above. If not, "force-reload" is # just the same as "restart". # echo -n "Restarting $DESC: " start-stop-daemon --stop --quiet --pidfile /var/run/$NAME/$NAME.pid \ --exec $DAEMON sleep 2 if [ "$GMEDIASERVERRUN" = "yes" ]; then if [ ! -d /var/run/$NAME ]; then mkdir /var/run/$NAME fi chown nobody:nogroup /var/run/$NAME start-stop-daemon --start --quiet \ --pidfile /var/run/$NAME/$NAME.pid \ --chuid nobody:nogroup --exec $DAEMON \ -- -b --pid-file=/var/run/$NAME/$NAME.pid \ $GMEDIASERVERARGS $GMEDIASERVERDIR echo "$NAME." fi ;; *) N=/etc/init.d/$NAME # echo "Usage: $N {start|stop|restart|reload|force-reload}" >&2 echo "Usage: $N {start|stop|restart|force-reload}" >&2 exit 1 ;; esac exit 0 debian/clean0000664000000000000000000000001211267314064010172 0ustar ChangeLog debian/changelog0000664000000000000000000001510012277427017011050 0ustar gmediaserver (0.13.0-8ubuntu1) trusty; urgency=low * Use autotools-dev for arm64. -- Daniel T Chen Fri, 14 Feb 2014 09:53:56 -0500 gmediaserver (0.13.0-8) unstable; urgency=low * Update to Standards version 3.9.3 * Get rid of libid3 on request of libid3 maintainer * Add patch from Nick Leverton to update libupnp3 to libupnp6 (Closes: #656833) -- Jochen Friedrich Wed, 25 Apr 2012 16:05:55 +0200 gmediaserver (0.13.0-7) unstable; urgency=high * Add patch from Guillem Jover to fix crashes due to a non thread safe variable. (Closes: #610763) -- Jochen Friedrich Mon, 24 Jan 2011 18:08:59 +0100 gmediaserver (0.13.0-6) unstable; urgency=low * Switch to dpkg-source 3.0 (quilt) format * Bump Standards version to 3.8.4 * Fix init script dependency on $remote_fs -- Jochen Friedrich Mon, 10 May 2010 15:13:57 +0200 gmediaserver (0.13.0-5) unstable; urgency=low * Change flags for libmagic1. (Closes: #555489). Thanks to Roderich Schupp for the patch. -- Jochen Friedrich Tue, 10 Nov 2009 13:33:43 +0100 gmediaserver (0.13.0-4) unstable; urgency=low * Acknowledge NMU. * Switch patch system to quilt and simplify rules. * Delete empty upstream Changelog in clean rather then with patches. * Add README.source. * Bump Standards version to 3.8.3. * Fix info document. (Closes: #528872) * Add patch for NOXON devices (Closes: #408561, #480870) Thanks to Leif Jakob for the patch. * Add patch to fix multiple media directories (Closes: #403018). Thanks to Richard Burdick for the patch. -- Jochen Friedrich Tue, 20 Oct 2009 13:09:56 +0200 gmediaserver (0.13.0-3.1) unstable; urgency=low * Non-maintainer upload. * Move signal changing until after the filescan so we actually terminate when people think better of starting the service. It will be missing a log message about being killed, but that is better than to keep running because we would miss a log message. Closes: #500259 -- Thomas Viehmann Sat, 11 Oct 2008 11:11:37 +0200 gmediaserver (0.13.0-3) unstable; urgency=low * Fix stop levels in LSB header. * Update debhelper to 7, replacing CDBS. * Add dpatch system. * Fix lintian warnings about info file by adding dircategory node. -- Jochen Friedrich Thu, 08 May 2008 12:21:57 +0200 gmediaserver (0.13.0-2) unstable; urgency=low * Rebuild against libupnp3 * Bump standards version to 3.7.3 * Update dpkg compat level to 5 -- Jochen Friedrich Fri, 04 Apr 2008 17:19:42 +0200 gmediaserver (0.13.0-1) unstable; urgency=low * New upstream release o This project is looking for a new upstream maintainer! Unfortunately he has found it more and more difficult to find time and motivation to continue working on this project. If anyone is interesting taking over development and support for GMediaServer on Savannah, please let him know! o Link libmagic with zlib optionally. o Link libupnp with pthread optionally - fix for FreeBSD (bug reported by Olaf). o Fix bug in parsing of sort criterias (reported by Canola maintainer Gustavo Sverzut Barbieri). o Change license to GPLv3. o Minor manual updates. o Added some supported devices. o Added Playstation 3 support (patch from FUKAUMI Naoki, thanks!). o Added preliminary DLNA support. o Enable large file support in GMediaServer, fixing some weird problems. o GMediaServer will now work with libupnp 1.6.1. -- Jochen Friedrich Fri, 30 Nov 2007 10:20:54 +0100 gmediaserver (0.12.0-3) unstable; urgency=low * Depend on libupnp-dev >= 1.4.3-2 to avoid a miscompilation (Closes: #433787) * Add patch from upstream to fix Noxon2 bug. Thanks to Daniel Albers for reporting (Closes: #429591) -- Jochen Friedrich Thu, 26 Jul 2007 17:30:42 +0200 gmediaserver (0.12.0-2) unstable; urgency=low * Update for new libupnp2. * Add large file system support -- Jochen Friedrich Tue, 10 Apr 2007 12:26:07 +0200 gmediaserver (0.12.0-1) unstable; urgency=low * New upstream release o Fix compilation problems by including more headers in various places (from Jan Ceuleers, Sebastian Marek, Mohan Yellaji, and Alejandro Imass). o Support libupnp 1.3.x properly by using headers in correct directory (from Jan Ceuleers). o Added initial support for file types other than audio. Add support for JPEG images (patch from Jan Ceuleers). o Use and depend on libmagic for file type identification. o Add --file-types help to --help message. o Fix libuuid detection (reported by Wayne Stallwood). o Enable searching by adding 'searchable' attribute to containers (reported by R�mi). o Minor documentation improvements. o Fix bug: GMediaServer would segfault when more than one directory was specified on the command line and one (or more) of them could not be scanned. o Fix bugs: GMediaServer would segfault on any search. o Output non-printable strings escaped properly. * Update watch file. * Fix init script. -- Jochen Friedrich Thu, 23 Nov 2006 17:13:21 +0100 gmediaserver (0.11.0-2) unstable; urgency=low * Fix spelling error in description (Closes: #398648) * Add LSB section to startup file. * Bump -- Jochen Friedrich Thu, 23 Nov 2006 16:33:45 +0100 igmediaserver (0.11.0-1) unstable; urgency=low * New upstream release -- Jochen Friedrich Sat, 22 Apr 2006 11:19:47 +0200 gimediaserver (0.10.0-1) unstable; urgency=low * New upstream release * Add dependency on libtag1-dev, libtagc0-dev and pkg-config -- Jochen Friedrich Sat, 11 Mar 2006 12:44:14 +0100 gmediaserver (0.9.0-1) unstable; urgency=low * New upstream release * Priority to extra due to dependency on libupnp0. -- Jochen Friedrich Tue, 20 Dec 2005 13:48:31 +0100 gmediaserver (0.8.0-1) unstable; urgency=low * New upstream release -- Jochen Friedrich Tue, 20 Sep 2005 14:22:47 +0200 gmediaserver (0.7.0-1) unstable; urgency=low * New upstream release. (Closes: #326111) -- Jochen Friedrich Sat, 3 Sep 2005 14:28:58 +0200 gmediaserver (0.4.0-1) unstable; urgency=low * Initial Release. (Closes: #317891) -- Jochen Friedrich Tue, 19 Jul 2005 22:07:42 +0200 debian/docs0000664000000000000000000000002111267313445010042 0ustar NEWS README TODO debian/patches/0000775000000000000000000000000011730142650010616 5ustar debian/patches/09_libupnp6.diff0000664000000000000000000000627611730142650013532 0ustar 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 /* ?; inet_ntoa */ #include /* ?; inet_ntoa */ #include /* POSIX */ +#include +#include #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 +#include #include /* Gnulib/C99 */ #include /* ? */ #include /* 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; debian/patches/03_fix_info_file.diff0000664000000000000000000001142511267317322014562 0ustar ## Add INFO-DIR-SECTION line to texi source. Index: gmediaserver-0.13.0/doc/gmediaserver.info =================================================================== --- gmediaserver-0.13.0.orig/doc/gmediaserver.info 2009-10-20 13:25:32.000000000 +0200 +++ gmediaserver-0.13.0/doc/gmediaserver.info 2009-10-20 13:28:11.000000000 +0200 @@ -1,6 +1,11 @@ -This is gmediaserver.info, produced by makeinfo version 4.8 from +This is gmediaserver.info, produced by makeinfo version 4.13 from gmediaserver.texi. +INFO-DIR-SECTION Network Applications +START-INFO-DIR-ENTRY +* gmediaserver: (gmediaserver). UPnP Mediaserver +END-INFO-DIR-ENTRY + This manual was last updated 10 November 2007 for version 0.13.0 of GMediaServer. @@ -77,12 +82,12 @@ video--they don't provide the media themselves. Those media files have to come from a device on the network. GMediaServer is a server for such UPnP compatible media players - hardware based as well as software -based. See *Note Supported Devices:: for a more complete list. +based. See *note Supported Devices:: for a more complete list. The technical details: As the name indicates, GMediaServer implements a MediaServer device -as specified in the corresponding UPnP standard (see *Note References +as specified in the corresponding UPnP standard (see *note References and Links::). The media players issue browse and search requests to GMediaServer through this protocol. The actual audio and video data (e.g. MP3 and OGG files) is however transferred using a different @@ -104,7 +109,7 @@ GMediaServer is copyright (C) 2005, 2006 Oskar Liljeblad. This program is free software; you can redistribute it and/or modify -it under the terms of the GNU General Public License (*Note GNU General +it under the terms of the GNU General Public License (*note GNU General Public License::) as published by the Free Software Foundation (http://www.fsf.org/); either version 3 of the License, or (at your option) any later version. @@ -120,11 +125,11 @@ Permission is granted to copy, distribute and/or modify GMediaServer documentation under the terms of either: - a) the GNU General Public License (*Note GNU General Public + a) the GNU General Public License (*note GNU General Public License::) as published by the Free Software Foundation; either version 3 of the License, or (at your option) any later version, or - b) the GNU Free Documentation License (*Note GNU Free Documentation + b) the GNU Free Documentation License (*note GNU Free Documentation License::), version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. @@ -827,8 +832,8 @@  File: gmediaserver.info, Node: Licenses, Prev: References and Links, Up: Top -Appendix A Licenses -******************* +Anhang A Licenses +***************** * Menu: @@ -1993,28 +1998,28 @@  Tag Table: -Node: Top942 -Node: Introduction2376 -Node: Copyright and License3835 -Node: Preparations6881 -Node: Obtaining GMediaServer7369 -Node: Requirements8371 -Node: Building and Installation11952 -Node: Usage12795 -Node: Command line options13802 -Ref: Command line options-Footnote-116763 -Node: Character sets16839 -Ref: Character sets-Footnote-118126 -Ref: Character sets-Footnote-218374 -Node: Profiles18446 -Node: File types18962 -Node: Signals19946 -Node: Supported Devices20303 -Node: Support and Feedback24449 -Node: Known Bugs25624 -Node: References and Links26532 -Node: Licenses27960 -Node: GNU Free Documentation License28228 -Node: GNU General Public License50653 +Node: Top1074 +Node: Introduction2508 +Node: Copyright and License3967 +Node: Preparations7013 +Node: Obtaining GMediaServer7501 +Node: Requirements8503 +Node: Building and Installation12084 +Node: Usage12927 +Node: Command line options13934 +Ref: Command line options-Footnote-116895 +Node: Character sets16971 +Ref: Character sets-Footnote-118258 +Ref: Character sets-Footnote-218506 +Node: Profiles18578 +Node: File types19094 +Node: Signals20078 +Node: Supported Devices20435 +Node: Support and Feedback24581 +Node: Known Bugs25756 +Node: References and Links26664 +Node: Licenses28092 +Node: GNU Free Documentation License28356 +Node: GNU General Public License50781  End Tag Table Index: gmediaserver-0.13.0/doc/gmediaserver.texi =================================================================== --- gmediaserver-0.13.0.orig/doc/gmediaserver.texi 2009-10-20 13:25:32.000000000 +0200 +++ gmediaserver-0.13.0/doc/gmediaserver.texi 2009-10-20 13:27:53.000000000 +0200 @@ -25,6 +25,10 @@ @settitle GMediaServer @finalout @paragraphindent 2 +@dircategory Network Applications +@direntry + * gmediaserver: (gmediaserver). UPnP Mediaserver +@end direntry @c Unify some of the indices. @syncodeindex tp fn debian/patches/08_fix_thread_unsafe_func.diff0000664000000000000000000000140411517330717016455 0ustar Description: Fix thread unsafe function causing crashes The conv_filename function is not thread safe, as it uses a static buffer to be able to return the computed string, w/o leaking. Due the UPnP web server being threaded and the function freeing the pointer on entry, the string used by the server might happen to be doubly freed, or used while the pointer is not valid any longer. Just declare the variable as Thread Local Storage. Author: Guillem Jover --- gmediaserver-0.13.0.orig/src/main.c +++ gmediaserver-0.13.0/src/main.c @@ -127,7 +127,7 @@ convert_string_to_log(const char *str) return xstrdup(str); } -static char *cache_fs_str = NULL; +static __thread char *cache_fs_str = NULL; char * conv_filename(const char *str) debian/patches/series0000664000000000000000000000027311730142650012035 0ustar 03_fix_info_file.diff 04_dont_blog_signals_if_not_processing_them.diff 05_fix_multiple_dirs.diff 06_fix_noxon_sort.diff 07_mime_magic.diff 08_fix_thread_unsafe_func.diff 09_libupnp6.diff debian/patches/07_mime_magic.diff0000664000000000000000000000064611276256572014071 0ustar --- a/src/metadata.c 2009-11-09 20:54:46.000000000 +0100 +++ b/src/metadata.c 2009-11-09 20:56:04.000000000 +0100 @@ -1018,7 +1018,7 @@ bool init_metadata(void) { - magic_cookie = magic_open(MAGIC_SYMLINK|MAGIC_MIME|MAGIC_ERROR); + magic_cookie = magic_open(MAGIC_SYMLINK|MAGIC_MIME_TYPE|MAGIC_ERROR); if (magic_cookie == NULL) { warn(_("cannot initialize magic library\n")); return false; debian/patches/06_fix_noxon_sort.diff0000664000000000000000000000267311267327372015056 0ustar Index: gmediaserver-0.13.0/src/contentdir.c =================================================================== --- gmediaserver-0.13.0.orig/src/contentdir.c 2009-10-20 14:36:41.000000000 +0200 +++ gmediaserver-0.13.0/src/contentdir.c 2009-10-20 14:37:07.000000000 +0200 @@ -145,8 +145,15 @@ const Entry *e1 = k1; const Entry *e2 = k2; + if ( criteria->first == NULL ) { + /* default sorting */ + return strcasecmp(e1->name, e2->name); + } + sort_entry = criteria->first; - while (sort_entry != NULL) { + + /* FIXME: sorting by multiple criterias will never work */ + while (sort_entry != NULL) { /* FIXME: sort_entry is never updated! */ char *p1 = get_entry_property(e1, sort_entry->property); char *p2 = get_entry_property(e2, sort_entry->property); @@ -154,11 +161,11 @@ free(p2); return (sort_entry->ascending ? -1 : 1); } - if (p1 != NULL && p2 == NULL) { + else if (p1 != NULL && p2 == NULL) { free(p1); return (sort_entry->ascending ? 1 : -1); } - if (p1 != NULL && p2 != NULL) { + else if (p1 != NULL && p2 != NULL) { int compare; compare = strcmp(p1, p2); @@ -167,9 +174,12 @@ if (compare != 0) return (sort_entry->ascending ? compare : -compare); } + else { /* both are null - bail out!!! */ + return strcasecmp(e1->name, e2->name); + } } - return e1-e2; + return e1-e2; /* FIXME: sorting by pointer compare? */ } void debian/patches/04_dont_blog_signals_if_not_processing_them.diff0000664000000000000000000000232311267314407022257 0ustar ## 04_dont_blog_signals_if_not_processing_them.dpatch by Thomas Viehmann ## Don't block signals before the (possibly long) scan during which ## they (in particular SIGTERM) would be ignored. ## See Debian bug #500259 --- gmediaserver-0.13.0~/src/main.c +++ gmediaserver-0.13.0/src/main.c @@ -403,6 +403,17 @@ if (!background) write_pid_file(pidfilename, getpid(), false); + if (!init_metadata()) { + finish_logging(false); + exit(EXIT_FAILURE); + } + + if (!scan_entries(argv+optind, argc-optind, 0)) { + finish_metadata(); + finish_logging(false); + exit(EXIT_FAILURE); + } + signalaction.sa_handler = dummy_signal_handler; if (sigemptyset(&signalaction.sa_mask) < 0) die(_("cannot empty signal set - %s\n"), errstr); @@ -428,17 +439,6 @@ if (sigprocmask(SIG_BLOCK, &signalset, NULL) < 0) die(_("cannot block signals - %s\n"), errstr); - if (!init_metadata()) { - finish_logging(false); - exit(EXIT_FAILURE); - } - - if (!scan_entries(argv+optind, argc-optind, 0)) { - finish_metadata(); - finish_logging(false); - exit(EXIT_FAILURE); - } - init_contentdir(); init_upnp(listenip, listenport); debian/patches/05_fix_multiple_dirs.diff0000664000000000000000000000201111267327133015476 0ustar Index: gmediaserver-0.13.0/src/metadata.c =================================================================== --- gmediaserver-0.13.0.orig/src/metadata.c 2009-10-20 14:32:45.000000000 +0200 +++ gmediaserver-0.13.0/src/metadata.c 2009-10-20 14:34:29.000000000 +0200 @@ -1071,6 +1071,7 @@ uint32_t c; uint32_t child_count = 0; + root_entry = make_entry(ROOT_ENTRY_NAME, -1, true); children = xmalloc(sizeof(int32_t) * pathc); for (c = 0; c < pathc; c++) { Entry *entry; @@ -1088,13 +1089,13 @@ free(tmp); } - entry = scan_entry(pathv[c], name, -1, indent_size, NULL); + entry = scan_entry(pathv[c], name, root_entry->id, indent_size, + NULL); if (entry != NULL) children[child_count++] = entry->id; free(name); } if (child_count != 0) { - root_entry = make_entry(ROOT_ENTRY_NAME, -1, true); detail = get_entry_detail(root_entry, DETAIL_CHILDREN); detail->data.children.count = child_count; detail->data.children.list = children; debian/watch0000664000000000000000000000015711267313445010232 0ustar version=3 http://savannah.nongnu.org/download/gmediaserver/gmediaserver-([\d+\.]+|\d+)\.tar\.gz debian uupdate debian/README.debian0000664000000000000000000000061011267313445011274 0ustar gMediaServer for Debian ----------------------- This UPnP Media Server is designed to be run by any non-root user. Alternatively, gMediaServer can be started at boot time by editing /etc/default/gmediaserver, setting GMEDIASERVERRUN to yes and setting GMEDIASERVERDIR to the directory where the content is stored. Just keep in mind that in this case gMediaServer is started as user nobody. debian/control0000664000000000000000000000152512277426767010622 0ustar Source: gmediaserver Section: net Priority: extra Maintainer: Ubuntu Developers XSBC-Original-Maintainer: Jochen Friedrich Build-Depends: debhelper (>= 7.0.50~), libupnp-dev (>= 1.6.17), flex, bison, perl (>= 5.6.0), libtag1-dev, libtagc0-dev, pkg-config, libmagic-dev, uuid-dev, zlib1g-dev, autotools-dev Build-Conflicts: libid3-3.8.3-dev Standards-Version: 3.9.3 Homepage: http://www.gnu.org/software/gmediaserver/ Package: gmediaserver Architecture: any Depends: ${shlibs:Depends}, ${misc:Depends}, dpkg (>= 1.15.4) | install-info Description: UPnP Mediaserver gMediaServer is a server for UPnP media players like the Netgear MP101, Linksys WMLS11B etc. It exports one or more directories using the UPnP protocol so the mediaserver can browse through them and play audio or video files. debian/source/0000775000000000000000000000000011372002713010464 5ustar debian/source/format0000664000000000000000000000001411372002713011672 0ustar 3.0 (quilt) debian/compat0000664000000000000000000000000211267313445010374 0ustar 7 debian/default0000664000000000000000000000022511267313445010544 0ustar # gmediaserver control (yes means start daemon). GMEDIASERVERRUN=no #GMEDIASERVERARGS="--profile=mp101 -ieth0" GMEDIASERVERDIR="/usr/share/sounds" debian/rules0000775000000000000000000000025712277427002010257 0ustar #!/usr/bin/make -f %: dh $@ --with autotools-dev .PHONY: override_dh_auto_install override_dh_auto_install: dh_auto_install rm -f debian/gmediaserver/usr/share/info/dir