diff options
author | drochner <drochner> | 2007-01-09 14:49:33 +0000 |
---|---|---|
committer | drochner <drochner> | 2007-01-09 14:49:33 +0000 |
commit | 5bc66d9c74c69f9eb852b99f74ed174a092ba20e (patch) | |
tree | e8376a4d1a88b79c49c8d4b8b2bf34565c3a2283 /multimedia/mplayer-share/patches | |
parent | 030867f7671c5334f17013f46157f5aa511ee243 (diff) | |
download | pkgsrc-5bc66d9c74c69f9eb852b99f74ed174a092ba20e.tar.gz |
add limit check to real parser (identical to CVE-2006-6172)
from mplayer svn
bump PKGREVISIONs
Diffstat (limited to 'multimedia/mplayer-share/patches')
-rw-r--r-- | multimedia/mplayer-share/patches/patch-ba | 25 | ||||
-rw-r--r-- | multimedia/mplayer-share/patches/patch-bb | 13 | ||||
-rw-r--r-- | multimedia/mplayer-share/patches/patch-bc | 13 |
3 files changed, 51 insertions, 0 deletions
diff --git a/multimedia/mplayer-share/patches/patch-ba b/multimedia/mplayer-share/patches/patch-ba new file mode 100644 index 00000000000..d85cc740ae1 --- /dev/null +++ b/multimedia/mplayer-share/patches/patch-ba @@ -0,0 +1,25 @@ +$NetBSD: patch-ba,v 1.5 2007/01/09 14:49:33 drochner Exp $ + +--- stream/realrtsp/asmrp.c.orig 2006-10-23 00:32:25.000000000 +0200 ++++ stream/realrtsp/asmrp.c +@@ -40,6 +40,7 @@ + #include <stdlib.h> + #include <stdio.h> + #include <string.h> ++#include "asmrp.h" + + /* + #define LOG +@@ -645,8 +646,10 @@ static int asmrp_eval (asmrp_t *p, int * + #ifdef LOG + printf ("rule #%d is true\n", rule_num); + #endif +- matches[num_matches] = rule_num; +- num_matches++; ++ if(num_matches < MAX_RULEMATCHES - 1) ++ matches[num_matches++] = rule_num; ++ else ++ printf("Ignoring matched asm rule %d, too many matched rules.\n", rule_num); + } + + rule_num++; diff --git a/multimedia/mplayer-share/patches/patch-bb b/multimedia/mplayer-share/patches/patch-bb new file mode 100644 index 00000000000..6a03902e6c6 --- /dev/null +++ b/multimedia/mplayer-share/patches/patch-bb @@ -0,0 +1,13 @@ +$NetBSD: patch-bb,v 1.5 2007/01/09 14:49:33 drochner Exp $ + +--- stream/realrtsp/real.c.orig 2006-10-23 00:32:25.000000000 +0200 ++++ stream/realrtsp/real.c +@@ -271,7 +271,7 @@ static rmff_header_t *real_parse_sdp(cha + int j=0; + int n; + char b[64]; +- int rulematches[16]; ++ int rulematches[MAX_RULEMATCHES]; + + #ifdef LOG + printf("calling asmrp_match with:\n%s\n%u\n", desc->stream[i]->asm_rule_book, bandwidth); diff --git a/multimedia/mplayer-share/patches/patch-bc b/multimedia/mplayer-share/patches/patch-bc new file mode 100644 index 00000000000..330dbdfa0ec --- /dev/null +++ b/multimedia/mplayer-share/patches/patch-bc @@ -0,0 +1,13 @@ +$NetBSD: patch-bc,v 1.3 2007/01/09 14:49:33 drochner Exp $ + +--- stream/realrtsp/asmrp.h.orig 2006-10-23 00:32:25.000000000 +0200 ++++ stream/realrtsp/asmrp.h +@@ -40,6 +40,8 @@ + #ifndef HAVE_ASMRP_H + #define HAVE_ASMRP_H + ++#define MAX_RULEMATCHES 16 ++ + int asmrp_match (const char *rules, int bandwidth, int *matches) ; + + #endif |