summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJohn N. Laliberte <allanonjl@gentoo.org>2006-07-20 14:23:51 +0000
committerJohn N. Laliberte <allanonjl@gentoo.org>2006-07-20 14:23:51 +0000
commit214237041017f51ac47d50da04a02dcb2a48b53e (patch)
tree5b8d8d3e6c000017f18621f34ec633441377ca65 /media-libs/libmms
parentStable on HPPA. (diff)
downloadhistorical-214237041017f51ac47d50da04a02dcb2a48b53e.tar.gz
historical-214237041017f51ac47d50da04a02dcb2a48b53e.tar.bz2
historical-214237041017f51ac47d50da04a02dcb2a48b53e.zip
apply patch to fix #139320
Package-Manager: portage-2.1.1_pre2-r6
Diffstat (limited to 'media-libs/libmms')
-rw-r--r--media-libs/libmms/ChangeLog8
-rw-r--r--media-libs/libmms/Manifest39
-rw-r--r--media-libs/libmms/files/digest-libmms-0.2-r13
-rw-r--r--media-libs/libmms/files/libmms_0.2-7-cumulative.diff144
-rw-r--r--media-libs/libmms/libmms-0.2-r1.ebuild43
5 files changed, 217 insertions, 20 deletions
diff --git a/media-libs/libmms/ChangeLog b/media-libs/libmms/ChangeLog
index d0640df5f741..dff18f4711ec 100644
--- a/media-libs/libmms/ChangeLog
+++ b/media-libs/libmms/ChangeLog
@@ -1,6 +1,12 @@
# ChangeLog for media-libs/libmms
# Copyright 1999-2006 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/media-libs/libmms/ChangeLog,v 1.4 2006/04/27 23:08:23 marienz Exp $
+# $Header: /var/cvsroot/gentoo-x86/media-libs/libmms/ChangeLog,v 1.5 2006/07/20 14:23:51 allanonjl Exp $
+
+*libmms-0.2-r1 (20 Jul 2006)
+
+ 20 Jul 2006; John N. Laliberte <allanonjl@gentoo.org>
+ +files/libmms_0.2-7-cumulative.diff, +libmms-0.2-r1.ebuild:
+ apply patch to fix #139320
27 Apr 2006; Marien Zwart <marienz@gentoo.org> files/digest-libmms-0.1,
Manifest:
diff --git a/media-libs/libmms/Manifest b/media-libs/libmms/Manifest
index ad1304dbe904..a904adfb1a0e 100644
--- a/media-libs/libmms/Manifest
+++ b/media-libs/libmms/Manifest
@@ -1,21 +1,26 @@
------BEGIN PGP SIGNED MESSAGE-----
-Hash: SHA1
-
-DIST libmms-0.1.tar.gz 317089 RMD160 69ad1ce1fac476fd9ef96f7e52168c64b3addc22 SHA256 69c57099a355d633e6aaa274441d381590b420a5736bcec4236a7b049bb8fefb size 317089
-DIST libmms-0.2.tar.gz 337792 RMD160 6622df753852c37cccd457c2f7dc242d6b39ce93 SHA256 68392f88a2c392b7e329eeda9b953c32fbb5a28b7ab9eb8f55a8b3bdd4570774 size 337792
-EBUILD libmms-0.1.ebuild 695 RMD160 28e409faada2f53e2da5e99e277bfdcc2a9054ad SHA1 0833b076484df4deac588e2704ce342472ff1f91 SHA256 7ee14a90a8759d2c0eaceb6caa7ecd80172129a27fe63c3ecc50fa1a644b5f02 size 695
+AUX libmms_0.2-7-cumulative.diff 5117 RMD160 3b793b2e28df2067c5609bce9d3272b9ad1373e1 SHA1 0b99e9724f9da123b23ac03112933636937f96ce SHA256 e0bb98f88791af9c5ab98fe03ab5655f7e142d98ceef80091394296f39f9fa70
+MD5 9df2f36e8dd650cea074002acb3ca6ee files/libmms_0.2-7-cumulative.diff 5117
+RMD160 3b793b2e28df2067c5609bce9d3272b9ad1373e1 files/libmms_0.2-7-cumulative.diff 5117
+SHA256 e0bb98f88791af9c5ab98fe03ab5655f7e142d98ceef80091394296f39f9fa70 files/libmms_0.2-7-cumulative.diff 5117
+DIST libmms-0.1.tar.gz 317089 RMD160 69ad1ce1fac476fd9ef96f7e52168c64b3addc22 SHA256 69c57099a355d633e6aaa274441d381590b420a5736bcec4236a7b049bb8fefb
+DIST libmms-0.2.tar.gz 337792 RMD160 6622df753852c37cccd457c2f7dc242d6b39ce93 SHA1 9a5934a82b3e741687089003fc17e782b534d2f2 SHA256 68392f88a2c392b7e329eeda9b953c32fbb5a28b7ab9eb8f55a8b3bdd4570774
+EBUILD libmms-0.1.ebuild 695 RMD160 28e409faada2f53e2da5e99e277bfdcc2a9054ad SHA1 0833b076484df4deac588e2704ce342472ff1f91 SHA256 7ee14a90a8759d2c0eaceb6caa7ecd80172129a27fe63c3ecc50fa1a644b5f02
MD5 2212cc14c348bdad98ef338b15f853a2 libmms-0.1.ebuild 695
RMD160 28e409faada2f53e2da5e99e277bfdcc2a9054ad libmms-0.1.ebuild 695
SHA256 7ee14a90a8759d2c0eaceb6caa7ecd80172129a27fe63c3ecc50fa1a644b5f02 libmms-0.1.ebuild 695
-EBUILD libmms-0.2.ebuild 691 RMD160 7d4004a2d2a3a65b8674b3eae1efa6d07559e519 SHA1 b5f1b3ff596d4fef781d057c990703d1f0d685ac SHA256 9eac5a2d496ec2bea9056e9ea0ca3bef0a801687210c41df29bdc57e946f3849 size 691
+EBUILD libmms-0.2-r1.ebuild 834 RMD160 124a6b4d9b21bdc6e680fcc91d6cd90b018a3e8a SHA1 b64eb2b109cc8b279eebb13b21efc4a7eabb4239 SHA256 65f82196d82029ae5d9d2d4c15a13d6793af0e39f9177f9c1c49cb2af10f08ef
+MD5 ceb68d14eeae2381d9bfdcda7c96c2bd libmms-0.2-r1.ebuild 834
+RMD160 124a6b4d9b21bdc6e680fcc91d6cd90b018a3e8a libmms-0.2-r1.ebuild 834
+SHA256 65f82196d82029ae5d9d2d4c15a13d6793af0e39f9177f9c1c49cb2af10f08ef libmms-0.2-r1.ebuild 834
+EBUILD libmms-0.2.ebuild 691 RMD160 7d4004a2d2a3a65b8674b3eae1efa6d07559e519 SHA1 b5f1b3ff596d4fef781d057c990703d1f0d685ac SHA256 9eac5a2d496ec2bea9056e9ea0ca3bef0a801687210c41df29bdc57e946f3849
MD5 cce4a4e54cf8b1d60c6705d07b5a857e libmms-0.2.ebuild 691
RMD160 7d4004a2d2a3a65b8674b3eae1efa6d07559e519 libmms-0.2.ebuild 691
SHA256 9eac5a2d496ec2bea9056e9ea0ca3bef0a801687210c41df29bdc57e946f3849 libmms-0.2.ebuild 691
-MISC ChangeLog 753 RMD160 ad15fa42a13eae17fc1edc8487cc9a8260d8dfa6 SHA1 d7c23bd05d6ac8d5e3ca59d7fa5fa3112a76b1a7 SHA256 7714a244abdeb3c865e059824778178c347f62a1d37561a62bef6626d18a9da3 size 753
-MD5 2949ff5ad8da607e5432aff7f1551747 ChangeLog 753
-RMD160 ad15fa42a13eae17fc1edc8487cc9a8260d8dfa6 ChangeLog 753
-SHA256 7714a244abdeb3c865e059824778178c347f62a1d37561a62bef6626d18a9da3 ChangeLog 753
-MISC metadata.xml 219 RMD160 3c14311697b915c6a273082bd7cba08447e6b45c SHA1 3223e703a0e171d71558a2b5db3e0f1aad1a32ba SHA256 afd40aa6637498b842ffcd2e01ac9afffab8ad2ab6b80ea0010d2ec1969a55c9 size 219
+MISC ChangeLog 933 RMD160 703c7cbc73d76004883744cf46ce30f9f30f6170 SHA1 49493c5882c1e63f83ace47e8c3cb810e0f765a7 SHA256 6a3c7d66be84827154999ad6c6201e4553649ce542e6bae65114f31994b45570
+MD5 a85a44f294993f390f75b280a625ac1c ChangeLog 933
+RMD160 703c7cbc73d76004883744cf46ce30f9f30f6170 ChangeLog 933
+SHA256 6a3c7d66be84827154999ad6c6201e4553649ce542e6bae65114f31994b45570 ChangeLog 933
+MISC metadata.xml 219 RMD160 3c14311697b915c6a273082bd7cba08447e6b45c SHA1 3223e703a0e171d71558a2b5db3e0f1aad1a32ba SHA256 afd40aa6637498b842ffcd2e01ac9afffab8ad2ab6b80ea0010d2ec1969a55c9
MD5 ee8187af1037122f09238b1622b8ed52 metadata.xml 219
RMD160 3c14311697b915c6a273082bd7cba08447e6b45c metadata.xml 219
SHA256 afd40aa6637498b842ffcd2e01ac9afffab8ad2ab6b80ea0010d2ec1969a55c9 metadata.xml 219
@@ -25,10 +30,6 @@ SHA256 a64068026d402a7ef8c8611ed13aff0f1139e705458369cbb2a4f697a578e8e4 files/di
MD5 ea71fd5a706a7837237ce138299cb95d files/digest-libmms-0.2 232
RMD160 0dc81fa915ef093fa72b4745a15faac4a80bf50a files/digest-libmms-0.2 232
SHA256 2623e64d0ad1a361be78a5254868093d06e33748bc0275c9f7a66216ee3178da files/digest-libmms-0.2 232
------BEGIN PGP SIGNATURE-----
-Version: GnuPG v1.4.3 (GNU/Linux)
-
-iD8DBQFEUU7uW78445TWHXcRArnaAJwPkII3OtVs2AxnbR2oxjg3t/njZQCeOvnu
-jD7PsGUDRf9U3TRQoW0G+Hw=
-=43+x
------END PGP SIGNATURE-----
+MD5 ea71fd5a706a7837237ce138299cb95d files/digest-libmms-0.2-r1 232
+RMD160 0dc81fa915ef093fa72b4745a15faac4a80bf50a files/digest-libmms-0.2-r1 232
+SHA256 2623e64d0ad1a361be78a5254868093d06e33748bc0275c9f7a66216ee3178da files/digest-libmms-0.2-r1 232
diff --git a/media-libs/libmms/files/digest-libmms-0.2-r1 b/media-libs/libmms/files/digest-libmms-0.2-r1
new file mode 100644
index 000000000000..a376980bc503
--- /dev/null
+++ b/media-libs/libmms/files/digest-libmms-0.2-r1
@@ -0,0 +1,3 @@
+MD5 7e7117f8a28b21ce11beb3d2816066ff libmms-0.2.tar.gz 337792
+RMD160 6622df753852c37cccd457c2f7dc242d6b39ce93 libmms-0.2.tar.gz 337792
+SHA256 68392f88a2c392b7e329eeda9b953c32fbb5a28b7ab9eb8f55a8b3bdd4570774 libmms-0.2.tar.gz 337792
diff --git a/media-libs/libmms/files/libmms_0.2-7-cumulative.diff b/media-libs/libmms/files/libmms_0.2-7-cumulative.diff
new file mode 100644
index 000000000000..63a4c13aefc1
--- /dev/null
+++ b/media-libs/libmms/files/libmms_0.2-7-cumulative.diff
@@ -0,0 +1,144 @@
+--- libmms-0.2.orig/src/mms.c
++++ libmms-0.2/src/mms.c
+@@ -144,7 +144,7 @@
+ int stream_types[ASF_MAX_NUM_STREAMS];
+ off_t start_packet_seq; /* for live streams != 0, need to keep it around */
+ int need_discont; /* whether we need to set start_packet_seq */
+- int asf_packet_len;
++ uint32_t asf_packet_len;
+ uint64_t file_len;
+ char guid[37];
+ uint32_t bitrates[ASF_MAX_NUM_STREAMS];
+@@ -477,7 +477,7 @@
+ }
+
+ static void string_utf16(iconv_t url_conv, char *dest, char *src, int len) {
+- memset(dest, 0, 1000);
++ memset(dest, 0, 2 * len);
+
+ if (url_conv == (iconv_t)-1) {
+ int i;
+@@ -503,7 +503,7 @@
+ static void string_utf16(int unused, char *dest, char *src, int len) {
+ int i;
+
+- memset (dest, 0, 1000);
++ memset (dest, 0, 2 * len);
+
+ for (i = 0; i < len; i++) {
+ dest[i * 2] = src[i];
+@@ -539,13 +539,17 @@
+ goto error;
+
+ header->packet_len = LE_32(this->buf + 8) + 4;
++ if (header->packet_len > BUF_SIZE - 12) {
++ header->packet_len = 0;
++ goto error;
++ }
+ lprintf("mms command\n");
+ packet_type = MMS_PACKET_COMMAND;
+ } else {
+ header->packet_seq = LE_32(this->buf);
+ header->packet_id_type = this->buf[4];
+ header->flags = this->buf[5];
+- header->packet_len = LE_16(this->buf + 6) - 8;
++ header->packet_len = (LE_16(this->buf + 6) - 8) & 0xffff;
+ if (header->packet_id_type == ASF_HEADER_PACKET_ID_TYPE) {
+ lprintf("asf header\n");
+ packet_type = MMS_PACKET_ASF_HEADER;
+@@ -674,6 +678,11 @@
+ break;
+ case MMS_PACKET_ASF_HEADER:
+ case MMS_PACKET_ASF_PACKET:
++ if (header.packet_len + this->asf_header_len > ASF_HEADER_LEN) {
++ lprintf( "***LOG:*** -- "
++ "libmms: asf packet too large\n");
++ return 0;
++ }
+ len = io_read(io, this->s,
+ this->asf_header + this->asf_header_len, header.packet_len);
+ if (len != header.packet_len) {
+@@ -720,6 +729,12 @@
+ case GUID_ASF_FILE_PROPERTIES:
+
+ this->asf_packet_len = LE_32(this->asf_header + i + 92 - 24);
++ if (this->asf_packet_len > BUF_SIZE) {
++ this->asf_packet_len = 0;
++ lprintf( "***LOG:*** -- "
++ "libmms: asf packet len too large\n");
++ break;
++ }
+ this->file_len = LE_64(this->asf_header + i + 40 - 24);
+ lprintf ("file object, packet length = %d (%d)\n",
+ this->asf_packet_len, LE_32(this->asf_header + i + 96 - 24));
+@@ -1420,8 +1435,20 @@
+
+ /* explicit padding with 0 */
+ lprintf("padding: %d bytes\n", this->asf_packet_len - header.packet_len);
+- memset(this->buf + header.packet_len, 0, this->asf_packet_len - header.packet_len);
+- this->buf_size = this->asf_packet_len;
++ {
++ char *base = (char *)(this->buf);
++ char *start = base + header.packet_len;
++ char *end = start + this->asf_packet_len - header.packet_len;
++ if ((start > base) && (start < (base+BUF_SIZE-1)) &&
++ (start < end) && (end < (base+BUF_SIZE-1))) {
++ memset(this->buf + header.packet_len, 0, this->asf_packet_len - header.packet_len);
++ }
++ if (this->asf_packet_len > BUF_SIZE) {
++ this->buf_size = BUF_SIZE;
++ } else {
++ this->buf_size = this->asf_packet_len;
++ }
++ }
+ }
+ break;
+ }
+--- libmms-0.2.orig/src/mmsh.c
++++ libmms-0.2/src/mmsh.c
+@@ -184,7 +184,7 @@
+ int num_stream_ids;
+ int stream_ids[ASF_MAX_NUM_STREAMS];
+ int stream_types[ASF_MAX_NUM_STREAMS];
+- int packet_length;
++ uint32_t packet_length;
+ int64_t file_length;
+ char guid[37];
+ uint32_t bitrates[ASF_MAX_NUM_STREAMS];
+@@ -604,6 +604,10 @@
+ case GUID_ASF_FILE_PROPERTIES:
+
+ this->packet_length = LE_32(this->asf_header + i + 92 - 24);
++ if (this->packet_length > CHUNK_SIZE) {
++ this->packet_length = 0;
++ break;
++ }
+ this->file_length = LE_64(this->asf_header + i + 40 - 24);
+ lprintf ("file object, packet length = %d (%d)\n",
+ this->packet_length, LE_32(this->asf_header + i + 96 - 24));
+@@ -1054,9 +1058,22 @@
+ this->chunk_length, this->packet_length);
+ return 0;
+ }
+- memset(this->buf + this->chunk_length, 0,
+- this->packet_length - this->chunk_length);
+- this->buf_size = this->packet_length;
++
++ {
++ char *base = (char *)(this->buf);
++ char *start = base + this->chunk_length;
++ char *end = start + this->packet_length - this->chunk_length;
++ if ((start > base) && (start < (base+CHUNK_SIZE-1)) &&
++ (start < end) && (end < (base+CHUNK_SIZE-1))) {
++ memset(start, 0,
++ this->packet_length - this->chunk_length);
++ }
++ if (this->packet_length > CHUNK_SIZE) {
++ this->buf_size = CHUNK_SIZE;
++ } else {
++ this->buf_size = this->packet_length;
++ }
++ }
+ return 1;
+ } else {
+ lprintf ("mmsh: read error, %d != %d\n", len, this->chunk_length);
diff --git a/media-libs/libmms/libmms-0.2-r1.ebuild b/media-libs/libmms/libmms-0.2-r1.ebuild
new file mode 100644
index 000000000000..c3c9c9967675
--- /dev/null
+++ b/media-libs/libmms/libmms-0.2-r1.ebuild
@@ -0,0 +1,43 @@
+# Copyright 1999-2006 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/media-libs/libmms/libmms-0.2-r1.ebuild,v 1.1 2006/07/20 14:23:51 allanonjl Exp $
+
+inherit eutils
+
+DESCRIPTION="Common library for accessing Microsoft Media Server (MMS) media streaming protocol"
+
+HOMEPAGE="http://libmms.sourceforge.net"
+SRC_URI="mirror://sourceforge/${PN}/${P}.tar.gz"
+LICENSE="LGPL-2.1"
+
+SLOT="0"
+KEYWORDS="~x86"
+IUSE=""
+
+RDEPEND=">=dev-libs/glib-2"
+
+DEPEND="${RDEPEND}
+ dev-util/pkgconfig"
+
+src_unpack() {
+ unpack "${A}"
+ cd "${S}"
+
+ # patch for bug #139320
+ epatch "${FILESDIR}"/${PN}_0.2-7-cumulative.diff
+}
+
+src_compile() {
+
+ econf || die
+ emake || die "emake failed"
+
+}
+
+src_install() {
+
+ make DESTDIR=${D} install || die
+
+ dodoc AUTHORS ChangeLog NEWS README* TODO
+
+}