diff options
-rw-r--r-- | textproc/icu/Makefile | 5 | ||||
-rw-r--r-- | textproc/icu/PLIST | 22 | ||||
-rw-r--r-- | textproc/icu/buildlink3.mk | 4 | ||||
-rw-r--r-- | textproc/icu/distinfo | 11 | ||||
-rw-r--r-- | textproc/icu/patches/patch-CVE-2014-7923+7926 | 85 | ||||
-rw-r--r-- | textproc/icu/patches/patch-tools-toolutil-pkg_genc.c | 21 |
6 files changed, 29 insertions, 119 deletions
diff --git a/textproc/icu/Makefile b/textproc/icu/Makefile index f556a202a26..59fdb5ebe01 100644 --- a/textproc/icu/Makefile +++ b/textproc/icu/Makefile @@ -1,8 +1,7 @@ -# $NetBSD: Makefile,v 1.96 2015/03/06 14:43:15 spz Exp $ +# $NetBSD: Makefile,v 1.97 2015/04/06 07:22:54 adam Exp $ -DISTNAME= icu4c-54_1-src +DISTNAME= icu4c-55_1-src PKGNAME= ${DISTNAME:S/4c//:S/-src//:S/_/./g} -PKGREVISION= 2 CATEGORIES= textproc MASTER_SITES= http://download.icu-project.org/files/icu4c/${PKGVERSION_NOREV}/ EXTRACT_SUFX= .tgz diff --git a/textproc/icu/PLIST b/textproc/icu/PLIST index 0189206ff62..18dd2bff3be 100644 --- a/textproc/icu/PLIST +++ b/textproc/icu/PLIST @@ -1,4 +1,4 @@ -@comment $NetBSD: PLIST,v 1.32 2014/10/07 16:09:53 adam Exp $ +@comment $NetBSD: PLIST,v 1.33 2015/04/06 07:22:54 adam Exp $ bin/derb bin/genbrk bin/gencfu @@ -94,7 +94,7 @@ include/unicode/reldatefmt.h include/unicode/rep.h include/unicode/resbund.h include/unicode/schriter.h -include/unicode/scientificformathelper.h +include/unicode/scientificnumberformatter.h include/unicode/search.h include/unicode/selfmt.h include/unicode/simpletz.h @@ -141,11 +141,13 @@ include/unicode/udateintervalformat.h include/unicode/udatpg.h include/unicode/udisplaycontext.h include/unicode/uenum.h +include/unicode/ufieldpositer.h include/unicode/uformattable.h include/unicode/ugender.h include/unicode/uidna.h include/unicode/uiter.h include/unicode/uldnames.h +include/unicode/ulistformatter.h include/unicode/uloc.h include/unicode/ulocdata.h include/unicode/umachine.h @@ -199,35 +201,35 @@ lib/icu/current lib/icu/pkgdata.inc lib/libicudata.a lib/libicudata.so -lib/libicudata.so.54 +lib/libicudata.so.55 lib/libicudata.so.${PKGVERSION} lib/libicui18n.a lib/libicui18n.so -lib/libicui18n.so.54 +lib/libicui18n.so.55 lib/libicui18n.so.${PKGVERSION} lib/libicuio.a lib/libicuio.so -lib/libicuio.so.54 +lib/libicuio.so.55 lib/libicuio.so.${PKGVERSION} lib/libicule.a lib/libicule.so -lib/libicule.so.54 +lib/libicule.so.55 lib/libicule.so.${PKGVERSION} lib/libiculx.a lib/libiculx.so -lib/libiculx.so.54 +lib/libiculx.so.55 lib/libiculx.so.${PKGVERSION} lib/libicutest.a lib/libicutest.so -lib/libicutest.so.54 +lib/libicutest.so.55 lib/libicutest.so.${PKGVERSION} lib/libicutu.a lib/libicutu.so -lib/libicutu.so.54 +lib/libicutu.so.55 lib/libicutu.so.${PKGVERSION} lib/libicuuc.a lib/libicuuc.so -lib/libicuuc.so.54 +lib/libicuuc.so.55 lib/libicuuc.so.${PKGVERSION} lib/pkgconfig/icu-i18n.pc lib/pkgconfig/icu-io.pc diff --git a/textproc/icu/buildlink3.mk b/textproc/icu/buildlink3.mk index ea7d052ced0..dfa3aa6c012 100644 --- a/textproc/icu/buildlink3.mk +++ b/textproc/icu/buildlink3.mk @@ -1,4 +1,4 @@ -# $NetBSD: buildlink3.mk,v 1.26 2014/10/07 16:47:14 adam Exp $ +# $NetBSD: buildlink3.mk,v 1.27 2015/04/06 07:22:54 adam Exp $ BUILDLINK_TREE+= icu @@ -6,7 +6,7 @@ BUILDLINK_TREE+= icu ICU_BUILDLINK3_MK:= BUILDLINK_API_DEPENDS.icu+= icu>=3.4 -BUILDLINK_ABI_DEPENDS.icu+= icu>=54.1nb1 +BUILDLINK_ABI_DEPENDS.icu+= icu>=55.1 BUILDLINK_PKGSRCDIR.icu?= ../../textproc/icu .endif # ICU_BUILDLINK3_MK diff --git a/textproc/icu/distinfo b/textproc/icu/distinfo index 78c7785927d..168f525431d 100644 --- a/textproc/icu/distinfo +++ b/textproc/icu/distinfo @@ -1,9 +1,8 @@ -$NetBSD: distinfo,v 1.52 2015/03/06 14:43:15 spz Exp $ +$NetBSD: distinfo,v 1.53 2015/04/06 07:22:54 adam Exp $ -SHA1 (icu4c-54_1-src.tgz) = 8c752490bbf31cea26e20246430cee67d48abe34 -RMD160 (icu4c-54_1-src.tgz) = b1440e1a3330b12336742c881863a8de6a6d2235 -Size (icu4c-54_1-src.tgz) = 25485678 bytes -SHA1 (patch-CVE-2014-7923+7926) = cb5e355c6e5b4860c581a9743706b800d56dadf2 +SHA1 (icu4c-55_1-src.tgz) = 3bb301c11be0e239c653e8aa2925c53f6f4dc88d +RMD160 (icu4c-55_1-src.tgz) = 94dcaaac13b41de3588b01f39febe1b1cbd5765d +Size (icu4c-55_1-src.tgz) = 25600847 bytes SHA1 (patch-aa) = fd5c513e75ca17a46be4ed010455bda63731afff SHA1 (patch-ab) = 32f0e4c241535e37e4cad9b871ed3d36b4184199 SHA1 (patch-ac) = e7cee161315321d2580074054d87714b55319886 @@ -19,4 +18,4 @@ SHA1 (patch-config_icu-config-bottom) = 168b89ee9180d4ae545125866ee91eb004010501 SHA1 (patch-config_mh-scoosr5) = 47703dcc184f58c0382da3225f849424ab74d472 SHA1 (patch-configure) = 2d17823ee06693ce382745ce345eca37001a0a7c SHA1 (patch-configure.ac) = ea7586eb8131ff53a483b5bd7ca162886e9045f1 -SHA1 (patch-tools-toolutil-pkg_genc.c) = a38dc7f38edd5a4c743f1f1927642b12864735fe +SHA1 (patch-tools-toolutil-pkg_genc.c) = b5a9eb679908d9f579ff095c5389ec1aa8df8e1e diff --git a/textproc/icu/patches/patch-CVE-2014-7923+7926 b/textproc/icu/patches/patch-CVE-2014-7923+7926 deleted file mode 100644 index 14729c2e6df..00000000000 --- a/textproc/icu/patches/patch-CVE-2014-7923+7926 +++ /dev/null @@ -1,85 +0,0 @@ -$NetBSD: patch-CVE-2014-7923+7926,v 1.1 2015/03/06 14:43:15 spz Exp $ - -patches for CVE-2014-7923 and CVE-2014-7926 from -https://chromium.googlesource.com/chromium/deps/icu52/+/6242e2fbb36f486f2c0addd1c3cef67fc4ed33fb - ---- i18n/regexcmp.cpp.orig 2014-10-03 16:10:36.000000000 +0000 -+++ i18n/regexcmp.cpp -@@ -2132,6 +2132,10 @@ void RegexCompile::handleCloseParen() { - int32_t patEnd = fRXPat->fCompiledPat->size() - 1; - int32_t minML = minMatchLength(fMatchOpenParen, patEnd); - int32_t maxML = maxMatchLength(fMatchOpenParen, patEnd); -+ if (URX_TYPE(maxML) != 0) { -+ error(U_REGEX_LOOK_BEHIND_LIMIT); -+ break; -+ } - if (maxML == INT32_MAX) { - error(U_REGEX_LOOK_BEHIND_LIMIT); - break; -@@ -2165,6 +2169,10 @@ void RegexCompile::handleCloseParen() { - int32_t patEnd = fRXPat->fCompiledPat->size() - 1; - int32_t minML = minMatchLength(fMatchOpenParen, patEnd); - int32_t maxML = maxMatchLength(fMatchOpenParen, patEnd); -+ if (URX_TYPE(maxML) != 0) { -+ error(U_REGEX_LOOK_BEHIND_LIMIT); -+ break; -+ } - if (maxML == INT32_MAX) { - error(U_REGEX_LOOK_BEHIND_LIMIT); - break; -@@ -2328,7 +2336,15 @@ UBool RegexCompile::compileInlineInterva - int32_t topOfBlock = blockTopLoc(FALSE); - if (fIntervalUpper == 0) { - // Pathological case. Attempt no matches, as if the block doesn't exist. -+ // Discard the generated code for the block. -+ // If the block included parens, discard the info pertaining to them as well. - fRXPat->fCompiledPat->setSize(topOfBlock); -+ if (fMatchOpenParen >= topOfBlock) { -+ fMatchOpenParen = -1; -+ } -+ if (fMatchCloseParen >= topOfBlock) { -+ fMatchCloseParen = -1; -+ } - return TRUE; - } - ---- i18n/regexcmp.h.orig 2014-10-03 16:10:36.000000000 +0000 -+++ i18n/regexcmp.h -@@ -187,7 +187,9 @@ private: - int32_t fMatchOpenParen; // The position in the compiled pattern - // of the slot reserved for a state save - // at the start of the most recently processed -- // parenthesized block. -+ // parenthesized block. Updated when processing -+ // a close to the location for the corresponding open. -+ - int32_t fMatchCloseParen; // The position in the pattern of the first - // location after the most recently processed - // parenthesized block. ---- test/testdata/regextst.txt.orig 2014-10-03 16:09:58.000000000 +0000 -+++ test/testdata/regextst.txt -@@ -1178,6 +1178,24 @@ - "(?<=a{1,})bc" E "aaaa<0>bc</0>def" # U_REGEX_LOOK_BEHIND_LIMIT error. - "(?<=(?:){11})bc" "<0>bc</0>" # Empty (?:) expression. - -+# Bug 11369 -+# Incorrect optimization of patterns with a zero length quantifier {0} -+ -+"(.|b)(|b){0}\$(?#xxx){3}(?>\D*)" "AAAAABBBBBCCCCCDDDDEEEEE" -+"(|b)ab(c)" "<0><1></1>ab<2>c</2></0>" -+"(|b){0}a{3}(D*)" "<0>aaa<2></2></0>" -+"(|b){0,1}a{3}(D*)" "<0><1></1>aaa<2></2></0>" -+"((|b){0})a{3}(D*)" "<0><1></1>aaa<3></3></0>" -+ -+# Bug 11370 -+# Max match length computation of look-behind expression gives result that is too big to fit in the -+# in the 24 bit operand portion of the compiled code. Expressions should fail to compile -+# (Look-behind match length must be bounded. This case is treated as unbounded, an error.) -+ -+"(?<!(0123456789a){10000000})x" E "no match" -+"(?<!\\ubeaf(\\ubeaf{11000}){11000})" E "no match" -+ -+ - # Bug 10835 - # Match Start Set not being correctly computed for case insensitive patterns. - # (Test here is to dump the compiled pattern & manually check the start set.) diff --git a/textproc/icu/patches/patch-tools-toolutil-pkg_genc.c b/textproc/icu/patches/patch-tools-toolutil-pkg_genc.c index d632d1dfde7..cb3ae317c11 100644 --- a/textproc/icu/patches/patch-tools-toolutil-pkg_genc.c +++ b/textproc/icu/patches/patch-tools-toolutil-pkg_genc.c @@ -1,21 +1,16 @@ -$NetBSD: patch-tools-toolutil-pkg_genc.c,v 1.1 2014/10/26 19:46:48 bsiegert Exp $ +$NetBSD: patch-tools-toolutil-pkg_genc.c,v 1.2 2015/04/06 07:22:54 adam Exp $ ---- tools/toolutil/pkg_genc.c.orig 2014-10-25 17:58:50.000000000 +0000 -+++ tools/toolutil/pkg_genc.c -@@ -125,13 +125,15 @@ static const struct AssemblyType { +Older assemblers for Darwin (like the one from Xcode 2.5) do not +have .balign, but they take .align 4 to mean 2^4 = 16 bytes. - ".long ","",HEX_0X - }, -+ // Older assemblers for Darwin (like the one from Xcode 2.5) do not -+ // have .balign, but they take .align 4 to mean 2^4 = 16 bytes. - {"gcc-darwin", - /*"\t.section __TEXT,__text,regular,pure_instructions\n" - "\t.section __TEXT,__picsymbolstub1,symbol_stubs,pure_instructions,32\n"*/ - ".globl _%s\n" +--- tools/toolutil/pkg_genc.c.orig 2015-03-27 21:10:56.000000000 +0000 ++++ tools/toolutil/pkg_genc.c +@@ -137,7 +137,7 @@ static const struct AssemblyType { + "#endif\n" "\t.data\n" "\t.const\n" - "\t.balign 16\n" + "\t.align 4\n" "_%s:\n\n", - + ".long ","",HEX_0X |