Blame SOURCES/jasper-1.900.1-CVE-2011-4516-CVE-2011-4517-CERT-VU-887409.patch

2c4e85
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
2c4e85
--- jasper-1.900.1/src/libjasper/jpc/jpc_cs.c.CERT-VU-887409	2011-10-25 17:25:39.000000000 +0200
2c4e85
+++ jasper-1.900.1/src/libjasper/jpc/jpc_cs.c	2011-10-25 17:29:14.379371908 +0200
2c4e85
@@ -744,6 +744,10 @@ static int jpc_cox_getcompparms(jpc_ms_t
2c4e85
 		return -1;
2c4e85
 	}
2c4e85
 	compparms->numrlvls = compparms->numdlvls + 1;
2c4e85
+	if (compparms->numrlvls > JPC_MAXRLVLS) {
2c4e85
+		jpc_cox_destroycompparms(compparms);
2c4e85
+		return -1;
2c4e85
+	}
2c4e85
 	if (prtflag) {
2c4e85
 		for (i = 0; i < compparms->numrlvls; ++i) {
2c4e85
 			if (jpc_getuint8(in, &tmp)) {
2c4e85
@@ -1331,7 +1335,7 @@ static int jpc_crg_getparms(jpc_ms_t *ms
2c4e85
 	jpc_crgcomp_t *comp;
2c4e85
 	uint_fast16_t compno;
2c4e85
 	crg->numcomps = cstate->numcomps;
2c4e85
-	if (!(crg->comps = jas_alloc2(cstate->numcomps, sizeof(uint_fast16_t)))) {
2c4e85
+	if (!(crg->comps = jas_alloc2(cstate->numcomps, sizeof(jpc_crgcomp_t)))) {
2c4e85
 		return -1;
2c4e85
 	}
2c4e85
 	for (compno = 0, comp = crg->comps; compno < cstate->numcomps;