summaryrefslogtreecommitdiff
path: root/dev-libs/libutf8proc
diff options
context:
space:
mode:
Diffstat (limited to 'dev-libs/libutf8proc')
-rw-r--r--dev-libs/libutf8proc/Manifest8
-rw-r--r--dev-libs/libutf8proc/files/libutf8proc-1.3.1_p2-overrun.patch33
-rw-r--r--dev-libs/libutf8proc/libutf8proc-1.3.1_p2-r1.ebuild24
-rw-r--r--dev-libs/libutf8proc/libutf8proc-1.3.1_p3.ebuild24
-rw-r--r--dev-libs/libutf8proc/metadata.xml8
5 files changed, 97 insertions, 0 deletions
diff --git a/dev-libs/libutf8proc/Manifest b/dev-libs/libutf8proc/Manifest
new file mode 100644
index 000000000000..aee35d30b0a6
--- /dev/null
+++ b/dev-libs/libutf8proc/Manifest
@@ -0,0 +1,8 @@
+AUX libutf8proc-1.3.1_p2-overrun.patch 1358 BLAKE2B 4583a42923db3ad30cd407ee736b6758151e4060a2aed528a54a61ca012d0bf7113ec68994805039a725958ac5bdf15bb9b482d7ff0ab53af2188bea2d4c816e SHA512 e897917e6346f3a0c539d3e2a762a37fc553bda17c64327249835f6f64e981cd9e98c627ffc95e5b36bc54837254cbc43fe9192e7671308f18b7167f0d6cbf6b
+DIST libutf8proc-1.3.1-2-src.tar.gz 144983 BLAKE2B ee9fddecf3b7f0865a63e56e511c251e28a4adb3b9220f313735960fff16356acc0c1b6cf19dd13adb787119a09efe0c4c3f9fd4c34d09ccba0d24a19f01a3c5 SHA512 50db8b324c244061835af8e1fff6d116328e5d40dff62477fdb78ba40b07b85612d610cc616ba165d13d0d933379a2d9629167ec4cbe31120518ae3bbcba3cce
+DIST libutf8proc-1.3.1-3-src.tar.gz 144985 BLAKE2B 92f21863df1a65a552cefa526a02e460de6e92f510b385d9f65b619176ca6dd429fc3f4d16a1e27bab6547109bfd353dd8e7c5126ac71e8065e8a2928543834a SHA512 c371c7ad6814a362179e70e4cb39bfd64d44a276860116dea441797d8dfc6c3ae1c7f0a981134a71952d8c773845ddaa60eb5b98241eccea488bb59411f1c880
+DIST netsurf-buildsystem-1.5.tar.gz 38196 BLAKE2B 298ef39d45b98ae5ef57a22aed9f22bf96dfd6ad5475964c04451eaf28aca7f451b4906002c3e110ffcc951015169f02ffcd85f24e54b46c47b25e048115db1c SHA512 02d85e8f1d2101194a678f7ccf84051390953285a46951d7b327556f8df1a0c416620bd4c7a615e25de438d5d27cfffb69ec5d94eb8379a295dab4c85a96cae4
+DIST netsurf-buildsystem-1.6.tar.gz 38204 BLAKE2B 58ac4aa2676c019a69b53f5115c82b522aa7db7b2a039a36f227b06b1d031ddc1eed463b09bfd13aeabddc421b2de396b58f2f8f131c261d5633fcd7a85272de SHA512 65ecafb54fc79107cfdb0fbea6acd4cad1fc9f338dde2ed9a48de066e245b7804a16337769c7602c7ab96b0d7544970f533d8c4615913c09b5a9ca4b9386fb28
+EBUILD libutf8proc-1.3.1_p2-r1.ebuild 556 BLAKE2B 1009d675af19af1f876b1fbeb34aab259a96df9a49282ff7e27c3d0b0b56c81bdc94c32d637ee6c200a6a67f737b83a444f98f60139c0b187bc8430a254c8de7 SHA512 21984bb51d6f313321146870d03b9c9ac2b82b235ff29710efa62f86afc50dc18574867747546eab6bde16fe923737b356a4632a784ae2c73459661a53d13086
+EBUILD libutf8proc-1.3.1_p3.ebuild 581 BLAKE2B 1a92a09758f36de86465611afdc282b12ef3e2970cb40f4117ed0ac1eadc6b4fd4e78e15382d9d9279cb2fd57d881651a36a299b10eb97646f95f98936f719b0 SHA512 169645082503a0cb0a639e877efc0659cdddb781099df255670454728dad4bc3708f18ae94a815257b3d8dfb6a3aa7a950ae799f2223635810c643ba79aa41d2
+MISC metadata.xml 237 BLAKE2B f22c3926ba75c18fce7667217807f3710a315b12b1341622c949e7bc0056cd1cb403ea6c66d838675f3cb5dcd53d2fc4ec71425ec3f96aaffb94b70b73e99320 SHA512 ae2360aa6b1b00c67e0acea4935c02b64585b9a15e126fec9d5d99637021c542c0a495e5116205f3da287def46fa5b19cb1a7f3042c12c5f7a78d66d92fcb03f
diff --git a/dev-libs/libutf8proc/files/libutf8proc-1.3.1_p2-overrun.patch b/dev-libs/libutf8proc/files/libutf8proc-1.3.1_p2-overrun.patch
new file mode 100644
index 000000000000..8ce7f4cfbe98
--- /dev/null
+++ b/dev-libs/libutf8proc/files/libutf8proc-1.3.1_p2-overrun.patch
@@ -0,0 +1,33 @@
+--- libutf8proc-1.3.1-2/test/iterate.c
++++ libutf8proc-1.3.1-2/test/iterate.c
+@@ -13,11 +13,17 @@ static void testbytes(unsigned char *buf, int len, utf8proc_ssize_t retval, int
+ utf8proc_int32_t out[16];
+ utf8proc_ssize_t ret;
+
++ /* Make a copy to ensure that memory is left uninitialized after "len"
++ * bytes. This way, Valgrind can detect overreads.
++ */
++ unsigned char tmp[16];
++ memcpy(tmp, buf, len);
++
+ tests++;
+- if ((ret = utf8proc_iterate(buf, len, out)) != retval) {
++ if ((ret = utf8proc_iterate(tmp, len, out)) != retval) {
+ fprintf(stderr, "Failed (%d):", line);
+ for (int i = 0; i < len ; i++) {
+- fprintf(stderr, " 0x%02x", buf[i]);
++ fprintf(stderr, " 0x%02x", tmp[i]);
+ }
+ fprintf(stderr, " -> %zd\n", ret);
+ error++;
+--- libutf8proc-1.3.1-2/src/utf8proc.c
++++ libutf8proc-1.3.1-2/src/utf8proc.c
+@@ -128,7 +128,7 @@ UTF8PROC_DLLEXPORT utf8proc_ssize_t utf8proc_iterate(
+ if ((uc - 0xc2) > (0xf4-0xc2)) return UTF8PROC_ERROR_INVALIDUTF8;
+ if (uc < 0xe0) { // 2-byte sequence
+ // Must have valid continuation character
+- if (!utf_cont(*str)) return UTF8PROC_ERROR_INVALIDUTF8;
++ if (str >= end || !utf_cont(*str)) return UTF8PROC_ERROR_INVALIDUTF8;
+ *dst = ((uc & 0x1f)<<6) | (*str & 0x3f);
+ return 2;
+ }
diff --git a/dev-libs/libutf8proc/libutf8proc-1.3.1_p2-r1.ebuild b/dev-libs/libutf8proc/libutf8proc-1.3.1_p2-r1.ebuild
new file mode 100644
index 000000000000..944f03316eac
--- /dev/null
+++ b/dev-libs/libutf8proc/libutf8proc-1.3.1_p2-r1.ebuild
@@ -0,0 +1,24 @@
+# Copyright 1999-2018 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=5
+
+NETSURF_BUILDSYSTEM=buildsystem-1.5
+inherit netsurf
+
+DESCRIPTION="mapping tool for UTF-8 strings"
+HOMEPAGE="http://www.netsurf-browser.org/"
+SRC_URI="${NETSURF_BUILDSYSTEM_SRC_URI}
+ http://download.netsurf-browser.org/libs/releases/${P/_p/-}-src.tar.gz"
+
+LICENSE="MIT"
+SLOT="0/${PV}"
+KEYWORDS="~amd64 ~arm ~hppa ~ppc"
+IUSE=""
+
+RDEPEND=""
+DEPEND="${RDEPEND}"
+
+PATCHES=( "${FILESDIR}"/${PN}-1.3.1_p2-overrun.patch )
+
+S="${WORKDIR}/${P/_p/-}"
diff --git a/dev-libs/libutf8proc/libutf8proc-1.3.1_p3.ebuild b/dev-libs/libutf8proc/libutf8proc-1.3.1_p3.ebuild
new file mode 100644
index 000000000000..bb3c286ff9b6
--- /dev/null
+++ b/dev-libs/libutf8proc/libutf8proc-1.3.1_p3.ebuild
@@ -0,0 +1,24 @@
+# Copyright 1999-2018 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=5
+
+NETSURF_BUILDSYSTEM=buildsystem-1.6
+inherit netsurf
+
+DESCRIPTION="mapping tool for UTF-8 strings"
+HOMEPAGE="http://www.netsurf-browser.org/"
+SRC_URI="${NETSURF_BUILDSYSTEM_SRC_URI}
+ http://download.netsurf-browser.org/libs/releases/${P/_p/-}-src.tar.gz"
+
+LICENSE="MIT"
+SLOT="0/${PV}"
+KEYWORDS="~amd64 ~arm ~hppa ~ia64 ~ppc ~ppc64 ~sparc ~x86"
+IUSE=""
+
+RDEPEND=""
+DEPEND="${RDEPEND}"
+
+PATCHES=( "${FILESDIR}"/${PN}-1.3.1_p2-overrun.patch )
+
+S="${WORKDIR}/${P/_p/-}"
diff --git a/dev-libs/libutf8proc/metadata.xml b/dev-libs/libutf8proc/metadata.xml
new file mode 100644
index 000000000000..a535b8852829
--- /dev/null
+++ b/dev-libs/libutf8proc/metadata.xml
@@ -0,0 +1,8 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+<maintainer type="person">
+<email>xmw@gentoo.org</email>
+<name>Michael Weber</name>
+</maintainer>
+</pkgmetadata>