Date: Sun, 9 Apr 2017 08:28:44 +0000 (UTC) From: Raphael Kubo da Costa <rakuco@FreeBSD.org> To: ports-committers@freebsd.org, svn-ports-all@freebsd.org, svn-ports-branches@freebsd.org Subject: svn commit: r438078 - branches/2017Q2/devel/qca/files Message-ID: <201704090828.v398Si6n029929@repo.freebsd.org>
next in thread | raw e-mail | index | archive | help
Author: rakuco Date: Sun Apr 9 08:28:44 2017 New Revision: 438078 URL: https://svnweb.freebsd.org/changeset/ports/438078 Log: MFH: r438068 Add upstream patch to fix the build on ARMv6. PR: 217371 Submitted by: mikael.urankar@gmail.com Approved by: ports-secteam (junovitch) Added: branches/2017Q2/devel/qca/files/patch-git_601fd3 - copied unchanged from r438068, head/devel/qca/files/patch-git_601fd3 Modified: Directory Properties: branches/2017Q2/ (props changed) Copied: branches/2017Q2/devel/qca/files/patch-git_601fd3 (from r438068, head/devel/qca/files/patch-git_601fd3) ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ branches/2017Q2/devel/qca/files/patch-git_601fd3 Sun Apr 9 08:28:44 2017 (r438078, copy of r438068, head/devel/qca/files/patch-git_601fd3) @@ -0,0 +1,39 @@ +From 601fd3a05141c614ae48a3ddac44194d669eaae1 Mon Sep 17 00:00:00 2001 +From: Rolf Eike Beer <eb@emlix.com> +Date: Mon, 27 Jun 2016 12:55:51 +0200 +Subject: fix base64 decoding on ARM + +This code was broken on ARM and other architectures where "char" is unsigned by +default. + +First, it breaks with newer compilers with errors like: + + .../src/qca_textfilter.cpp:314:2: error: narrowing conversion of '-1' from 'int' to 'char' inside { } [-Wnarrowing] + +Second, if the compiler would just allow this conversion then the unsigned char +would hold 255, which would not be sign extended when cast to an int later, so +all the checks "< 0" will never trigger, and so invalid input characters cannot +be detected. + +REVIEW:128295 +BUG:364495 +--- + src/qca_textfilter.cpp | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/src/qca_textfilter.cpp b/src/qca_textfilter.cpp +index 9889a24..3baf511 100644 +--- src/qca_textfilter.cpp ++++ src/qca_textfilter.cpp +@@ -293,7 +293,7 @@ static QByteArray b64decode(const QByteArray &s, bool *ok) + // 64 specifies eof + // everything else specifies data + +- static char tbl[] = ++ static signed char tbl[] = + { + -1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1, + -1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1, +-- +cgit v0.11.2 +
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201704090828.v398Si6n029929>