From: Sergei Trofimovich Date: Wed, 25 Mar 2020 19:46:02 +0000 (+0000) Subject: app-text/fbpdf: backport -Werror=format-security fix, bug #714736 X-Git-Url: http://git.tremily.us/?a=commitdiff_plain;h=c5ebe7c33f634a80a9137bdee9e856bc30e01509;p=gentoo.git app-text/fbpdf: backport -Werror=format-security fix, bug #714736 Reported-by: Toralf Förster Closes: https://bugs.gentoo.org/714736 Package-Manager: Portage-2.3.95, Repoman-2.3.21 Signed-off-by: Sergei Trofimovich --- diff --git a/app-text/fbpdf/fbpdf-0_p20190202.ebuild b/app-text/fbpdf/fbpdf-0_p20190202.ebuild index 029af2a8ece1..1ab615ca1074 100644 --- a/app-text/fbpdf/fbpdf-0_p20190202.ebuild +++ b/app-text/fbpdf/fbpdf-0_p20190202.ebuild @@ -1,4 +1,4 @@ -# Copyright 1999-2019 Gentoo Authors +# Copyright 1999-2020 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=6 @@ -34,6 +34,7 @@ S=${WORKDIR}/${P}-${COMMIT} PATCHES=( "${FILESDIR}"/${P}-use-pkg-config.patch + "${FILESDIR}"/${P}-printf.patch ) src_compile() { diff --git a/app-text/fbpdf/files/fbpdf-0_p20190202-printf.patch b/app-text/fbpdf/files/fbpdf-0_p20190202-printf.patch new file mode 100644 index 000000000000..31f9fbe2c8ab --- /dev/null +++ b/app-text/fbpdf/files/fbpdf-0_p20190202-printf.patch @@ -0,0 +1,38 @@ +https://bugs.gentoo.org/714736 + +From e89e36c01d09ca6aec03732e922e749257cac3f4 Mon Sep 17 00:00:00 2001 +From: Dmitry Bogatov +Date: Sun, 9 Feb 2020 00:47:09 -0500 +Subject: [PATCH] Avoid passing non-constant format string to printf + +gcc complains loudly on any code that uses anything but string literal +as format string to printf. Right now format string is "const char *" +and does not contain %-sequences, but should '%' appear in "usage" +string in future, bad things would happen. + +Since formatting functionality of "printf" is not used anyway, replacing +it with "puts" makes code both safer and easier to understand. +--- + fbpdf.c | 4 ++-- + 1 file changed, 2 insertions(+), 2 deletions(-) + +diff --git a/fbpdf.c b/fbpdf.c +index a58797f..65b654b 100644 +--- a/fbpdf.c ++++ b/fbpdf.c +@@ -351,13 +351,13 @@ static void mainloop(void) + } + + static char *usage = +- "usage: fbpdf [-r rotation] [-z zoom x10] [-p page] filename\n"; ++ "usage: fbpdf [-r rotation] [-z zoom x10] [-p page] filename"; + + int main(int argc, char *argv[]) + { + int i = 1; + if (argc < 2) { +- printf(usage); ++ puts(usage); + return 1; + } + strcpy(filename, argv[argc - 1]);