From mboxrd@z Thu Jan 1 00:00:00 1970 X-Msuck: nntp://news.gmane.org/gmane.linux.lib.musl.general/11498 Path: news.gmane.org!.POSTED!not-for-mail From: Bartosz Brachaczek Newsgroups: gmane.linux.lib.musl.general Subject: [PATCH] fix iconv conversions for iso88592-iso885916 Date: Thu, 15 Jun 2017 23:30:48 +0200 Message-ID: <20170615213048.2566-1-b.brachaczek@gmail.com> Reply-To: musl@lists.openwall.com NNTP-Posting-Host: blaine.gmane.org X-Trace: blaine.gmane.org 1497562288 11166 195.159.176.226 (15 Jun 2017 21:31:28 GMT) X-Complaints-To: usenet@blaine.gmane.org NNTP-Posting-Date: Thu, 15 Jun 2017 21:31:28 +0000 (UTC) Cc: Bartosz Brachaczek To: musl@lists.openwall.com Original-X-From: musl-return-11511-gllmg-musl=m.gmane.org@lists.openwall.com Thu Jun 15 23:31:24 2017 Return-path: Envelope-to: gllmg-musl@m.gmane.org Original-Received: from mother.openwall.net ([195.42.179.200]) by blaine.gmane.org with smtp (Exim 4.84_2) (envelope-from ) id 1dLcMO-0002fH-5p for gllmg-musl@m.gmane.org; Thu, 15 Jun 2017 23:31:24 +0200 Original-Received: (qmail 10038 invoked by uid 550); 15 Jun 2017 21:31:25 -0000 Mailing-List: contact musl-help@lists.openwall.com; run by ezmlm Precedence: bulk List-Post: List-Help: List-Unsubscribe: List-Subscribe: List-ID: Original-Received: (qmail 10004 invoked from network); 15 Jun 2017 21:31:23 -0000 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=from:to:cc:subject:date:message-id; bh=Wj6fx+aqslWMyxFdchP3u5hjnJAZEUKxpQbTnGNEDRQ=; b=sdtvBQ941sZupYoZDU2VcWQIFndNAifz5L8CSE8BfjcbgqGL5tdzo0IR95WwsP9sBI F0xrGqcAk8gOgfd/cC8563LzfPrAhgS2Mn4dWFOi573qv/FVeYRX80AzIXU4437kiqbP xrcPFfNNxg550Bw2xg/6QGnkwC4diQMvoko0nIQNJt6fQ2yg7k8i76r9Mj14eWbGZRc4 kOirA3V2U9H1cWrMn5fIIxjlets5wYOA1FEKFYR9ksamWKAI86eAD4IeDLIfCE5vRtlp 4y/to166BeZBClaK0Et7OXDQzhz9PZR/EE6bU3hE1zUqFGXDQx/J/AtmZJ58lGCTgdt1 ukPA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id; bh=Wj6fx+aqslWMyxFdchP3u5hjnJAZEUKxpQbTnGNEDRQ=; b=CmfmE6VffK/o3Jf4sqRy+5Ni0tb0wib9C/j/49UsBZIv+UbyyjLX/Gg+rdPtbZ5UfA oEiS0HRIC92ztHnlRRQLa8h4xS+yM/vF3QF0DkIlNbwUI9UNEYnUFbG5FBokAauuU2H1 SsRm8sW5caLQ38ZSTyVK9I8ZqCqQrwccJ4JQ7IQKyroNiXRFWkFADPvLmRtmmHeAc+XI lvzLtGjZurR/wACWGSWt6jqRyE3YRncOFBQ+lEnt1lypOaTWyTMnqkFrE6rGQzdArzi/ 0KAgWghAM/7la/ArTFee3DQPXD70mfVHE5NZ1SsWm/IYJvTDEkySf542hn+VAhtW9YVz +EbQ== X-Gm-Message-State: AKS2vOz1Ka99xxtf/iEgXAC61exB7ZeTsx1CfMrY5PH+ZNbvpaBiozky 1ikO3Qs9Nnx3tbgNGAk= X-Received: by 10.28.196.2 with SMTP id u2mr5068136wmf.104.1497562271872; Thu, 15 Jun 2017 14:31:11 -0700 (PDT) X-Mailer: git-send-email 2.13.0 Xref: news.gmane.org gmane.linux.lib.musl.general:11498 Archived-At: commit 97bd6b09dbe7478d5a90a06ecd9e5b59389d8eb9 refactored the table lookup into a function and introduced an error in index computation. the error caused garbage to be read from the table if the given charmap had a non-zero number of elided entries. --- src/locale/iconv.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/locale/iconv.c b/src/locale/iconv.c index 4636307f..fd2f2e01 100644 --- a/src/locale/iconv.c +++ b/src/locale/iconv.c @@ -153,7 +153,7 @@ static void put_32(unsigned char *s, unsigned c, int e) static unsigned legacy_map(const unsigned char *map, unsigned c) { - unsigned x = c - 128 + map[-1]; + unsigned x = c - 128 - map[-1]; x = legacy_chars[ map[x*5/4]>>2*x%8 | map[x*5/4+1]<<8-2*x%8 & 1023 ]; return x ? x : c; -- 2.13.0