mirror of
https://git.in.rschanz.org/ryan77627/guix.git
synced 2024-11-15 03:15:09 -05:00
32 lines
1.3 KiB
Diff
32 lines
1.3 KiB
Diff
|
Fix CVE-2011-4516 and CVE-2011-4517 (heap buffer overflow flaws lead to
|
||
|
arbitrary code execution).
|
||
|
|
||
|
Copied from Fedora.
|
||
|
|
||
|
http://pkgs.fedoraproject.org/cgit/rpms/jasper.git/tree/jasper-1.900.1-CVE-2011-4516-CVE-2011-4517-CERT-VU-887409.patch
|
||
|
https://bugzilla.redhat.com/show_bug.cgi?id=747726
|
||
|
|
||
|
diff -up jasper-1.900.1/src/libjasper/jpc/jpc_cs.c.CERT-VU-887409 jasper-1.900.1/src/libjasper/jpc/jpc_cs.c
|
||
|
--- jasper-1.900.1/src/libjasper/jpc/jpc_cs.c.CERT-VU-887409 2011-10-25 17:25:39.000000000 +0200
|
||
|
+++ jasper-1.900.1/src/libjasper/jpc/jpc_cs.c 2011-10-25 17:29:14.379371908 +0200
|
||
|
@@ -744,6 +744,10 @@ static int jpc_cox_getcompparms(jpc_ms_t
|
||
|
return -1;
|
||
|
}
|
||
|
compparms->numrlvls = compparms->numdlvls + 1;
|
||
|
+ if (compparms->numrlvls > JPC_MAXRLVLS) {
|
||
|
+ jpc_cox_destroycompparms(compparms);
|
||
|
+ return -1;
|
||
|
+ }
|
||
|
if (prtflag) {
|
||
|
for (i = 0; i < compparms->numrlvls; ++i) {
|
||
|
if (jpc_getuint8(in, &tmp)) {
|
||
|
@@ -1331,7 +1335,7 @@ static int jpc_crg_getparms(jpc_ms_t *ms
|
||
|
jpc_crgcomp_t *comp;
|
||
|
uint_fast16_t compno;
|
||
|
crg->numcomps = cstate->numcomps;
|
||
|
- if (!(crg->comps = jas_alloc2(cstate->numcomps, sizeof(uint_fast16_t)))) {
|
||
|
+ if (!(crg->comps = jas_alloc2(cstate->numcomps, sizeof(jpc_crgcomp_t)))) {
|
||
|
return -1;
|
||
|
}
|
||
|
for (compno = 0, comp = crg->comps; compno < cstate->numcomps;
|