From patchwork Tue Oct 17 04:50:30 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Alan Modra X-Patchwork-Id: 153895 Return-Path: Delivered-To: ouuuleilei@gmail.com Received: by 2002:a05:612c:2908:b0:403:3b70:6f57 with SMTP id ib8csp3899734vqb; Mon, 16 Oct 2023 21:50:41 -0700 (PDT) X-Google-Smtp-Source: AGHT+IFLBEHd1H/3rDJNsFhTZcoGwmOQOc0ieGlJfGZwBge/q3r6AskDkbR9ELjsfGjmNQYDuvfp X-Received: by 2002:a05:622a:1354:b0:419:65f8:1cb8 with SMTP id w20-20020a05622a135400b0041965f81cb8mr1039273qtk.10.1697518240862; Mon, 16 Oct 2023 21:50:40 -0700 (PDT) ARC-Seal: i=2; a=rsa-sha256; t=1697518240; cv=pass; d=google.com; s=arc-20160816; b=Wlcqg4E6PpaIG2naKQWclllbUW3NMaETiZk0KzR/XWYYHBd9Jl2PhBiUmD40O8b8qV TTB8DTmmTQ8hX8gpHFArMslk/1wTNxRL7Aw5No6mgvKfgBQpoHXivXfcZB1/0CDbXLTK AyrKr9BjA1F4QXQwpmh6WmVE+Ma4ft6+SFAQIv2ya9HyTVe8P5yq3sgJkGKoqiOV3NBj 9TZR07a/wylpy2OrrQoyIJeP0BO42FWmwLOh+DJLgaeV4qog7/dyJrNYGTEsbg9Jhc6f CQ6eN99d8gPHg7tDZEi5zQW4neglFmxl0AeWTJliYQIsP5Om8I8s4pYuIGNGLYBjAfWR A9Ug== ARC-Message-Signature: i=2; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=errors-to:list-subscribe:list-help:list-post:list-archive :list-unsubscribe:list-id:precedence:content-disposition :mime-version:message-id:subject:to:from:date:dkim-signature :arc-filter:dmarc-filter:delivered-to; bh=ejEBjFjh5z+8chuiTRQJR+0v5TXMpLnxYZdEBdJKEmU=; fh=NLxAvL/bDfPg4AGOtxqvQlND8vazkZrNzKLY8+LAbBY=; b=saLH5TuWwCvLHRiH3KJuLZE2THaOI2UEBqORQrqnxKMhaNANQ/ySBkqo3wo7YlDtGX n23T0UPWMCpoMiH++kKsZbttRchSCBzOHOkKHryCC3s5CDWZZbhH4pbxFTAeM3Ff0TOL z4r8uEe2XMa5i3YhvMmjwcVSxdHl7gEIgi/Wki/JnMDKTUQf0ZpjVpbmqKf5LUaf8RuO 3V1bI801C7BCgHihAeJm4wdDtdAqAmOqvAp1mIUX5yoqhs4+YQ8lxHk+Oxi6pkk50Wi1 AToWoUtyciV/kVTmvOXm82fI6NVHO5IN6JuzVHHVI8u6ocXViUApgv4gIIKPx1Lro+cY lCVg== ARC-Authentication-Results: i=2; mx.google.com; dkim=pass header.i=@gmail.com header.s=20230601 header.b=jQxImjY8; arc=pass (i=1); spf=pass (google.com: domain of binutils-bounces+ouuuleilei=gmail.com@sourceware.org designates 8.43.85.97 as permitted sender) smtp.mailfrom="binutils-bounces+ouuuleilei=gmail.com@sourceware.org"; dmarc=pass (p=NONE sp=QUARANTINE dis=NONE) header.from=gmail.com Received: from server2.sourceware.org (ip-8-43-85-97.sourceware.org. [8.43.85.97]) by mx.google.com with ESMTPS id 1-20020ac85741000000b00417f199f9e5si595666qtx.738.2023.10.16.21.50.40 for (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 16 Oct 2023 21:50:40 -0700 (PDT) Received-SPF: pass (google.com: domain of binutils-bounces+ouuuleilei=gmail.com@sourceware.org designates 8.43.85.97 as permitted sender) client-ip=8.43.85.97; Authentication-Results: mx.google.com; dkim=pass header.i=@gmail.com header.s=20230601 header.b=jQxImjY8; arc=pass (i=1); spf=pass (google.com: domain of binutils-bounces+ouuuleilei=gmail.com@sourceware.org designates 8.43.85.97 as permitted sender) smtp.mailfrom="binutils-bounces+ouuuleilei=gmail.com@sourceware.org"; dmarc=pass (p=NONE sp=QUARANTINE dis=NONE) header.from=gmail.com Received: from server2.sourceware.org (localhost [IPv6:::1]) by sourceware.org (Postfix) with ESMTP id A189C3858434 for ; Tue, 17 Oct 2023 04:50:40 +0000 (GMT) X-Original-To: binutils@sourceware.org Delivered-To: binutils@sourceware.org Received: from mail-pl1-x634.google.com (mail-pl1-x634.google.com [IPv6:2607:f8b0:4864:20::634]) by sourceware.org (Postfix) with ESMTPS id D1DE73858C01 for ; Tue, 17 Oct 2023 04:50:34 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.2 sourceware.org D1DE73858C01 Authentication-Results: sourceware.org; dmarc=pass (p=none dis=none) header.from=gmail.com Authentication-Results: sourceware.org; spf=pass smtp.mailfrom=gmail.com ARC-Filter: OpenARC Filter v1.0.0 sourceware.org D1DE73858C01 Authentication-Results: server2.sourceware.org; arc=none smtp.remote-ip=2607:f8b0:4864:20::634 ARC-Seal: i=1; a=rsa-sha256; d=sourceware.org; s=key; t=1697518236; cv=none; b=fmaAKQWaMQfMdEX5BrQXHSwTj5JkXFTAI+RT2vcfQvn77AVKLPihGpgKYAwUzyqTWSgO4mtjGwz7/w9DiT+4k25+4inBRE1QUzLHeP2q0xl1LHblLqyE2t4jMLjT6e9s452oEcd0DMXEcJWuzLb5c092AR98vEBibeGqg3fhlLE= ARC-Message-Signature: i=1; a=rsa-sha256; d=sourceware.org; s=key; t=1697518236; c=relaxed/simple; bh=NuUKdBI6NYdSAm1MW+XB+lhNhBqPcscwEwdW4v4n1+4=; h=DKIM-Signature:Date:From:To:Subject:Message-ID:MIME-Version; b=TOpaKaduQev2XHrD4r2xtwtjy6kH/k0EnB5rYnN+FEL1T5fjQWhdejUcXDg6SYEOtl+S62G2IndRreQV2f5ivZgkfNJDETmr6D0igEM3MzCu9UCQgAZAFm7KcNrkgDjx5HRzRk3nijFQ8Zpuv+9CBKzkDpAhOW5j4SqMEHrDN0k= ARC-Authentication-Results: i=1; server2.sourceware.org Received: by mail-pl1-x634.google.com with SMTP id d9443c01a7336-1c9e95aa02dso33015425ad.0 for ; Mon, 16 Oct 2023 21:50:34 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1697518233; x=1698123033; darn=sourceware.org; h=content-disposition:mime-version:message-id:subject:to:from:date :from:to:cc:subject:date:message-id:reply-to; bh=ejEBjFjh5z+8chuiTRQJR+0v5TXMpLnxYZdEBdJKEmU=; b=jQxImjY8l0RSrGd8dplE0Rv11krJodxup8AU2B/fvUr0dmlj8XMlDdE1KaEVs6C8tE x2BHcUTqP7Yfrr170ULroRMvaWk1goJelCS6HxEBQ0BmyofjzU6pJTOV+PwGz4ZDX4z5 5QuU2vO5AnflCGiZ1RcdnPCVO1wD4kmUmo/FaK03ilXX//ARxqfhgqKuBS5+k3SH5Ozs L2UBSBPy5/EB0rB6hyKwLiD22Q3dXLxO0E8fBiXUQrg3Yxayi110AUZ38iy+9ly/fYmY avOIH/vLYp2Wzn3CLBpekhfV0S5XHLHwlDCIuMW7/Ep884rTyqe2QIeSnrRnAYg5IObH 2AtA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1697518233; x=1698123033; h=content-disposition:mime-version:message-id:subject:to:from:date :x-gm-message-state:from:to:cc:subject:date:message-id:reply-to; bh=ejEBjFjh5z+8chuiTRQJR+0v5TXMpLnxYZdEBdJKEmU=; b=PWelDyA9rI7MAgly13hdp8lnZ1cPJmCoDBWxJl+iYIwQZ8fJvgpm0aijlIS+RCHc1y HR2rxt69Cps1iI5l8eSBPABrmrG0uIc40AvmQMXQQINU8cZekHJSm36eLuxATznw21PZ 1Ch3ZnLUKCuJbjyLex/vCto9qPDnLZAixn6NLo/QZxplqxEllXIVZGq9dRVqbZfbIuy0 RXJY/EZPngM4om7YtePHK/XgPGhcdyVkxnBbJbtVpruSpPk6alKUMBuG2E4t64XEBlT9 QK/tXKjpgWE5XziZ3VIhjc7oRold7PRbxIb1zJtTqwo+RJ8SiFQ4/iIzUzQ+1AbUCHfc Ki5Q== X-Gm-Message-State: AOJu0YxCtbGDNo6wtt4b6PVASfciA8k03FyNJER23xIwCf9DPHGzLk7l y0Sl74W24/jfot+4T22xA5bMsTKdaLc= X-Received: by 2002:a17:902:e5c3:b0:1b0:3ab6:5140 with SMTP id u3-20020a170902e5c300b001b03ab65140mr1291755plf.4.1697518233378; Mon, 16 Oct 2023 21:50:33 -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 b3-20020a170902d30300b001c72d694ea5sm445789plc.303.2023.10.16.21.50.32 for (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 16 Oct 2023 21:50:32 -0700 (PDT) Received: by squeak.grove.modra.org (Postfix, from userid 1000) id 2984B11422A7; Tue, 17 Oct 2023 15:20:30 +1030 (ACDT) Date: Tue, 17 Oct 2023 15:20:30 +1030 From: Alan Modra To: binutils@sourceware.org Subject: asan: Invalid free in alpha_ecoff_get_relocated_section_contents Message-ID: MIME-Version: 1.0 Content-Disposition: inline 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, 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 X-BeenThere: binutils@sourceware.org X-Mailman-Version: 2.1.30 Precedence: list List-Id: Binutils mailing list List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: binutils-bounces+ouuuleilei=gmail.com@sourceware.org X-getmail-retrieved-from-mailbox: INBOX X-GMAIL-THRID: 1779976887100428108 X-GMAIL-MSGID: 1779976887100428108 This fixes an ancient bug in commit a3a33af390 (which makes me think this code has never been used). There is a "free (reloc_vector)" after the end of the loop. * coff-alpha.c (alpha_ecoff_get_relocated_section_contents): Iterate through reloc_vector using a temp. diff --git a/bfd/coff-alpha.c b/bfd/coff-alpha.c index 1b34a8957c2..59476b57237 100644 --- a/bfd/coff-alpha.c +++ b/bfd/coff-alpha.c @@ -810,13 +810,13 @@ alpha_ecoff_get_relocated_section_contents (bfd *abfd, } } - for (; *reloc_vector != (arelent *) NULL; reloc_vector++) + for (arelent **relp = reloc_vector; *relp != NULL; relp++) { arelent *rel; bfd_reloc_status_type r; char *err; - rel = *reloc_vector; + rel = *relp; r = bfd_reloc_ok; switch (rel->howto->type) {