From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from list by lists.gnu.org with archive (Exim 4.90_1) id 1oLPIb-0000I9-C7 for mharc-grub-devel@gnu.org; Tue, 09 Aug 2022 09:29:33 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]:59856) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1oLPIY-0000Dw-Nq for grub-devel@gnu.org; Tue, 09 Aug 2022 09:29:30 -0400 Received: from mx0b-00069f02.pphosted.com ([205.220.177.32]:38670) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1oLPIV-00007m-JA for grub-devel@gnu.org; Tue, 09 Aug 2022 09:29:30 -0400 Received: from pps.filterd (m0246630.ppops.net [127.0.0.1]) by mx0b-00069f02.pphosted.com (8.17.1.5/8.17.1.5) with ESMTP id 279D4g7c015530 for ; Tue, 9 Aug 2022 13:29:22 GMT DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=oracle.com; h=from : to : cc : subject : date : message-id : content-transfer-encoding : content-type : mime-version; s=corp-2022-7-12; bh=8KDnTDo5MAIsOE2GQJ0b2xw+IBsw/7v5+Ezr6AhF3s0=; b=ndfE+080Z2dIOnBayloIyklEfaffPOQzk7EmQ9qWqm5mBnU0pnT94vB8hrdcrPnzda5U u4SgTxGk78n7XFNm42H6MAs48iPCo103mR5aPb5CyU6GSlF4LSQunnmnilZKPZuJVlZb iy9JbkflFel5ONcsmSdA+sD4gFKiJsvbXsMRQbkzGVy2J8EXOR1uiyTUDB/jX9kTMXx9 voINrJAgxnMWq8L6nq3wydTACNrFNRYcqCAA+iOMyJzjlxViSgJ3dqKDWf1HMbFnp/+E CAfaAV0jPBfk1QKmYbuMmXfgVbYsc+jQ4kiFrEuEHDA8CoLxeSdAZBQ88Xr44ulsfQVH VQ== Received: from phxpaimrmta01.imrmtpd1.prodappphxaev1.oraclevcn.com (phxpaimrmta01.appoci.oracle.com [138.1.114.2]) by mx0b-00069f02.pphosted.com (PPS) with ESMTPS id 3hseqcpcjp-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK) for ; Tue, 09 Aug 2022 13:29:21 +0000 Received: from pps.filterd (phxpaimrmta01.imrmtpd1.prodappphxaev1.oraclevcn.com [127.0.0.1]) by phxpaimrmta01.imrmtpd1.prodappphxaev1.oraclevcn.com (8.17.1.5/8.17.1.5) with ESMTP id 279Aj2KH038190 for ; Tue, 9 Aug 2022 13:29:21 GMT Received: from nam10-bn7-obe.outbound.protection.outlook.com (mail-bn7nam10lp2102.outbound.protection.outlook.com [104.47.70.102]) by phxpaimrmta01.imrmtpd1.prodappphxaev1.oraclevcn.com (PPS) with ESMTPS id 3hu0n3hp7v-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK) for ; Tue, 09 Aug 2022 13:29:20 +0000 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=O2osG0L4N1tlFB5Ii2hWl6NzwEw5LpQ8dn/REupMRGO7YOfVdXJxQyvbbh25Uvy4WuZUc8geBSoQxraQUt4A7ZuriaCCGn525RCU6dvy1DFpNyqCzxUiTelkd99ZC2uTMplYOrSVa6QcVg44Indw74rWPybBR0FCTY6sgDkJeZ1dKKmJhyb1rUCy83g5kFYn7Hfmfqy7MN1C73mMYMpnkAi/8CSzJFWG4BIVM0uj3uwTMjYyZaSWr8u0xEEXScE8y8JZIGqfRzIOBJB0Cx8ThN8MJL3zswlrAPlb8tHQC17PaFFSyHFx60uaKDf5NpylfoQleLTGht6sV/U7if1QoA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=8KDnTDo5MAIsOE2GQJ0b2xw+IBsw/7v5+Ezr6AhF3s0=; b=GZvcz/7OHKMlw/J71roXsfc2OXPvP3rn0nxIaUU152HX9qx4zu8S2pXwjcDNS5w9sAFvZ1aHduZ5BNmgvq2wvqtSy2dwo53q5mvH8S8Z3pr2R/iQQ5VgZ2L5Xc572mOtCp0WGh8QK4QWvdjhhnMRfpVZNVSLRG+Ye00T1lRv/IxTSLRWM+UBOm30Vki/UsvHCYBUp3swQBdc0LINrMEFHpMCsgzdqNd6T+O6VowP1Rw+s0CTpelcNslrnRVFAqTy+ozlXqlz5MagcMOWjfya3FWCQpZSigCc9K+7RyOZCBy7zeHj1JqjTlO350KLbxwoD4k1hVEl7uhSXgRx3odFQw== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=oracle.com; dmarc=pass action=none header.from=oracle.com; dkim=pass header.d=oracle.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=oracle.onmicrosoft.com; s=selector2-oracle-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=8KDnTDo5MAIsOE2GQJ0b2xw+IBsw/7v5+Ezr6AhF3s0=; b=tDi7B4XMP1nYACvT/+Jb2C0CC55OoL4iew9RefVoWDH69oZGtBqM32CtR/qqmbJ89bVH7+tXPCP+wS+352FHEI5sBIRqk2LMsYhGj6u2Gp4ViXGE8dPwvc5OCVkJhEJ9Vb0BLIHfs/risLxsO+JUaDiJ3TV4k9lUnOIxUzKa2js= Received: from BLAPR10MB5138.namprd10.prod.outlook.com (2603:10b6:208:322::8) by DM5PR1001MB2268.namprd10.prod.outlook.com (2603:10b6:4:2f::36) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.5504.14; Tue, 9 Aug 2022 13:29:15 +0000 Received: from BLAPR10MB5138.namprd10.prod.outlook.com ([fe80::89fe:338:779d:6bb0]) by BLAPR10MB5138.namprd10.prod.outlook.com ([fe80::89fe:338:779d:6bb0%8]) with mapi id 15.20.5504.021; Tue, 9 Aug 2022 13:29:15 +0000 From: Darren Kenny To: grub-devel@gnu.org Cc: daniel.kiper@oracle.com, darren.kenny@oracle.com Subject: [PATCH 0/2] util: Resolve issues with use of grub_util_mkdir Date: Tue, 9 Aug 2022 13:29:03 +0000 Message-Id: X-Mailer: git-send-email 2.31.1 Content-Transfer-Encoding: 8bit Content-Type: text/plain X-ClientProxiedBy: SN7PR04CA0221.namprd04.prod.outlook.com (2603:10b6:806:127::16) To BLAPR10MB5138.namprd10.prod.outlook.com (2603:10b6:208:322::8) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id: 6d770847-de26-49c7-8756-08da7a0b273d X-MS-TrafficTypeDiagnostic: DM5PR1001MB2268:EE_ X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: ENXrXqKkqvTMarZhPAYVqMgWssSwF8MAVbwJatJiHWT34C9xk5PdzXOJVtwBPZHGz+H89RLg2Ggn3glAYKr7AMxl29wIKvwJRd/nsKz4gVz7bPuqgolKtlfKydJNk5bX6WTA/3r0xhihtFK8ximIz244pEpTzMSBpKEaekqDoBdO69c0mQ3Uss5DeBC+zIcT0flTfP6wD1vEZLvHMFrOxPhZdIIBD3KtmMe+YCB9ClQ2jBu2Mr3b+ZKr1B7l8j/+3V8kefa6yOe4PXWo/Yq/bHNRoNbVlBx398n1/2Q8/Q3gBAIwJF4VQXP8wzb6tzS4fwE47rjKQuLCQ7Z25NwVAncqJnWPPtlm6Efh286oNxz6gXDkoUC/Rs4+OeWDTH4JdnTjMOM3h5tWnav+kHfurvxrh7+FRU5MDZcmqo6jY1zf6BpHPLKoDSx/XHUEenF/gTA0ivPbHgnoJVZK9P+iBjo5iGCmNgPOA6t8CeCNemDnX9NzI0NlQC6ajWRXLpKJ3/luVFvWv1AbvAbRhpWAnRXyI7KGmwUpJtDE7x3a8dMWEP5R3QKKCzYW5VKTqd23UoCO2t3G+2cpQdpLsNt07EqT2D0PsV4ROpjcHyuzH/0FbKhL4IPQXrKlrK3E7WJsfQXWx6/q1+HZgmN4cmQjkI6Q/egHrb/FlcRp9nN4AU5rpACDMzePjjvAvlKl2mKWRQsUFlWwH9qPQEqYJBCs4hIlV1dVAT57AuCPPhV6uEWrgZf+gIit0yTEI+wIwrxfJXmu0VPh4PAtwGjq/VaG+CLyyi3ox9Dl+aB8afosHJo= X-Forefront-Antispam-Report: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:BLAPR10MB5138.namprd10.prod.outlook.com; PTR:; CAT:NONE; SFS:(13230016)(346002)(136003)(396003)(366004)(39860400002)(376002)(52116002)(41300700001)(186003)(6666004)(6506007)(6512007)(107886003)(26005)(2616005)(316002)(66556008)(6916009)(86362001)(66476007)(8676002)(478600001)(4326008)(2906002)(38350700002)(66946007)(83380400001)(6486002)(36756003)(8936002)(44832011)(38100700002)(5660300002); DIR:OUT; SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?us-ascii?Q?JhjYlv4IWLQL7yGZWN/MoGE6lWO5cQl3v1UwQt2AoJPAs55+SvbbRRjYQze9?= =?us-ascii?Q?ItiA/1SBmgMdi4V7gx2UOQROXNUnI60OPMXyEaigR0jTas21Utk5+MdiK5xJ?= =?us-ascii?Q?rjMpK+S++yVPOvMMty7HGMTAxxiKtxnUsGRWtixoD18wxQG2eutZbV3Bdm84?= =?us-ascii?Q?O7PGVCHN684PnAiOvGyQE+lB0cz/COJIdl/DlA9BIsMa+y+sAHQcZB5eO79Q?= =?us-ascii?Q?1m0016JVgSmUyxWI4poYnor3pz8zw5tRwCDGeY9/PMQKqX33BZQaYoXz9+K9?= =?us-ascii?Q?j0tmLw6Cq0bxAdK6u+6JOiDQ5MnwZ627HvmdOwKwcQFN3E6iqkrTZ3YmbIJV?= =?us-ascii?Q?3wam1cC2DZrYXRt+5cSnjLxYyD0x7Z/uxUf26eidRvyxBe047xa6MURwiMx4?= =?us-ascii?Q?JqcBdzotGeZq86R6F1ZywjNeFN/D/qKFXbluQ1xF9zOXHjnlLQbpK9Q4KW4c?= =?us-ascii?Q?LfBTEIwThq8YkgrZQjlw0ed09/TWNYGPyRMtXm5lZEDDYq/ZX3INQNyhkoba?= =?us-ascii?Q?LUvVSJ2cZv3bpoKVfXW5Wi515NOU8XwDweCpQThM4AYpchAppkwcHCfUXz37?= =?us-ascii?Q?y4ZSxQdMknhNzl/idejzGFaL20i1xIqamqhuaS7Le+LQO2xE7vfFlA3szGGG?= =?us-ascii?Q?ek/WwsGo2ilFjbJpwUe8ksegSUeMj4FzmXOI398hwKI/TIQpGvuHHhchsFNv?= =?us-ascii?Q?TeUqKr+P0UoNVrKySIbZnnAnjnMM5Bw0qkiKFC1IseYrB+WHeNp9d+I+OvzM?= =?us-ascii?Q?V+G1XdEvt4ILGUrHQLB0fNO6ft5JnymtbNtc9flSr+dGNtNAaJG18OZNPjiK?= =?us-ascii?Q?d8L6xU35tFg/mQxf4D2dhl4/rJzlS04ws2mTHf5X5c6S4kNMOrQVlcpTyt62?= =?us-ascii?Q?V1Cyy+4COZppbcml6mtCzGFyI/RGsC1qUxHnyyWY8z7awVBFiDosusK/Db+r?= =?us-ascii?Q?GDdf2Y4lGYg2YWOW6oibRxQLkzqXMMhS2h9+2+mqMLNIq1WZbcpCAGO+y84r?= =?us-ascii?Q?4FJqGRLLeKBB+osksn6PMw6g+6nwadjlwqQtmaX7MYfrDhCHJuOlGdT0Ritt?= =?us-ascii?Q?QrAGoJh8IoemiP6O65VghyYXUkC1atm+bN46Q/kiCzY/7+HhgV70cbAzeTju?= =?us-ascii?Q?ZaryT5hJ4y2ys8mTAOuJplCef+QDMtqtyOa05sHGFdsc8Ccru7WczVYgQVre?= =?us-ascii?Q?rkjnBJ8kE1pO8ocrgez6jizutoe+6AX83WvLwyqgfQ5WMksfFF7fnK+1z83A?= =?us-ascii?Q?lOkLAc8prisXKHKDnQAvXrp8QYMpY4zOUEBzwdvmdCHilHL4Qzd5nb2myRvR?= =?us-ascii?Q?w4mJ7Me6fMPvY6EEjNxWccYkxzzgUwKprqI9hkrycQtn0PyRaZxd2TdV6CE+?= =?us-ascii?Q?Yn3/OV+8KLzlMpsoN6rV9IVgEpQF+i1wCRuMFsxeXj6XQzKxHV9Cd8Y7+WiY?= =?us-ascii?Q?NwCB3C6wO+KhWAa1kRPSc/zeVLueWcbrCqPDaE+HXu5PLO67ek7VWKiz9IU+?= =?us-ascii?Q?3iKk7RUBTKYy/lVeFnSzoJ6pudxtQKZ291q+wp+A4/8NCFB6acfFW2w5ILjq?= =?us-ascii?Q?ujz2hPhBMezfQV5M4Cok/lL0E0XVjZ1EPgpIcrro4M9TPhow3k1fzuoBOvRk?= =?us-ascii?Q?Jw=3D=3D?= X-OriginatorOrg: oracle.com X-MS-Exchange-CrossTenant-Network-Message-Id: 6d770847-de26-49c7-8756-08da7a0b273d X-MS-Exchange-CrossTenant-AuthSource: BLAPR10MB5138.namprd10.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 09 Aug 2022 13:29:14.9793 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 4e2c6054-71cb-48f1-bd6c-3a9705aca71b X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: 71t8DSdV+T5fjAIBFUuUOsZ1laVt9HXNGJ+QIbQOQ2DJIcBlKAxn0mFXG96jFyokdPIvGveOiz6MJzKB5IAcqQ== X-MS-Exchange-Transport-CrossTenantHeadersStamped: DM5PR1001MB2268 X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.205,Aquarius:18.0.883,Hydra:6.0.517,FMLib:17.11.122.1 definitions=2022-08-09_03,2022-08-09_02,2022-06-22_01 X-Proofpoint-Spam-Details: rule=notspam policy=default score=0 spamscore=0 mlxlogscore=592 phishscore=0 malwarescore=0 suspectscore=0 adultscore=0 bulkscore=0 mlxscore=0 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.12.0-2206140000 definitions=main-2208090058 X-Proofpoint-ORIG-GUID: -jSNg5SCOn-d-wFtXrOxPiyt5usfxoan X-Proofpoint-GUID: -jSNg5SCOn-d-wFtXrOxPiyt5usfxoan Received-SPF: pass client-ip=205.220.177.32; envelope-from=darren.kenny@oracle.com; helo=mx0b-00069f02.pphosted.com X-Spam_score_int: -27 X-Spam_score: -2.8 X-Spam_bar: -- X-Spam_report: (-2.8 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_LOW=-0.7, RCVD_IN_MSPIKE_H2=-0.001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001, T_SCC_BODY_TEXT_LINE=-0.01 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: grub-devel@gnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: The development of GNU GRUB List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 09 Aug 2022 13:29:30 -0000 Coverity flagged some issues where grub_util_mkdir() was being called but the return value was not being checked. After examining the implementation, on UNIX and ACROS, grub_util_mkdir() is a macro that maps to libc's mkdir(), which returns an int. But on MS Windows, grub_util_mkdir() is a function with a void return, and which in turn eventually maps to the MS API CreateDirectory() call. After discussing with Daniel, it was felt that fixing this by reimplementing the Windows code for grub_util_mkdir() to return something like the libc equivalents. This and then testing the return values on each call to grub_util_mkdir() in the util code is of little benefit when the main usage is to populate a temporary directory that was created earlier in the code of grub-mkrescue, which should never fail. The solution presented in patch 1, to resolve Coverity's concerns is to cast the return value of the mkdir() command to void in the macro for grub_util_mkdir(). The other use-case is in the grub_util_mkdir_p() function that creates a directory tree, as the UNIX command mkdir -p does. This code should at least try confirm that it is successfully creating the parent directories before it continues to the sub-directories. This is done by using grub_util_is_directory() to ensure that the directory exists, and if it doesn't then to call grub_util_error() with some information and exit. In fixing this, it was discovered that grub_util_mkdir() was incorrectly being called with an empty directory name (""), which was due to an error in the tokenisation being performed. Darren Kenny (2): util: Ignore return value for grub_util_mkdir() on all platforms util: confirm directory creation in grub_install_mkdir_p include/grub/osdep/hostfile_aros.h | 2 +- include/grub/osdep/hostfile_unix.h | 2 +- util/grub-install-common.c | 7 ++++++- 3 files changed, 8 insertions(+), 3 deletions(-) -- 2.31.1