update to 1.1.9 changes: There are improvements to DVB subtitle support and H.264 video, and fixes for MP3 playback, DVB, ivtv, Flash video streams and some playlist types (particularly XML ones). One significant fix is that the special "be nice to the user" '#' handling has been dropped since it seems to have been causing more problems than it fixes. pkgsrc note: a fix for CVE-2008-0225 (RTSP buffer overflow) is already includeddiff -r1.53 -r1.54 pkgsrc/multimedia/xine-lib/Makefile
(drochner)
@@ -1,19 +1,17 @@ | @@ -1,19 +1,17 @@ | |||
1 | # $NetBSD: Makefile,v 1.53 2008/01/06 15:36:41 drochner Exp $ | 1 | # $NetBSD: Makefile,v 1.54 2008/01/11 16:05:27 drochner Exp $ | |
2 | 2 | |||
3 | .include "Makefile.common" | 3 | .include "Makefile.common" | |
4 | 4 | |||
5 | PKGREVISION= 1 | |||
6 | ||||
7 | COMMENT= Multimedia player library | 5 | COMMENT= Multimedia player library | |
8 | 6 | |||
9 | BUILDLINK_API_DEPENDS.vcdimager+= vcdimager>=0.7.20nb1 | 7 | BUILDLINK_API_DEPENDS.vcdimager+= vcdimager>=0.7.20nb1 | |
10 | 8 | |||
11 | SUBST_CLASSES+= oss | 9 | SUBST_CLASSES+= oss | |
12 | SUBST_STAGE.oss= post-patch | 10 | SUBST_STAGE.oss= post-patch | |
13 | SUBST_FILES.oss= src/audio_out/audio_oss_out.c | 11 | SUBST_FILES.oss= src/audio_out/audio_oss_out.c | |
14 | SUBST_SED.oss= -e "s,/dev/dsp,${DEVOSSAUDIO},g" | 12 | SUBST_SED.oss= -e "s,/dev/dsp,${DEVOSSAUDIO},g" | |
15 | .if ${OPSYS} == "NetBSD" || ${OPSYS} == "OpenBSD" | 13 | .if ${OPSYS} == "NetBSD" || ${OPSYS} == "OpenBSD" | |
16 | SUBST_SED.oss+= -e "s,\"dsp\",\"audio\",g" | 14 | SUBST_SED.oss+= -e "s,\"dsp\",\"audio\",g" | |
17 | .endif | 15 | .endif | |
18 | SUBST_MESSAGE.oss= Fixing hardcoded audio device. | 16 | SUBST_MESSAGE.oss= Fixing hardcoded audio device. | |
19 | 17 | |||
@@ -33,17 +31,18 @@ BUILDLINK_API_DEPENDS.libcdio+= libcdio> | @@ -33,17 +31,18 @@ BUILDLINK_API_DEPENDS.libcdio+= libcdio> | |||
33 | .include "../../devel/gettext-lib/buildlink3.mk" | 31 | .include "../../devel/gettext-lib/buildlink3.mk" | |
34 | # these could be options or (better) extra plugin packages | 32 | # these could be options or (better) extra plugin packages | |
35 | #.include "../../devel/SDL/buildlink3.mk" | 33 | #.include "../../devel/SDL/buildlink3.mk" | |
36 | #.include "../../graphics/ImageMagick/buildlink3.mk" | 34 | #.include "../../graphics/ImageMagick/buildlink3.mk" | |
37 | #.include "../../graphics/Mesa/buildlink3.mk" | 35 | #.include "../../graphics/Mesa/buildlink3.mk" | |
38 | CONFIGURE_ARGS+= --disable-opengl | 36 | CONFIGURE_ARGS+= --disable-opengl | |
39 | #.include "../../graphics/aalib/buildlink3.mk" | 37 | #.include "../../graphics/aalib/buildlink3.mk" | |
40 | .include "../../graphics/mng/buildlink3.mk" | 38 | .include "../../graphics/mng/buildlink3.mk" | |
41 | .include "../../graphics/png/buildlink3.mk" | 39 | .include "../../graphics/png/buildlink3.mk" | |
42 | .include "../../misc/libcdio/buildlink3.mk" | 40 | .include "../../misc/libcdio/buildlink3.mk" | |
43 | .include "../../multimedia/libtheora/buildlink3.mk" | 41 | .include "../../multimedia/libtheora/buildlink3.mk" | |
44 | .include "../../sysutils/vcdimager-devel/buildlink3.mk" | 42 | .include "../../sysutils/vcdimager-devel/buildlink3.mk" | |
45 | .include "../../x11/libXext/buildlink3.mk" | 43 | .include "../../x11/libXext/buildlink3.mk" | |
44 | .include "../../x11/libXt/buildlink3.mk" | |||
46 | .include "../../x11/libXinerama/buildlink3.mk" | 45 | .include "../../x11/libXinerama/buildlink3.mk" | |
47 | .include "../../x11/libXv/buildlink3.mk" | 46 | .include "../../x11/libXv/buildlink3.mk" | |
48 | .include "../../x11/xextproto/buildlink3.mk" | 47 | .include "../../x11/xextproto/buildlink3.mk" | |
49 | .include "../../mk/bsd.pkg.mk" | 48 | .include "../../mk/bsd.pkg.mk" |
@@ -1,26 +1,27 @@ | @@ -1,26 +1,27 @@ | |||
1 | # $NetBSD: Makefile.common,v 1.42 2007/11/22 20:20:21 drochner Exp $ | 1 | # $NetBSD: Makefile.common,v 1.43 2008/01/11 16:05:27 drochner Exp $ | |
2 | # | 2 | # | |
3 | 3 | |||
4 | DISTNAME= xine-lib-${XINE_LIB_VER} | 4 | DISTNAME= xine-lib-${XINE_LIB_VER} | |
5 | XINE_PKGNAME= xine-lib-${XINE_LIB_VER} | 5 | XINE_PKGNAME= xine-lib-${XINE_LIB_VER} | |
6 | PKGNAME?= ${XINE_PKGNAME} | 6 | PKGNAME?= ${XINE_PKGNAME} | |
7 | CATEGORIES?= multimedia | 7 | CATEGORIES?= multimedia | |
8 | MASTER_SITES= ${MASTER_SITE_SOURCEFORGE:=xine/} | 8 | MASTER_SITES= ${MASTER_SITE_SOURCEFORGE:=xine/} | |
9 | EXTRACT_SUFX= .tar.bz2 | |||
9 | 10 | |||
10 | MAINTAINER= pkgsrc-users@NetBSD.org | 11 | MAINTAINER= pkgsrc-users@NetBSD.org | |
11 | HOMEPAGE= http://xinehq.de/ | 12 | HOMEPAGE= http://xinehq.de/ | |
12 | 13 | |||
13 | XINE_LIB_VER= 1.1.8 | 14 | XINE_LIB_VER= 1.1.9 | |
14 | PLIST_SUBST+= XINE_LIB_VER=${XINE_LIB_VER:Q} | 15 | PLIST_SUBST+= XINE_LIB_VER=${XINE_LIB_VER:Q} | |
15 | 16 | |||
16 | DISTINFO_FILE= ${.CURDIR}/../../multimedia/xine-lib/distinfo | 17 | DISTINFO_FILE= ${.CURDIR}/../../multimedia/xine-lib/distinfo | |
17 | PATCHDIR= ${.CURDIR}/../../multimedia/xine-lib/patches | 18 | PATCHDIR= ${.CURDIR}/../../multimedia/xine-lib/patches | |
18 | 19 | |||
19 | GNU_CONFIGURE= YES | 20 | GNU_CONFIGURE= YES | |
20 | USE_PKGLOCALEDIR= YES | 21 | USE_PKGLOCALEDIR= YES | |
21 | USE_LIBTOOL= YES | 22 | USE_LIBTOOL= YES | |
22 | LIBTOOL_OVERRIDE= libtool libtool-nofpic | 23 | LIBTOOL_OVERRIDE= libtool libtool-nofpic | |
23 | PKGCONFIG_OVERRIDE= misc/libxine.pc.in | 24 | PKGCONFIG_OVERRIDE= misc/libxine.pc.in | |
24 | USE_TOOLS+= autoconf gmake msgfmt pkg-config | 25 | USE_TOOLS+= autoconf gmake msgfmt pkg-config | |
25 | 26 | |||
26 | CONFIGURE_ARGS+= --with-w32-path='${PREFIX}/lib/win32' | 27 | CONFIGURE_ARGS+= --with-w32-path='${PREFIX}/lib/win32' |
@@ -1,31 +1,35 @@ | @@ -1,31 +1,35 @@ | |||
1 | $NetBSD: distinfo,v 1.48 2007/11/22 20:20:21 drochner Exp $ | 1 | $NetBSD: distinfo,v 1.49 2008/01/11 16:05:27 drochner Exp $ | |
2 | 2 | |||
3 | SHA1 (xine-lib-1.1.8.tar.gz) = 869905908a831a959ae3c6962d6d3204dc53d39b | 3 | SHA1 (xine-lib-1.1.9.tar.bz2) = f9e36b6cc69f76fed3b95de8a29ef2255770aa33 | |
4 | RMD160 (xine-lib-1.1.8.tar.gz) = b4207e0d0373b68d8d3c3fb66a467953c0024732 | 4 | RMD160 (xine-lib-1.1.9.tar.bz2) = 179dc66d13f5f1dcdf134ac82ed71b905c7332e8 | |
5 | Size (xine-lib-1.1.8.tar.gz) = 8872132 bytes | 5 | Size (xine-lib-1.1.9.tar.bz2) = 7391259 bytes | |
6 | SHA1 (patch-aa) = e09d34a121080b03bc67b2d8a3ca27463b771acc | 6 | SHA1 (patch-aa) = e09d34a121080b03bc67b2d8a3ca27463b771acc | |
7 | SHA1 (patch-ab) = ef13b60c2bea54f354acf1b2d70c04594dac36c9 | 7 | SHA1 (patch-ab) = ef13b60c2bea54f354acf1b2d70c04594dac36c9 | |
8 | SHA1 (patch-ad) = 94aaac03f74c72a1ca753d1320aac07d1bb8a846 | 8 | SHA1 (patch-ad) = 94aaac03f74c72a1ca753d1320aac07d1bb8a846 | |
9 | SHA1 (patch-ae) = 78060d0d1a721642776a909ab3dfef6bd4441a33 | 9 | SHA1 (patch-ae) = 417d730034cc4dbf3103e07afb8432822084c64b | |
10 | SHA1 (patch-ag) = 8638939d400eb11fc01fd832b205366b906fc9ee | 10 | SHA1 (patch-ag) = fa2298e1214a4dbea36526aed27a6e506a069681 | |
11 | SHA1 (patch-ah) = ba408237d4a717cc91b5d06ede425048914a9a1f | 11 | SHA1 (patch-ah) = ba408237d4a717cc91b5d06ede425048914a9a1f | |
12 | SHA1 (patch-ai) = f0b33c1a36082445a86bcf71e07a6210aa21b7dc | 12 | SHA1 (patch-ai) = f0b33c1a36082445a86bcf71e07a6210aa21b7dc | |
13 | SHA1 (patch-aj) = 4215c3bc37cf636e563a509f9a391081ed8e773b | 13 | SHA1 (patch-aj) = 4215c3bc37cf636e563a509f9a391081ed8e773b | |
14 | SHA1 (patch-ak) = 744f59d1b9e40983f25bb532db1a5d4e92be6fbe | 14 | SHA1 (patch-ak) = 744f59d1b9e40983f25bb532db1a5d4e92be6fbe | |
15 | SHA1 (patch-al) = 9e3ad86a7d7f32e58de157fa37141138af10838e | 15 | SHA1 (patch-al) = 9e3ad86a7d7f32e58de157fa37141138af10838e | |
16 | SHA1 (patch-ao) = c4524c88bb4ce61b13e354d22aa0f7445ff0aa37 | 16 | SHA1 (patch-ao) = c4524c88bb4ce61b13e354d22aa0f7445ff0aa37 | |
17 | SHA1 (patch-ap) = 756db263fc805a75a0d6be5bdb10344a6fd9c2e9 | 17 | SHA1 (patch-ap) = e4801863b0d4625fe6db9e4c51218f55b90c6100 | |
18 | SHA1 (patch-aq) = f6efa28ab1b9a24b79c18c181a5d309db53172e4 | 18 | SHA1 (patch-aq) = f6efa28ab1b9a24b79c18c181a5d309db53172e4 | |
19 | SHA1 (patch-as) = a0a93a256589e87a66eef31494441aa1b200f834 | 19 | SHA1 (patch-as) = a0a93a256589e87a66eef31494441aa1b200f834 | |
20 | SHA1 (patch-av) = 40e9a44a506a0006b6761e8367c65239bd4856ee | 20 | SHA1 (patch-av) = 40e9a44a506a0006b6761e8367c65239bd4856ee | |
21 | SHA1 (patch-aw) = 78ab44197a6b9f85e4b272d522ce254de4d557dc | 21 | SHA1 (patch-aw) = 78ab44197a6b9f85e4b272d522ce254de4d557dc | |
22 | SHA1 (patch-bd) = 2f0f39512d185377cca1ebaf4e891d518a1c14d0 | 22 | SHA1 (patch-bd) = 2f0f39512d185377cca1ebaf4e891d518a1c14d0 | |
23 | SHA1 (patch-be) = e1a0856361c26d924ce12794e9f7eb0174857100 | 23 | SHA1 (patch-be) = e1a0856361c26d924ce12794e9f7eb0174857100 | |
24 | SHA1 (patch-bg) = 10eb076d087a40ac5f7920794ff7b34f2aa0495b | 24 | SHA1 (patch-bg) = 10eb076d087a40ac5f7920794ff7b34f2aa0495b | |
25 | SHA1 (patch-cb) = 08d9920022988d2764d941cfa8b1aa5602a0ec81 | 25 | SHA1 (patch-cb) = 08d9920022988d2764d941cfa8b1aa5602a0ec81 | |
26 | SHA1 (patch-cd) = a080c745d08ded46db7c1173fe55350c1eb9ff33 | 26 | SHA1 (patch-cd) = a080c745d08ded46db7c1173fe55350c1eb9ff33 | |
27 | SHA1 (patch-da) = f79701d7c036e78d760c12119d88fe3f0dd1762d | 27 | SHA1 (patch-da) = f79701d7c036e78d760c12119d88fe3f0dd1762d | |
28 | SHA1 (patch-db) = 3ad4ca6f43a379b251211477972cd6d34b1f821a | 28 | SHA1 (patch-db) = 3ad4ca6f43a379b251211477972cd6d34b1f821a | |
29 | SHA1 (patch-dc) = 11c4212029e67f22796e57706b42400a0dbcac3a | 29 | SHA1 (patch-dc) = 11c4212029e67f22796e57706b42400a0dbcac3a | |
30 | SHA1 (patch-eb) = b65e2c7c30fc04115d55da1ce1f6f65216ac1d23 | 30 | SHA1 (patch-eb) = b65e2c7c30fc04115d55da1ce1f6f65216ac1d23 | |
31 | SHA1 (patch-ee) = 49efc9d722f2141e88106d87414586ab80e4f5a9 | 31 | SHA1 (patch-ee) = 49efc9d722f2141e88106d87414586ab80e4f5a9 | |
32 | SHA1 (patch-fa) = a69fe09588596bfc3d74fad29e5a1aeeeead4dfd | |||
33 | SHA1 (patch-ga) = 3f987a5660e48e86d0edab3ab15436227282eed1 | |||
34 | SHA1 (patch-gb) = 8d104ac33a7f8dbd47ff4f132b4360788efa29b8 | |||
35 | SHA1 (patch-gc) = 876e9c319d8ff01c57267c90f3f1b8c55a3fb766 |
@@ -1,86 +1,86 @@ | @@ -1,86 +1,86 @@ | |||
1 | $NetBSD: patch-ae,v 1.4 2007/06/15 18:20:06 drochner Exp $ | 1 | $NetBSD: patch-ae,v 1.5 2008/01/11 16:05:27 drochner Exp $ | |
2 | 2 | |||
3 | --- src/input/input_vcd.c.orig 2007-04-05 00:18:00.000000000 +0200 | 3 | --- src/input/input_vcd.c.orig 2008-01-01 14:30:08.000000000 +0100 | |
4 | +++ src/input/input_vcd.c | 4 | +++ src/input/input_vcd.c | |
5 | @@ -32,6 +32,7 @@ | 5 | @@ -29,6 +29,7 @@ | |
6 | #include <errno.h> | 6 | #include <errno.h> | |
7 | #include <fcntl.h> | 7 | #include <fcntl.h> | |
8 | #include <sys/ioctl.h> | 8 | #include <sys/ioctl.h> | |
9 | +#include <sys/param.h> | 9 | +#include <sys/param.h> | |
10 | #include <string.h> | 10 | #include <string.h> | |
11 | #include <netinet/in.h> | 11 | #include <netinet/in.h> | |
12 | #ifdef HAVE_LINUX_CDROM_H | 12 | #ifdef HAVE_LINUX_CDROM_H | |
13 | @@ -95,7 +96,7 @@ typedef struct { | 13 | @@ -92,7 +93,7 @@ typedef struct { | |
14 | #if defined (__linux__) || defined(__sun) | 14 | #if defined (__linux__) || defined(__sun) | |
15 | struct cdrom_tochdr tochdr; | 15 | struct cdrom_tochdr tochdr; | |
16 | struct cdrom_tocentry tocent[100]; | 16 | struct cdrom_tocentry tocent[100]; | |
17 | -#elif defined (__FreeBSD__) | 17 | -#elif defined (__FreeBSD_kernel__) | |
18 | +#elif (defined(BSD) && BSD >= 199306) | 18 | +#elif (defined(BSD) && BSD >= 199306) | |
19 | struct ioc_toc_header tochdr; | 19 | struct ioc_toc_header tochdr; | |
20 | struct cd_toc_entry *tocent; | 20 | struct cd_toc_entry *tocent; | |
21 | off_t cur_sec; | 21 | off_t cur_sec; | |
22 | @@ -120,7 +121,7 @@ typedef struct { | 22 | @@ -117,7 +118,7 @@ typedef struct { | |
23 | 23 | |||
24 | int cur_track; | 24 | int cur_track; | |
25 | 25 | |||
26 | -#if defined (__linux__) || defined(__sun) || defined(__FreeBSD__) | 26 | -#if defined (__linux__) || defined(__sun) || defined (__FreeBSD_kernel__) | |
27 | +#if defined (__linux__) || defined(__sun) || (defined(BSD) && BSD >= 199306) | 27 | +#if defined (__linux__) || defined(__sun) || (defined(BSD) && BSD >= 199306) | |
28 | uint8_t cur_min, cur_sec, cur_frame; | 28 | uint8_t cur_min, cur_sec, cur_frame; | |
29 | #endif | 29 | #endif | |
30 | 30 | |||
31 | @@ -180,7 +181,7 @@ static int input_vcd_read_toc (vcd_input | 31 | @@ -177,7 +178,7 @@ static int input_vcd_read_toc (vcd_input | |
32 | 32 | |||
33 | return 0; | 33 | return 0; | |
34 | } | 34 | } | |
35 | -#elif defined (__FreeBSD__) | 35 | -#elif defined (__FreeBSD_kernel__) | |
36 | +#elif (defined(BSD) && BSD >= 199306) | 36 | +#elif (defined(BSD) && BSD >= 199306) | |
37 | static int input_vcd_read_toc (vcd_input_class_t *this, int fd) { | 37 | static int input_vcd_read_toc (vcd_input_class_t *this, int fd) { | |
38 | 38 | |||
39 | struct ioc_read_toc_entry te; | 39 | struct ioc_read_toc_entry te; | |
40 | @@ -396,7 +397,7 @@ static off_t vcd_plugin_read (input_plug | 40 | @@ -393,7 +394,7 @@ static off_t vcd_plugin_read (input_plug | |
41 | memcpy (buf, data.data, VCDSECTORSIZE); /* FIXME */ | 41 | memcpy (buf, data.data, VCDSECTORSIZE); /* FIXME */ | |
42 | return VCDSECTORSIZE; | 42 | return VCDSECTORSIZE; | |
43 | } | 43 | } | |
44 | -#elif defined (__FreeBSD__) | 44 | -#elif defined (__FreeBSD_kernel__) | |
45 | +#elif (defined(BSD) && BSD >= 199306) | 45 | +#elif (defined(BSD) && BSD >= 199306) | |
46 | static off_t vcd_plugin_read (input_plugin_t *this_gen, | 46 | static off_t vcd_plugin_read (input_plugin_t *this_gen, | |
47 | char *buf, off_t nlen) { | 47 | char *buf, off_t nlen) { | |
48 | vcd_input_plugin_t *this = (vcd_input_plugin_t *) this_gen; | 48 | vcd_input_plugin_t *this = (vcd_input_plugin_t *) this_gen; | |
49 | @@ -534,7 +535,7 @@ static buf_element_t *vcd_plugin_read_bl | 49 | @@ -531,7 +532,7 @@ static buf_element_t *vcd_plugin_read_bl | |
50 | memcpy (buf->mem, data.data, VCDSECTORSIZE); /* FIXME */ | 50 | memcpy (buf->mem, data.data, VCDSECTORSIZE); /* FIXME */ | |
51 | return buf; | 51 | return buf; | |
52 | } | 52 | } | |
53 | -#elif defined (__FreeBSD__) | 53 | -#elif defined (__FreeBSD_kernel__) | |
54 | +#elif (defined(BSD) && BSD >= 199306) | 54 | +#elif (defined(BSD) && BSD >= 199306) | |
55 | static buf_element_t *vcd_plugin_read_block (input_plugin_t *this_gen, | 55 | static buf_element_t *vcd_plugin_read_block (input_plugin_t *this_gen, | |
56 | fifo_buffer_t *fifo, off_t nlen) { | 56 | fifo_buffer_t *fifo, off_t nlen) { | |
57 | 57 | |||
58 | @@ -693,7 +694,7 @@ static off_t vcd_plugin_seek (input_plug | 58 | @@ -690,7 +691,7 @@ static off_t vcd_plugin_seek (input_plug | |
59 | 59 | |||
60 | return offset ; /* FIXME */ | 60 | return offset ; /* FIXME */ | |
61 | } | 61 | } | |
62 | -#elif defined (__FreeBSD__) | 62 | -#elif defined (__FreeBSD_kernel__) | |
63 | +#elif (defined(BSD) && BSD >= 199306) | 63 | +#elif (defined(BSD) && BSD >= 199306) | |
64 | static off_t vcd_plugin_seek (input_plugin_t *this_gen, | 64 | static off_t vcd_plugin_seek (input_plugin_t *this_gen, | |
65 | off_t offset, int origin) { | 65 | off_t offset, int origin) { | |
66 | 66 | |||
67 | @@ -767,7 +768,7 @@ static off_t vcd_plugin_get_length (inpu | 67 | @@ -764,7 +765,7 @@ static off_t vcd_plugin_get_length (inpu | |
68 | 68 | |||
69 | return (off_t) 0; | 69 | return (off_t) 0; | |
70 | } | 70 | } | |
71 | -#elif defined (__FreeBSD__) | 71 | -#elif defined (__FreeBSD_kernel__) | |
72 | +#elif (defined(BSD) && BSD >= 199306) | 72 | +#elif (defined(BSD) && BSD >= 199306) | |
73 | static off_t vcd_plugin_get_length (input_plugin_t *this_gen) { | 73 | static off_t vcd_plugin_get_length (input_plugin_t *this_gen) { | |
74 | vcd_input_plugin_t *this = (vcd_input_plugin_t *) this_gen; | 74 | vcd_input_plugin_t *this = (vcd_input_plugin_t *) this_gen; | |
75 | off_t len ; | 75 | off_t len ; | |
76 | @@ -862,6 +863,10 @@ static int vcd_plugin_open (input_plugin | 76 | @@ -859,6 +860,10 @@ static int vcd_plugin_open (input_plugin | |
77 | this->cur_min = this->cls->tocent[this->cur_track].cdte_addr.msf.minute; | 77 | this->cur_min = this->cls->tocent[this->cur_track].cdte_addr.msf.minute; | |
78 | this->cur_sec = this->cls->tocent[this->cur_track].cdte_addr.msf.second; | 78 | this->cur_sec = this->cls->tocent[this->cur_track].cdte_addr.msf.second; | |
79 | this->cur_frame = this->cls->tocent[this->cur_track].cdte_addr.msf.frame; | 79 | this->cur_frame = this->cls->tocent[this->cur_track].cdte_addr.msf.frame; | |
80 | +#elif defined(__NetBSD__) | 80 | +#elif defined(__NetBSD__) | |
81 | + this->cur_min = this->cls->tocent[this->cur_track+1 - this->cls->tochdr.starting_track].addr.msf.minute; | 81 | + this->cur_min = this->cls->tocent[this->cur_track+1 - this->cls->tochdr.starting_track].addr.msf.minute; | |
82 | + this->cur_sec = this->cls->tocent[this->cur_track+1 - this->cls->tochdr.starting_track].addr.msf.second; | 82 | + this->cur_sec = this->cls->tocent[this->cur_track+1 - this->cls->tochdr.starting_track].addr.msf.second; | |
83 | + this->cur_frame = this->cls->tocent[this->cur_track+1 - this->cls->tochdr.starting_track].addr.msf.frame; | 83 | + this->cur_frame = this->cls->tocent[this->cur_track+1 - this->cls->tochdr.starting_track].addr.msf.frame; | |
84 | #elif defined (__FreeBSD__) | 84 | #elif defined (__FreeBSD_kernel__) | |
85 | { | 85 | { | |
86 | int bsize = 2352; | 86 | int bsize = 2352; |
@@ -1,16 +1,16 @@ | @@ -1,16 +1,16 @@ | |||
1 | $NetBSD: patch-ag,v 1.17 2007/11/22 20:20:21 drochner Exp $ | 1 | $NetBSD: patch-ag,v 1.18 2008/01/11 16:05:27 drochner Exp $ | |
2 | 2 | |||
3 | --- configure.ac.orig 2007-08-25 15:27:01.000000000 +0200 | 3 | --- configure.ac.orig 2008-01-04 19:02:22.000000000 +0100 | |
4 | +++ configure.ac | 4 | +++ configure.ac | |
5 | @@ -98,7 +98,7 @@ dnl ------------------------------------ | 5 | @@ -98,7 +98,7 @@ dnl ------------------------------------ | |
6 | AC_CANONICAL_HOST | 6 | AC_CANONICAL_HOST | |
7 | AC_CANONICAL_BUILD | 7 | AC_CANONICAL_BUILD | |
8 | 8 | |||
9 | -test "$host" == "$build" && check_athlon=yes | 9 | -test "$host" == "$build" && check_athlon=yes | |
10 | +test "$host" = "$build" && check_athlon=yes | 10 | +test "$host" = "$build" && check_athlon=yes | |
11 | 11 | |||
12 | AC_CONFIG_HEADERS([include/configure.h]) | 12 | AC_CONFIG_HEADERS([include/configure.h]) | |
13 | 13 | |||
14 | @@ -555,6 +555,9 @@ AC_CHECK_LIB(socket, socket, NET_LIBS="- | 14 | @@ -555,6 +555,9 @@ AC_CHECK_LIB(socket, socket, NET_LIBS="- | |
15 | AC_CHECK_LIB(nsl, gethostbyname, NET_LIBS="-lnsl $NET_LIBS",) | 15 | AC_CHECK_LIB(nsl, gethostbyname, NET_LIBS="-lnsl $NET_LIBS",) | |
16 | AC_SUBST(NET_LIBS) | 16 | AC_SUBST(NET_LIBS) | |
@@ -94,27 +94,27 @@ $NetBSD: patch-ag,v 1.17 2007/11/22 20:2 | @@ -94,27 +94,27 @@ $NetBSD: patch-ag,v 1.17 2007/11/22 20:2 | |||
94 | - no_gnome_vfs=no, | 94 | - no_gnome_vfs=no, | |
95 | - no_gnome_vfs=yes) | 95 | - no_gnome_vfs=yes) | |
96 | +dnl PKG_CHECK_MODULES(GNOME_VFS, gnome-vfs-2.0, | 96 | +dnl PKG_CHECK_MODULES(GNOME_VFS, gnome-vfs-2.0, | |
97 | +dnl no_gnome_vfs=no, | 97 | +dnl no_gnome_vfs=no, | |
98 | +dnl no_gnome_vfs=yes) | 98 | +dnl no_gnome_vfs=yes) | |
99 | +no_gnome_vfs=yes | 99 | +no_gnome_vfs=yes | |
100 | AC_SUBST(GNOME_VFS_CFLAGS) | 100 | AC_SUBST(GNOME_VFS_CFLAGS) | |
101 | AC_SUBST(GNOME_VFS_LIBS) | 101 | AC_SUBST(GNOME_VFS_LIBS) | |
102 | if test "x$no_gnome_vfs" != "xyes"; then | 102 | if test "x$no_gnome_vfs" != "xyes"; then | |
103 | @@ -1885,7 +1902,7 @@ int has_timeout=sizeof(test.timeout);]]) | 103 | @@ -1885,7 +1902,7 @@ int has_timeout=sizeof(test.timeout);]]) | |
104 | AC_DEFINE([HAVE_WIN32_CDROM], [1], | 104 | AC_DEFINE([HAVE_WIN32_CDROM], [1], | |
105 | [Define 1 if you have MinGW CD-ROM support]) | 105 | [Define 1 if you have MinGW CD-ROM support]) | |
106 | ;; | 106 | ;; | |
107 | - freebsd4.*) | 107 | - freebsd4.*|kfreebsd*-gnu) | |
108 | + freebsd4.* | dragonfly*) | 108 | + freebsd4.*|kfreebsd*-gnu|dragonfly*) | |
109 | AC_DEFINE([HAVE_FREEBSD_CDROM], [1], | 109 | AC_DEFINE([HAVE_FREEBSD_CDROM], [1], | |
110 | [Define 1 if you have FreeBSD CD-ROM support]) | 110 | [Define 1 if you have FreeBSD CD-ROM support]) | |
111 | ;; | 111 | ;; | |
112 | @@ -2581,7 +2598,7 @@ case $host in | 112 | @@ -2591,7 +2608,7 @@ case $host in | |
113 | dnl FreeBSD (et al.) does not complete linking for shared objects when pthreads | 113 | dnl FreeBSD (et al.) does not complete linking for shared objects when pthreads | |
114 | dnl are requested, as different implementations are present; to avoid problems | 114 | dnl are requested, as different implementations are present; to avoid problems | |
115 | dnl use -Wl,-z,defs only for those platform not behaving this way. | 115 | dnl use -Wl,-z,defs only for those platform not behaving this way. | |
116 | - *-freebsd*) ;; | 116 | - *-freebsd*) ;; | |
117 | + *-freebsd* | *-netbsd*) ;; | 117 | + *-freebsd* | *-netbsd*) ;; | |
118 | *) | 118 | *) | |
119 | AC_TRY_LDFLAGS([-Wl,-z,defs], [NOUNDEF="-Wl,-z,defs"]) | 119 | AC_TRY_LDFLAGS([-Wl,-z,defs], [NOUNDEF="-Wl,-z,defs"]) | |
120 | ;; | 120 | ;; |
@@ -1,23 +1,23 @@ | @@ -1,23 +1,23 @@ | |||
1 | $NetBSD: patch-ap,v 1.6 2007/11/22 20:20:22 drochner Exp $ | 1 | $NetBSD: patch-ap,v 1.7 2008/01/11 16:05:27 drochner Exp $ | |
2 | 2 | |||
3 | --- src/dxr3/Makefile.am.orig 2007-08-19 01:36:45.000000000 +0200 | 3 | --- src/dxr3/Makefile.am.orig 2008-01-01 18:07:56.000000000 +0100 | |
4 | +++ src/dxr3/Makefile.am | 4 | +++ src/dxr3/Makefile.am | |
5 | @@ -16,6 +16,9 @@ endif | 5 | @@ -16,6 +16,9 @@ endif | |
6 | if HAVE_LIBRTE | 6 | if HAVE_LIBRTE | |
7 | link_rte = -lrte | 7 | link_rte = -lrte | |
8 | endif | 8 | endif | |
9 | +if HAVE_XINERAMA | 9 | +if HAVE_XINERAMA | |
10 | +link_xinerama = -lXinerama | 10 | +link_xinerama = -lXinerama | |
11 | +endif | 11 | +endif | |
12 | 12 | |||
13 | xineplug_LTLIBRARIES = $(dxr3_modules) | 13 | xineplug_LTLIBRARIES = $(dxr3_modules) | |
14 | 14 | |||
15 | @@ -42,7 +45,7 @@ xineplug_vo_out_dxr3_la_SOURCES = \ | 15 | @@ -42,7 +45,7 @@ xineplug_vo_out_dxr3_la_SOURCES = \ | |
16 | dxr3_scr.c \ | 16 | dxr3_scr.c \ | |
17 | video_out_dxr3.c | 17 | video_out_dxr3.c | |
18 | 18 | |||
19 | -xineplug_vo_out_dxr3_la_LIBADD = $(link_fame) $(link_rte) $(link_x_libs) $(XINE_LIB) $(LTLIBINTL) $(DYNAMIC_LD_LIBS) -lm | 19 | -xineplug_vo_out_dxr3_la_LIBADD = $(XINE_LIB) $(link_fame) $(link_rte) $(link_x_libs) $(LTLIBINTL) $(DYNAMIC_LD_LIBS) -lm | |
20 | +xineplug_vo_out_dxr3_la_LIBADD = $(link_fame) $(link_rte) $(link_xinerama) $(link_x_libs) $(XINE_LIB) $(LTLIBINTL) $(DYNAMIC_LD_LIBS) -lm | 20 | +xineplug_vo_out_dxr3_la_LIBADD = $(XINE_LIB) $(link_fame) $(link_rte) $(link_xinerama) $(link_x_libs) $(LTLIBINTL) $(DYNAMIC_LD_LIBS) -lm | |
21 | xineplug_vo_out_dxr3_la_CFLAGS = $(VISIBILITY_FLAG) $(AM_CFLAGS) | 21 | xineplug_vo_out_dxr3_la_CFLAGS = $(VISIBILITY_FLAG) $(AM_CFLAGS) | |
22 | xineplug_vo_out_dxr3_la_LDFLAGS = -avoid-version -module | 22 | xineplug_vo_out_dxr3_la_LDFLAGS = -avoid-version -module | |
23 | 23 |
$NetBSD: patch-fa,v 1.1 2008/01/11 16:05:27 drochner Exp $
--- m4/pthreads.m4.orig 2008-01-10 16:56:36.000000000 +0100
+++ m4/pthreads.m4
@@ -37,6 +37,9 @@ AC_DEFUN([CC_PTHREAD_FLAGS], [
esac
fi
+dnl compensate for pkgsrc pthread.bl3 smartness
+ PTHREAD_LIBS="${PTHREAD_LDFLAGS} ${PTHREAD_LIBS}"
+
AC_CACHE_CHECK([if $CC supports Pthread],
AS_TR_SH([cc_cv_pthreads]),
[ac_save_CFLAGS="$CFLAGS"
$NetBSD: patch-ga,v 1.1 2008/01/11 16:05:28 drochner Exp $
--- src/input/libreal/rmff.c.orig 2008-01-01 14:30:08.000000000 +0100
+++ src/input/libreal/rmff.c
@@ -35,9 +35,14 @@
* writes header data to a buffer
*/
-static void rmff_dump_fileheader(rmff_fileheader_t *fileheader, char *buffer) {
+static int rmff_dump_fileheader(rmff_fileheader_t *fileheader, uint8_t *buffer,
+int bufsize) {
+
+ if (!fileheader) return 0;
+
+ if (bufsize < RMFF_FILEHEADER_SIZE)
+ return -1;
- if (!fileheader) return;
fileheader->object_id=_X_BE_32(&fileheader->object_id);
fileheader->size=_X_BE_32(&fileheader->size);
fileheader->object_version=_X_BE_16(&fileheader->object_version);
@@ -53,11 +58,17 @@ static void rmff_dump_fileheader(rmff_fi
fileheader->file_version=_X_BE_32(&fileheader->file_version);
fileheader->num_headers=_X_BE_32(&fileheader->num_headers);
fileheader->object_id=_X_BE_32(&fileheader->object_id);
+
+ return RMFF_FILEHEADER_SIZE;
}
-static void rmff_dump_prop(rmff_prop_t *prop, char *buffer) {
+static int rmff_dump_prop(rmff_prop_t *prop, uint8_t *buffer, int bufsize) {
+
+ if (!prop) return 0;
+
+ if (bufsize < RMFF_PROPHEADER_SIZE)
+ return -1;
- if (!prop) return;
prop->object_id=_X_BE_32(&prop->object_id);
prop->size=_X_BE_32(&prop->size);
prop->object_version=_X_BE_16(&prop->object_version);
@@ -93,13 +104,20 @@ static void rmff_dump_prop(rmff_prop_t *
prop->num_streams=_X_BE_16(&prop->num_streams);
prop->flags=_X_BE_16(&prop->flags);
prop->object_id=_X_BE_32(&prop->object_id);
+
+ return RMFF_PROPHEADER_SIZE;
}
-static void rmff_dump_mdpr(rmff_mdpr_t *mdpr, char *buffer) {
+static int rmff_dump_mdpr(rmff_mdpr_t *mdpr, uint8_t *buffer, int bufsize) {
int s1, s2, s3;
- if (!mdpr) return;
+ if (!mdpr) return 0;
+
+ if (bufsize < RMFF_MDPRHEADER_SIZE + mdpr->type_specific_len +
+ mdpr->stream_name_size + mdpr->mime_type_size)
+ return -1;
+
mdpr->object_id=_X_BE_32(&mdpr->object_id);
mdpr->size=_X_BE_32(&mdpr->size);
mdpr->object_version=_X_BE_16(&mdpr->object_version);
@@ -141,13 +159,19 @@ static void rmff_dump_mdpr(rmff_mdpr_t *
mdpr->duration=_X_BE_32(&mdpr->duration);
mdpr->object_id=_X_BE_32(&mdpr->object_id);
+ return RMFF_MDPRHEADER_SIZE + s1 + s2 + s3;
}
-static void rmff_dump_cont(rmff_cont_t *cont, char *buffer) {
+static int rmff_dump_cont(rmff_cont_t *cont, uint8_t *buffer, int bufsize) {
int p;
- if (!cont) return;
+ if (!cont) return 0;
+
+ if (bufsize < RMFF_CONTHEADER_SIZE + cont->title_len + cont->author_len +
+ cont->copyright_len + cont->comment_len)
+ return -1;
+
cont->object_id=_X_BE_32(&cont->object_id);
cont->size=_X_BE_32(&cont->size);
cont->object_version=_X_BE_16(&cont->object_version);
@@ -181,11 +205,19 @@ static void rmff_dump_cont(rmff_cont_t *
cont->size=_X_BE_32(&cont->size);
cont->object_version=_X_BE_16(&cont->object_version);
cont->object_id=_X_BE_32(&cont->object_id);
+
+ return RMFF_CONTHEADER_SIZE + cont->title_len + cont->author_len +
+ cont->copyright_len + cont->comment_len;
}
-static void rmff_dump_dataheader(rmff_data_t *data, char *buffer) {
+static int rmff_dump_dataheader(rmff_data_t *data, uint8_t *buffer, int
+bufsize) {
+
+ if (!data) return 0;
+
+ if (bufsize < RMFF_DATAHEADER_SIZE)
+ return -1;
- if (!data) return;
data->object_id=_X_BE_32(&data->object_id);
data->size=_X_BE_32(&data->size);
data->object_version=_X_BE_16(&data->object_version);
@@ -201,31 +233,43 @@ static void rmff_dump_dataheader(rmff_da
data->size=_X_BE_32(&data->size);
data->object_version=_X_BE_16(&data->object_version);
data->object_id=_X_BE_32(&data->object_id);
+
+ return RMFF_DATAHEADER_SIZE;
}
-int rmff_dump_header(rmff_header_t *h, char *buffer, int max) {
+int rmff_dump_header(rmff_header_t *h, void *buf_gen, int max) {
+ uint8_t *buffer = buf_gen;
- int written=0;
+ int written=0, size;
rmff_mdpr_t **stream=h->streams;
- rmff_dump_fileheader(h->fileheader, &buffer[written]);
- written+=h->fileheader->size;
- rmff_dump_prop(h->prop, &buffer[written]);
- written+=h->prop->size;
- rmff_dump_cont(h->cont, &buffer[written]);
- written+=h->cont->size;
+ if ((size=rmff_dump_fileheader(h->fileheader, &buffer[written], max)) < 0)
+ return -1;
+ written+=size;
+ max -= size;
+ if ((size=rmff_dump_prop(h->prop, &buffer[written], max)) < 0)
+ return -1;
+ written+=size;
+ max -= size;
+ if ((size=rmff_dump_cont(h->cont, &buffer[written], max)) < 0)
+ return -1;
+ written+=size;
+ max -= size;
if (stream)
{
while(*stream)
{
- rmff_dump_mdpr(*stream, &buffer[written]);
- written+=(*stream)->size;
+ if ((size=rmff_dump_mdpr(*stream, &buffer[written], max)) < 0)
+ return -1;
+ written+=size;
+ max -= size;
stream++;
}
}
- rmff_dump_dataheader(h->data, &buffer[written]);
- written+=18;
+ if ((size=rmff_dump_dataheader(h->data, &buffer[written], max)) < 0)
+ return -1;
+ written+=size;
return written;
}
$NetBSD: patch-gb,v 1.1 2008/01/11 16:05:28 drochner Exp $
--- src/input/libreal/rmff.h.orig 2008-01-01 14:30:08.000000000 +0100
+++ src/input/libreal/rmff.h
@@ -39,6 +39,12 @@
#define RMFF_HEADER_SIZE 0x12
+#define RMFF_FILEHEADER_SIZE 18
+#define RMFF_PROPHEADER_SIZE 50
+#define RMFF_MDPRHEADER_SIZE 46
+#define RMFF_CONTHEADER_SIZE 18
+#define RMFF_DATAHEADER_SIZE 18
+
#define FOURCC_TAG( ch0, ch1, ch2, ch3 ) \
(((long)(unsigned char)(ch3) ) | \
( (long)(unsigned char)(ch2) << 8 ) | \
@@ -245,7 +251,7 @@ int rmff_get_header_size(rmff_header_t *
/*
* dumps the header <h> to <buffer>. <max> is the size of <buffer>
*/
-int rmff_dump_header(rmff_header_t *h, char *buffer, int max);
+int rmff_dump_header(rmff_header_t *h, void *buffer, int max);
/*
* dumps a packet header
$NetBSD: patch-gc,v 1.1 2008/01/11 16:05:28 drochner Exp $
--- src/input/librtsp/rtsp_session.c.orig 2008-01-01 14:30:08.000000000 +0100
+++ src/input/librtsp/rtsp_session.c
@@ -148,6 +148,11 @@ connect:
rtsp_session->header_left =
rtsp_session->header_len = rmff_dump_header(h,rtsp_session->header,HEADER_SIZE);
+ if (rtsp_session->header_len < 0) {
+ xprintf (stream->xine, XINE_VERBOSITY_LOG,
+ _("rtsp_session: rtsp server returned overly-large headers, session can not be established.\n"));
+ goto session_abort;
+ }
xine_buffer_copyin(rtsp_session->recv, 0, rtsp_session->header, rtsp_session->header_len);
rtsp_session->recv_size = rtsp_session->header_len;
@@ -157,6 +162,7 @@ connect:
{
xprintf(stream->xine, XINE_VERBOSITY_LOG,
_("rtsp_session: rtsp server type '%s' not supported yet. sorry.\n"), server);
+session_abort:
rtsp_close(rtsp_session->s);
free(server);
xine_buffer_free(rtsp_session->recv);