Git-Url: http://git.frugalware.org/gitweb/gitweb.cgi?p=frugalware-1.9.git;a=commitdiff;h=44b34a7266743111fe782d0cbd5550aa2df8d7b3
commit 44b34a7266743111fe782d0cbd5550aa2df8d7b3 Author: kikadf <[email protected]> Date: Thu Jan 16 10:32:04 2014 +0100 djvulibre-3.5.25.2-2arcturus1-x86_64 * Fix CVE-2012-6535 diff --git a/source/xlib/djvulibre/CVE-2012-6535.patch b/source/xlib/djvulibre/CVE-2012-6535.patch new file mode 100644 index 0000000..4b47b1b --- /dev/null +++ b/source/xlib/djvulibre/CVE-2012-6535.patch @@ -0,0 +1,50 @@ +diff -Naur djvulibre-3.5.23/libdjvu/GString.cpp djvulibre-3.5.23.new/libdjvu/GString.cpp +--- djvulibre-3.5.23/libdjvu/GString.cpp 2014-01-15 11:36:40.581803800 +0100 ++++ djvulibre-3.5.23.new/libdjvu/GString.cpp 2014-01-15 11:37:01.813018200 +0100 +@@ -1864,23 +1864,32 @@ + mbstate_t ps; + memset(&ps,0,sizeof(mbstate_t)); + for(const unsigned char *s=(const unsigned char *)data;(s<eptr)&& *s;) +- { +- const uint32_t w0=UTF8toUCS4(s,eptr); +- const unsigned char * const r0=r; +- r=UCS4toNative(w0,r,&ps); +- if(r == r0) + { +- if(escape == IS_ESCAPED) +- { +- sprintf((char *)r,"&#%lu;",(unsigned long)w0); +- r+=strlen((char *)r); +- } ++ const unsigned char * const s0 = s; ++ const uint32_t w0=UTF8toUCS4(s,eptr); ++ if (s == s0) ++ { ++ s += 1; ++ *r++ = '?'; ++ } + else +- { +- *r++ = '?'; +- } ++ { ++ const unsigned char * const r0 = r; ++ r=UCS4toNative(w0,r,&ps); ++ if(r == r0) ++ { ++ if (escape == IS_ESCAPED) ++ { ++ sprintf((char *)r,"&#%lu;",(unsigned long)w0); ++ r += strlen((char *)r); ++ } ++ else ++ { ++ *r++ = '?'; ++ } ++ } ++ } + } +- } + r[0]=0; + retval = NATIVE_CREATE( (const char *)buf ); + } else diff --git a/source/xlib/djvulibre/FrugalBuild b/source/xlib/djvulibre/FrugalBuild index e4e8d4f..36caedb 100644 --- a/source/xlib/djvulibre/FrugalBuild +++ b/source/xlib/djvulibre/FrugalBuild @@ -1,9 +1,11 @@ # Compiling Time: 0.20 SBU # Maintainer: Elentir <[email protected]> +options+=('asneeded') + pkgname=djvulibre pkgver=3.5.25.2 -pkgrel=1 +pkgrel=2arcturus1 pkgdesc="DjVu is a web-centric format for distributing documents and images." depends=('libtiff' 'libjpeg>=8a') rodepends=('xdg-utils') @@ -14,12 +16,18 @@ Finclude sourceforge url="http://djvulibre.djvuzone.org/" sha1sums=('27df54e897ab37328b2ae553608cf1409af6a7d1') +# FSA fix *** +source=(${source[@]} CVE-2012-6535.patch) +sha1sums=(${sha1sums[@]} 'b0d14c662b6d3ec5902c54e1ed5a78595b3ac23c') +# *********** + build() { Fcd $pkgname-3.5.25 unset MAKEFLAGS export CFLAGS="$CFLAGS" export CXXFLAGS="$CXXFLAGS" + Fpatchall Fconf \ --enable-threads \ --enable-desktopfiles \ _______________________________________________ Frugalware-git mailing list [email protected] http://frugalware.org/mailman/listinfo/frugalware-git
