From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S941119AbcJ1IjW (ORCPT ); Fri, 28 Oct 2016 04:39:22 -0400 Received: from mout.web.de ([212.227.15.4]:65303 "EHLO mout.web.de" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S934317AbcJ1IjU (ORCPT ); Fri, 28 Oct 2016 04:39:20 -0400 Subject: [PATCH 08/10] scripts/basic/fixdep: Complete error handling in print_config() To: linux-kbuild@vger.kernel.org, Michal Marek References: <72e07814-56e9-505a-d660-91ff20b6efea@users.sourceforge.net> Cc: LKML , kernel-janitors@vger.kernel.org From: SF Markus Elfring Message-ID: <11b02385-965b-c9ca-c564-0df7757f8145@users.sourceforge.net> Date: Fri, 28 Oct 2016 10:39:11 +0200 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:45.0) Gecko/20100101 Thunderbird/45.4.0 MIME-Version: 1.0 In-Reply-To: <72e07814-56e9-505a-d660-91ff20b6efea@users.sourceforge.net> Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 7bit X-Provags-ID: V03:K0:xr2PaAX4vCl7CQZRJhFTpETA3ut9xNUzvK+LTVivjdncC8uzODX x2tTFi61ePSILgPCuBIPWayEvvkKzaz5cUdXUE0b4gPQUhkFSs93smaMdXFLOgDSvZU0154 m2qqyKpiGAXRHwGqgrZX7TkdPwBMxgpfC55lJWN3NBaW1y466o0m6H6ax2SnpyH3fKsGg+/ Jxs+C0Y10hRu24cXf2mYQ== X-UI-Out-Filterresults: notjunk:1;V01:K0:vFSYj5r7J0k=:Au7M5exSVH6ilpV6TwFfKJ jZi5pPs/AIpaWeZ0DpVUBY6HIJnfDh7sE+IiTZMHGAuiN8gaEzDYltGg06D70nk1WDddGWMpq uMvXj+V7dgZSpwpkgTn9CWpf1z4LzAZDcVlCTtzt8ji7NmPJrE/nrqBVupwL4cFsL/QdSj62C lqG37bjuDA/uz6jlaWpWFXb0f4XhPvayFVBYf06DgUoK1BmNakJbmSrZ+KEYR5rlmsrpPmCF0 1uOzGwx2RwQ9yjgpf6Sc0qQyzUALFRsXIf2RS7lyVpk7Cn6bu0xLAwmaZWvz5WguxZCpktMtt qS4Vnz33V1vRALgCCnnm8OIXoKbDTuiqDYOYye26Ag4P9iD+WSfP6/ClSEpPfRUtEg8dBw/Xp wQSNvK7jTRXytbcbuXdDcqiBdVRIkJTcf8mOOoVdPY5V/Z4cMF7wYUfWP2i2Y3mPak2k9sfKw Gd8G0HUyTbAMdfmql2xYlw/0+0MFt+DqdrkFCBgBL/HMD6kt3fRFF6w/zoodDMpmb6dlvDp8V why6otFSmO0O/eUM5QisQUdBFKV8Ylsjm0nk9hqsaRRuSbzZjY3oRjAymmoZ/7SIEunyN9JnW FL0myoezIzQyqa3OL5zp8gz34TfvTwr1g9gt1GWnO5YgMzvl6+Xtqp4RWbbbsEOOr900+nR7F KU59o+ngaSW6DQA4lbgLiEVsaYrGZJDR6hNVtvqRF1ztGYKJ11D6+WzwRF5utVbLuT6AAUv34 8bwJ6wQvXFIGDb3XHZDTSMC8hcb2TOOQR+lOFeUnbSIvj71q0wzrB1pd6ni5Ln9efpwFKBAtY Gvld+od Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org From: Markus Elfring Date: Thu, 27 Oct 2016 22:45:03 +0200 Return values were not checked from calls of the function "printf" and "putchar". This issue was detected also by using the Coccinelle software. * Add a bit of exception handling there. * Optimise this function implementation a bit by replacing two output calls with the functions "fputs" and "puts". Signed-off-by: Markus Elfring --- scripts/basic/fixdep.c | 16 +++++++++++++--- 1 file changed, 13 insertions(+), 3 deletions(-) diff --git a/scripts/basic/fixdep.c b/scripts/basic/fixdep.c index 2c4ec91..f5ff6eea 100644 --- a/scripts/basic/fixdep.c +++ b/scripts/basic/fixdep.c @@ -142,16 +142,26 @@ static void print_config(const char *m, int slen) { int c, i; - printf(" $(wildcard include/config/"); + if (fputs(" $(wildcard include/config/", stdout) < 0) + goto put_failure; for (i = 0; i < slen; i++) { c = m[i]; if (c == '_') c = '/'; else c = tolower(c); - putchar(c); + if (putchar(c) == EOF) + goto put_failure; + } + if (puts(".h) \\") < 0) { +put_failure: + { + int code = errno; + + perror("fixdep: print_config"); + exit(code); + } } - printf(".h) \\\n"); } static void do_extra_deps(void) -- 2.10.1