From patchwork Thu Oct 2 08:16:28 2014 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Patrick Georgi X-Patchwork-Id: 395849 Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@bilbo.ozlabs.org Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by ozlabs.org (Postfix) with ESMTP id 68DBC140188 for ; Thu, 2 Oct 2014 18:22:14 +1000 (EST) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1751544AbaJBIWL (ORCPT ); Thu, 2 Oct 2014 04:22:11 -0400 Received: from georgi-clan.de ([78.47.195.38]:44986 "EHLO georgi-clan.de" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1751526AbaJBIWI (ORCPT ); Thu, 2 Oct 2014 04:22:08 -0400 Received: from office.lan (drms-4d0def9c.pool.mediaWays.net [77.13.239.156]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-SHA256 (128/128 bits)) (No client certificate requested) (Authenticated sender: patrick) by georgi-clan.de (Postfix) with ESMTPSA id 1F5462214D9; Thu, 2 Oct 2014 10:16:31 +0200 (CEST) From: Patrick Georgi To: linux-tegra@vger.kernel.org Cc: Patrick Georgi Subject: [PATCH 5/5] data_layout: fail better on file access errors Date: Thu, 2 Oct 2014 10:16:28 +0200 Message-Id: <1412237788-20611-5-git-send-email-patrick@georgi-clan.de> X-Mailer: git-send-email 1.9.1 In-Reply-To: <1412237788-20611-1-git-send-email-patrick@georgi-clan.de> References: <1412237788-20611-1-git-send-email-patrick@georgi-clan.de> Sender: linux-tegra-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-tegra@vger.kernel.org fread could return only a partial result (eg. NVBOOT_CONFIG_TABLE_SIZE_MAX - 1 bytes), which right now would be accepted and only resolved by later code. Found-by: Coverity Scan Signed-off-by: Patrick Georgi --- src/data_layout.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/data_layout.c b/src/data_layout.c index db0a0f0..11a0761 100644 --- a/src/data_layout.c +++ b/src/data_layout.c @@ -1050,7 +1050,7 @@ int get_bct_size_from_image(build_image_context *context) if (!fp) return ENODATA; - if (!fread(buffer, 1, NVBOOT_CONFIG_TABLE_SIZE_MAX, fp)) { + if (fread(buffer, 1, NVBOOT_CONFIG_TABLE_SIZE_MAX, fp) != NVBOOT_CONFIG_TABLE_SIZE_MAX) { fclose(fp); return ENODATA; }