Git-Url: http://git.frugalware.org/gitweb/gitweb.cgi?p=frugalware-1.9.git;a=commitdiff;h=51131376329cd2150d306d35eaf09eda456d5867
commit 51131376329cd2150d306d35eaf09eda456d5867 Author: kikadf <[email protected]> Date: Wed Apr 16 08:15:54 2014 +0200 jbigkit-2.0-3arcturus1-x86_64 * Fix CVE-2013-6369 diff --git a/source/lib-extra/jbigkit/CVE-2013-6369.patch b/source/lib-extra/jbigkit/CVE-2013-6369.patch new file mode 100644 index 0000000..8b46df6 --- /dev/null +++ b/source/lib-extra/jbigkit/CVE-2013-6369.patch @@ -0,0 +1,52 @@ +Description: CVE-2013-6369 +Patch by upstream + +--- jbigkit-2.0.orig/libjbig/jbig.c ++++ jbigkit-2.0/libjbig/jbig.c +@@ -1747,7 +1747,7 @@ void jbg_int2dppriv(unsigned char *dptab + #define FILL_TABLE1(offset, len, trans) \ + for (i = 0; i < len; i++) { \ + k = 0; \ +- for (j = 0; j < 8; j++) \ ++ for (j = 0; i >> j; j++) \ + k |= ((i >> j) & 1) << trans[j]; \ + dptable[(i + offset) >> 2] |= \ + (internal[k + offset] & 3) << ((3 - (i&3)) << 1); \ +@@ -1778,7 +1778,7 @@ void jbg_dppriv2int(char *internal, cons + #define FILL_TABLE2(offset, len, trans) \ + for (i = 0; i < len; i++) { \ + k = 0; \ +- for (j = 0; j < 8; j++) \ ++ for (j = 0; i >> j; j++) \ + k |= ((i >> j) & 1) << trans[j]; \ + internal[k + offset] = \ + (dptable[(i + offset) >> 2] >> ((3 - (i & 3)) << 1)) & 3; \ +@@ -2583,6 +2583,7 @@ int jbg_dec_in(struct jbg_dec_state *s, + unsigned long x, y; + unsigned long is[3], ie[3]; + size_t dummy_cnt; ++ unsigned char *dppriv; + + if (!cnt) cnt = &dummy_cnt; + *cnt = 0; +@@ -2720,13 +2721,16 @@ int jbg_dec_in(struct jbg_dec_state *s, + (s->options & (JBG_DPON | JBG_DPPRIV | JBG_DPLAST)) == + (JBG_DPON | JBG_DPPRIV)) { + assert(s->bie_len >= 20); ++ if (!s->dppriv || s->dppriv == jbg_dptable) ++ s->dppriv = (char *) checked_malloc(1728, sizeof(char)); + while (s->bie_len < 20 + 1728 && *cnt < len) +- s->buffer[s->bie_len++ - 20] = data[(*cnt)++]; ++ s->dppriv[s->bie_len++ - 20] = data[(*cnt)++]; + if (s->bie_len < 20 + 1728) + return JBG_EAGAIN; +- if (!s->dppriv || s->dppriv == jbg_dptable) +- s->dppriv = (char *) checked_malloc(1728, sizeof(char)); +- jbg_dppriv2int(s->dppriv, s->buffer); ++ dppriv = s->dppriv; ++ s->dppriv = (char *) checked_malloc(6912, sizeof(char)); ++ jbg_dppriv2int(s->dppriv, dppriv); ++ checked_free(dppriv); + } + + /* diff --git a/source/lib-extra/jbigkit/FrugalBuild b/source/lib-extra/jbigkit/FrugalBuild index 3295abd..fc35016 100644 --- a/source/lib-extra/jbigkit/FrugalBuild +++ b/source/lib-extra/jbigkit/FrugalBuild @@ -3,7 +3,7 @@ pkgname=jbigkit pkgver=2.0 -pkgrel=2 +pkgrel=3arcturus1 url="http://www.cl.cam.ac.uk/~mgk25/jbigkit/" pkgdesc="JBIG-KIT implements a highly effective data compression algorithm for bi-level high-resolution images such as fax pages or scanned documents." depends=('glibc') @@ -15,8 +15,15 @@ source=(http://www.cl.cam.ac.uk/~mgk25/download/${pkgname}-${pkgver}.tar.gz) sha1sums=('cfb7d3121f02a74bfb229217858a0d149b6589ef') _F_cd_path=${pkgname} +# FSA fix *** +source=(${source[@]} CVE-2013-6369.patch) +sha1sums=(${sha1sums[@]} 'a1ed6d68ea56ba0ada1a0eb4772619d4ca18ee12') +# *********** + + build() { Fsed '-O2 -W' "${CFLAGS}" Makefile + Fpatchall Fmake make test || Fdie Ffile ${_F_cd_path}/libjbig/libjbig.a /usr/lib/libjbig.a _______________________________________________ Frugalware-git mailing list [email protected] http://frugalware.org/mailman/listinfo/frugalware-git
