diff options
author | Mikhail Teterin <mi@FreeBSD.org> | 2012-01-09 20:45:07 +0000 |
---|---|---|
committer | Mikhail Teterin <mi@FreeBSD.org> | 2012-01-09 20:45:07 +0000 |
commit | 9921dc07c35951ad3047953d11858d946bbeb451 (patch) | |
tree | 50b0c2014cbd0c463cb4f3fbeb6a3eb22e2a0584 /net/minidlna | |
parent | f7c848917067f21ec4c13147315185c4961c55d3 (diff) | |
download | ports-9921dc07c35951ad3047953d11858d946bbeb451.tar.gz ports-9921dc07c35951ad3047953d11858d946bbeb451.zip |
Notes
Diffstat (limited to 'net/minidlna')
-rw-r--r-- | net/minidlna/Makefile | 2 | ||||
-rw-r--r-- | net/minidlna/files/patch-bravia-dlnapn | 15 | ||||
-rw-r--r-- | net/minidlna/files/patch-coverpic | 16 | ||||
-rw-r--r-- | net/minidlna/files/patch-lg | 19 | ||||
-rw-r--r-- | net/minidlna/files/patch-minidlna.c | 9 | ||||
-rw-r--r-- | net/minidlna/files/patch-samsung-subtitle-menu-3 | 136 |
6 files changed, 189 insertions, 8 deletions
diff --git a/net/minidlna/Makefile b/net/minidlna/Makefile index 990a1d928336..cf545ab94979 100644 --- a/net/minidlna/Makefile +++ b/net/minidlna/Makefile @@ -7,7 +7,7 @@ PORTNAME= minidlna PORTVERSION= 1.0.22 -PORTREVISION= 1 +PORTREVISION= 2 PORTEPOCH= 1 CATEGORIES= net multimedia www MASTER_SITES= SF diff --git a/net/minidlna/files/patch-bravia-dlnapn b/net/minidlna/files/patch-bravia-dlnapn new file mode 100644 index 000000000000..09be9c2d705b --- /dev/null +++ b/net/minidlna/files/patch-bravia-dlnapn @@ -0,0 +1,15 @@ +From: + +http://sourceforge.net/tracker/?func=detail&aid=3413830&group_id=243163&atid=1121518 + +--- upnpsoap.c 2011-08-19 01:24:17.000000000 +0200 ++++ upnpsoap.c 2011-09-25 14:54:00.000000000 +0200 +@@ -915,7 +915,7 @@ + strncmp(dlna_pn, "AVC_TS_MP_HD_AC3", 16) == 0 || + strncmp(dlna_pn, "AVC_TS_HP_HD_AC3", 16) == 0)) + { +- sprintf(dlna_buf, "DLNA.ORG_PN=AVC_TS_HD_50_AC3;DLNA.ORG_OP=01;DLNA.ORG_CI=0"); ++ sprintf(dlna_buf, "DLNA.ORG_PN=AVC_TS_HD_50_AC3%s", dlna_pn + 16); + add_res(size, duration, bitrate, sampleFrequency, nrAudioChannels, + resolution, dlna_buf, mime, detailID, ext, passed_args); + } diff --git a/net/minidlna/files/patch-coverpic b/net/minidlna/files/patch-coverpic new file mode 100644 index 000000000000..70174b3c5321 --- /dev/null +++ b/net/minidlna/files/patch-coverpic @@ -0,0 +1,16 @@ +From: + +http://sourceforge.net/tracker/?func=detail&aid=3425414&group_id=243163&atid=1121518 + +*** tagutils/tagutils-mp3.c 2010-11-12 00:48:14.000000000 +0100 +--- tagutils/tagutils-mp3.c 2011-10-18 22:36:22.000000000 +0200 +*************** _get_mp3tags(char *file, struct song_met +*** 78,83 **** +--- 78,84 ---- + else if(!strcmp(pid3frame->id, "APIC") && !image_size) + { + if( (strcmp((char*)id3_field_getlatin1(&pid3frame->fields[1]), "image/jpeg") == 0) || ++ (strcmp((char*)id3_field_getlatin1(&pid3frame->fields[1]), "image/jpg") == 0) || + (strcmp((char*)id3_field_getlatin1(&pid3frame->fields[1]), "jpeg") == 0) ) + { + image = id3_field_getbinarydata(&pid3frame->fields[4], &image_size); diff --git a/net/minidlna/files/patch-lg b/net/minidlna/files/patch-lg new file mode 100644 index 000000000000..6ceb040e161a --- /dev/null +++ b/net/minidlna/files/patch-lg @@ -0,0 +1,19 @@ +Patch from: + +http://sourceforge.net/tracker/?func=detail&aid=3459128&group_id=243163&atid=1121518 + +diff -u -b -p -d -r1.104 upnpsoap.c +--- upnpsoap.c 23 Nov 2011 22:41:42 -0000 1.104 ++++ upnpsoap.c 13 Dec 2011 20:45:33 -0000 +@@ -754,9 +754,9 @@ callback(void *args, int argc, char **ar + ret = strcatf(str, " refID=\"%s\"", refID); + } + ret = strcatf(str, ">" +- "<dc:title>%s</dc:title>" ++ "<dc:title>%s%s</dc:title>" + "<upnp:class>object.%s</upnp:class>", +- title, class); ++ title, ((strchr(title, '.') == NULL && (passed_args->filter & FILTER_RES) && *mime == 'v' && passed_args->client == ELGDevice) ? "." : ""), class); + if( comment && (passed_args->filter & FILTER_DC_DESCRIPTION) ) { + ret = strcatf(str, "<dc:description>%.384s</dc:description>", comment); + } diff --git a/net/minidlna/files/patch-minidlna.c b/net/minidlna/files/patch-minidlna.c index ee59b9346fd7..df548dca3746 100644 --- a/net/minidlna/files/patch-minidlna.c +++ b/net/minidlna/files/patch-minidlna.c @@ -56,16 +56,11 @@ + "\t\t[-u uid_to_run_as]\n" "\t\t[-w url] [-R] [-V] [-h]\n" "\nNotes:\n\tNotify interval is in seconds. Default is 895 seconds.\n" -@@ -831,5 +855,10 @@ +@@ -831,5 +855,5 @@ /* set signal handler */ - signal(SIGCLD, SIG_IGN); -+ memset(&sa, 0, sizeof(struct sigaction)); -+ sa.sa_handler = SIG_IGN; -+ sa.sa_flags = SA_NOCLDSTOP|SA_NOCLDWAIT; -+#ifndef SIGCHLD -+# define SIGCHLD SIGCLD -+#endif ++ signal(SIGCHLD, SIG_IGN); memset(&sa, 0, sizeof(struct sigaction)); sa.sa_handler = sigterm; @@ -849,4 +878,7 @@ diff --git a/net/minidlna/files/patch-samsung-subtitle-menu-3 b/net/minidlna/files/patch-samsung-subtitle-menu-3 new file mode 100644 index 000000000000..b95df745675c --- /dev/null +++ b/net/minidlna/files/patch-samsung-subtitle-menu-3 @@ -0,0 +1,136 @@ +From: + +https://sourceforge.net/tracker/?func=detail&aid=3387389&group_id=243163&atid=1121518 + +Index: minidlnatypes.h +=================================================================== +RCS file: /cvsroot/minidlna/minidlna/minidlnatypes.h,v +retrieving revision 1.26 +diff -u -p -r1.26 minidlnatypes.h +--- minidlnatypes.h 18 Aug 2011 23:24:17 -0000 1.26 ++++ minidlnatypes.h 26 Aug 2011 21:32:40 -0000 +@@ -68,7 +68,7 @@ enum file_types { + enum client_types { + EXbox = 1, + EPS3, +- ESamsungTV, ++ ESamsungSeriesC, + EDenonReceiver, + EFreeBox, + EPopcornHour, +Index: upnpdescgen.c +=================================================================== +RCS file: /cvsroot/minidlna/minidlna/upnpdescgen.c,v +retrieving revision 1.18 +diff -u -p -r1.18 upnpdescgen.c +--- upnpdescgen.c 2 May 2011 23:50:52 -0000 1.18 ++++ upnpdescgen.c 26 Aug 2011 21:32:40 -0000 +@@ -675,18 +675,40 @@ genRootDesc(int * len) + { + char * str; + int tmplen; +- tmplen = 2048; ++ tmplen = 2560; + str = (char *)malloc(tmplen); + if(str == NULL) + return NULL; + * len = strlen(xmlver); +- /*strcpy(str, xmlver); */ + memcpy(str, xmlver, *len + 1); + str = genXML(str, len, &tmplen, rootDesc); + str[*len] = '\0'; + return str; + } + ++char * ++genRootDescSamsung(int * len) ++{ ++ char * str; ++ int tmplen; ++ struct XMLElt samsungRootDesc[sizeof(rootDesc)/sizeof(struct XMLElt)]; ++ tmplen = 2560; ++ str = (char *)malloc(tmplen); ++ if(str == NULL) ++ return NULL; ++ * len = strlen(xmlver); ++ memcpy(str, xmlver, *len + 1); ++ /* Replace the optional modelURL and manufacturerURL fields with Samsung foo */ ++ memcpy(&samsungRootDesc, &rootDesc, sizeof(rootDesc)); ++ samsungRootDesc[8+PNPX].eltname = "/sec:ProductCap"; ++ samsungRootDesc[8+PNPX].data = "smi,DCM10,getMediaInfo.sec,getCaptionInfo.sec"; ++ samsungRootDesc[12+PNPX].eltname = "/sec:X_ProductCap"; ++ samsungRootDesc[12+PNPX].data = "smi,DCM10,getMediaInfo.sec,getCaptionInfo.sec"; ++ str = genXML(str, len, &tmplen, samsungRootDesc); ++ str[*len] = '\0'; ++ return str; ++} ++ + /* genServiceDesc() : + * Generate service description with allowed methods and + * related variables. */ +Index: upnpdescgen.h +=================================================================== +RCS file: /cvsroot/minidlna/minidlna/upnpdescgen.h,v +retrieving revision 1.5 +diff -u -p -r1.5 upnpdescgen.h +--- upnpdescgen.h 17 Feb 2011 23:17:24 -0000 1.5 ++++ upnpdescgen.h 26 Aug 2011 21:32:40 -0000 +@@ -74,6 +74,9 @@ struct stateVar { + char * + genRootDesc(int * len); + ++char * ++genRootDescSamsung(int * len); ++ + /* for the two following functions */ + char * + genContentDirectory(int * len); +Index: upnphttp.c +=================================================================== +RCS file: /cvsroot/minidlna/minidlna/upnphttp.c,v +retrieving revision 1.87 +diff -u -p -r1.87 upnphttp.c +--- upnphttp.c 18 Aug 2011 18:34:59 -0000 1.87 ++++ upnphttp.c 26 Aug 2011 21:32:40 -0000 +@@ -304,10 +304,12 @@ intervening space) by either an integer + } + else if(strstrc(p, "SEC_HHP_", '\r')) + { +- h->req_client = ESamsungTV; ++ h->req_client = ESamsungSeriesC; + h->reqflags |= FLAG_SAMSUNG; + h->reqflags |= FLAG_DLNA; + h->reqflags |= FLAG_NO_RESIZE; ++ if(strstrc(p, "SEC_HHP_TV", '\r')) ++ h->reqflags |= FLAG_SAMSUNG_TV; + } + else if(strncmp(p, "SamsungWiselinkPro", 18)==0) + { +@@ -844,6 +846,10 @@ ProcessHttpQuery_upnphttp(struct upnphtt + sendXMLdesc(h, genRootDesc); + friendly_name[i] = '\0'; + } ++ else if( h->reqflags & FLAG_SAMSUNG_TV ) ++ { ++ sendXMLdesc(h, genRootDescSamsung); ++ } + else + { + sendXMLdesc(h, genRootDesc); +Index: upnphttp.h +=================================================================== +RCS file: /cvsroot/minidlna/minidlna/upnphttp.h,v +retrieving revision 1.27 +diff -u -p -r1.27 upnphttp.h +--- upnphttp.h 18 Aug 2011 23:24:17 -0000 1.27 ++++ upnphttp.h 26 Aug 2011 21:32:40 -0000 +@@ -113,7 +113,8 @@ struct upnphttp { + #define FLAG_NO_RESIZE 0x02000000 + #define FLAG_MS_PFS 0x04000000 // Microsoft PlaysForSure client + #define FLAG_SAMSUNG 0x08000000 +-#define FLAG_AUDIO_ONLY 0x10000000 ++#define FLAG_SAMSUNG_TV 0x10000000 ++#define FLAG_AUDIO_ONLY 0x20000000 + + #define FLAG_FREE_OBJECT_ID 0x00000001 + #define FLAG_ROOT_CONTAINER 0x00000002 |