From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mail-pf1-x435.google.com (mail-pf1-x435.google.com [IPv6:2607:f8b0:4864:20::435]) by sourceware.org (Postfix) with ESMTPS id 0238A3858D32 for ; Sat, 12 Aug 2023 23:33:00 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.2 sourceware.org 0238A3858D32 Authentication-Results: sourceware.org; dmarc=pass (p=none dis=none) header.from=gmail.com Authentication-Results: sourceware.org; spf=pass smtp.mailfrom=gmail.com Received: by mail-pf1-x435.google.com with SMTP id d2e1a72fcca58-686ba29ccb1so2165838b3a.1 for ; Sat, 12 Aug 2023 16:33:00 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20221208; t=1691883179; x=1692487979; h=in-reply-to:content-disposition:mime-version:references:message-id :subject:cc:to:from:date:from:to:cc:subject:date:message-id:reply-to; bh=TnfoaTsa/SNqlW7XN5/FTaBjmya3TYksS1ilATnS9Xo=; b=FmSSCoTAwW5tn9UBzJEiJ1rH54I/ZEYIaMWX/Svf/7g4dH4JnO1131dgMAz8GgnxdO t2kC1qkdNJpYZUpMakYjtAZ7nbZ6w+KVEvqH/rh+pdh1sAnP9pW2AEQ0KoIl4TNr4gm7 3o2loq25HrwL59UpwpDsL4Tgk2iFz+5BYUFWj8khJ4pt6uiaZYQfcU/kyrVsWnwv1vnn /WdAa9c+gZ7266xck6LfUhDO4dwZdKwSFGXGlmEngpYf5itC3qU5u/c0Mn9Nn7SQ0Ix7 5mgE348//BGk5E7sEpfqFLhBEUFj3lGI0bMFtfQToSM8hyrpEzmgQgoPI0Fm7u9SFpBz bRzA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1691883179; x=1692487979; h=in-reply-to:content-disposition:mime-version:references:message-id :subject:cc:to:from:date:x-gm-message-state:from:to:cc:subject:date :message-id:reply-to; bh=TnfoaTsa/SNqlW7XN5/FTaBjmya3TYksS1ilATnS9Xo=; b=Uh8IGJ8D7Nx8H+f9FfPW8Cx3dZhJqoJ6IJs+n++6OVXCHi5jq4VIfHyVM0Y7Ho2qfb 0MtzfmjwYpSySWqtmeRNBXc7konhIUbjCmNJmlP0dR+MMOO3nrlatkCy+VtDonLX4S8I LzaZeKaAwAusQC9lUvzoKH8HNcUBzSi0OaxLNJybPRzmWUs7zeHSRbbdCVi5ZRoQJ+0C 9UxzJdusSWCAG+opAY5D/msKdPFByGFhKpnw1LkwdGdtByxtU+8p1pbSivCwsDkXr6T6 +GiuqzXwWPA/7QlVvyb04L81WrW5Cv9QwRGBd83xAKiPHrNitNuIVzpnGlSiKNYS3sD1 2fcw== X-Gm-Message-State: AOJu0YyEGcOE26552/aqEjODDhBilrEkLPsUMHoSI3J6CZbLyOUcVhEm ft5KFYrz4FnKkF3kcs7LADHFoIYvRzU= X-Google-Smtp-Source: AGHT+IH0Gvg6lJI9EL5kN8NH9xE+IqqrM4tT2foFAPQQb8niziDJJ9TbMsNrIfZUleiHgjAtiMjSqQ== X-Received: by 2002:a05:6a00:189b:b0:687:9722:ef87 with SMTP id x27-20020a056a00189b00b006879722ef87mr7737782pfh.6.1691883179072; Sat, 12 Aug 2023 16:32:59 -0700 (PDT) Received: from squeak.grove.modra.org (158.106.96.58.static.exetel.com.au. [58.96.106.158]) by smtp.gmail.com with ESMTPSA id e23-20020a62aa17000000b006877b0b31c2sm5585239pff.147.2023.08.12.16.32.57 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sat, 12 Aug 2023 16:32:58 -0700 (PDT) Received: by squeak.grove.modra.org (Postfix, from userid 1000) id BC8F911424B1; Sun, 13 Aug 2023 09:02:55 +0930 (ACST) Date: Sun, 13 Aug 2023 09:02:55 +0930 From: Alan Modra To: Keith Seitz Cc: gdb-patches@sourceware.org Subject: Re: Question re: commit 2db20b97f1dc3e5dce3d6ed74a8a62f0dede8c80 Message-ID: References: <60cc240b-9d1b-486a-dfd4-1cb2bb3c0fae@redhat.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <60cc240b-9d1b-486a-dfd4-1cb2bb3c0fae@redhat.com> X-Spam-Status: No, score=-3034.0 required=5.0 tests=BAYES_00,DKIM_SIGNED,DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF,FREEMAIL_FROM,GIT_PATCH_0,KAM_NUMSUBJECT,RCVD_IN_DNSWL_NONE,SPF_HELO_NONE,SPF_PASS,TXREP autolearn=ham autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on server2.sourceware.org List-Id: On Sat, Aug 12, 2023 at 09:28:30AM -0700, Keith Seitz wrote: > Hi, > > I see this was just committed to binutils-gdb: > > commit 2db20b97f1dc3e5dce3d6ed74a8a62f0dede8c80 > Author: Alan Modra > Date: Wed Aug 9 09:58:36 2023 +0930 > > gdb: warn unused result for bfd IO functions > This fixes the compilation warnings introduced by my bfdio.c patch. > > This commit contains this hunk: > > @@ -374,12 +395,13 @@ read_pe_exported_syms (minimal_symbol_reader &reader, > { > char sname[8]; > unsigned long secptr1 = secptr + 40 * i; > - unsigned long vaddr = pe_get32 (dll, secptr1 + 12); > - unsigned long vsize = pe_get32 (dll, secptr1 + 16); > - unsigned long fptr = pe_get32 (dll, secptr1 + 20); > + unsigned long vaddr = pe_get32 (dll, secptr1 + 12, &fail); > + unsigned long vsize = pe_get32 (dll, secptr1 + 16, &fail); > + unsigned long fptr = pe_get32 (dll, secptr1 + 20, &fail); > - bfd_seek (dll, (file_ptr) secptr1, SEEK_SET); > - bfd_read (sname, (bfd_size_type) sizeof (sname), dll); > + if (fail > + || bfd_seek (dll, secptr1, SEEK_SET) != 0 > + || bfd_read (sname, sizeof (sname), dll) != sizeof (sname)) > if ((strcmp (sname, ".edata") == 0) > || (vaddr <= export_opthdrrva && export_opthdrrva < vaddr + vsize)) > > Maybe I'm just really out of touch, but can you explain that "if (fail\n|| bfd_seek..." block? > It looks like it is missing a statement? Indeed it is. I don't know how that happened, but it wasn't Andrew's update to my patch. I'm committing the following as obvious. diff --git a/gdb/coff-pe-read.c b/gdb/coff-pe-read.c index 0d76ebdbfce..56137ac4dd0 100644 --- a/gdb/coff-pe-read.c +++ b/gdb/coff-pe-read.c @@ -402,6 +402,7 @@ read_pe_exported_syms (minimal_symbol_reader &reader, if (fail || bfd_seek (dll, secptr1, SEEK_SET) != 0 || bfd_read (sname, sizeof (sname), dll) != sizeof (sname)) + return maybe_print_debug_msg (); if ((strcmp (sname, ".edata") == 0) || (vaddr <= export_opthdrrva && export_opthdrrva < vaddr + vsize)) > [I am hacking coff-pe-read.c to fix some CVEs that were filed against it.] > > Keith -- Alan Modra Australia Development Lab, IBM