From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mail-pg1-x52a.google.com (mail-pg1-x52a.google.com [IPv6:2607:f8b0:4864:20::52a]) by sourceware.org (Postfix) with ESMTPS id A315F3858428 for ; Sat, 29 Oct 2022 04:52:24 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.1 sourceware.org A315F3858428 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-pg1-x52a.google.com with SMTP id h185so6473876pgc.10 for ; Fri, 28 Oct 2022 21:52:24 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20210112; h=content-disposition:mime-version:message-id:subject:to:from:date :from:to:cc:subject:date:message-id:reply-to; bh=SOysNDHJXJJu2FZ7C2HvAv6LIsY5oV6ENqFfzP0qqRo=; b=iOXROpnT2Bbrt8MHaJlfK7duUrFwqlRPJxhQAprJTyoOi2faN49Pgtvz6iUm/KSHh3 W/1+pOL6qxQp4ZeoW2tamEAeedxpPGCW6AF/1ao9LS6iz2//i+YZjDQ9sh2I9qe+pykI KKvx6v7/SJgyNe4aEDHJ0PCEo9CJ2bfbidhztVc4o3WuyoVmBQzZ7YBbmAiZCBQWGglu idpSOQ9oHHdJUaGhqQGad39SRVNafcyyaXoD1nwBgKteMaZhLWtSRRKatQ3lAwOIho8T /aJq4YPMCa/5SrgsxO11UFUuGI1f7LFY4mLVhg6rt90qeYenrtrCXiAsJxavWPct6jfQ jFPw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; 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=SOysNDHJXJJu2FZ7C2HvAv6LIsY5oV6ENqFfzP0qqRo=; b=o6nlSukx/X3mZusldOEA0cDRjlIhcryDpBMktQdzpbt4WApLw32NVQ0zY+oVUL9IfI cwTzLT1/mPzmCkPKEITNbEZv/qaKr+KZQy0eBGq/iHl0HiKqgamy1rppTY78bLLvh7JC Fz5FS5ldC7pvtxETDCB/2jUHntIvuxdRYFwSWnjQJ8PI3nLoM6jmkx4imqkEG7B+aWd9 +zuwpBBxUMiJiUqCv7k0ldomCiFiZCEF0wP4/rvLQyn+LXvlYD9/BjZcDYs3/qvh/byD QN23JddQkhlxGuo0KneqRQ/v3u91TeblK9dKXF1lL7GcRp05HV5137vx65Fo5QNyEbUh uP3A== X-Gm-Message-State: ACrzQf1e1mrRsGlP93KjRpGPSPMSwdMHp4XeqCtym4rkMTjRDhgA5og6 SSMJcTSCWlF1cnnZPoVk/DcLnoQm/4E= X-Google-Smtp-Source: AMsMyM7SkqQyXadCG0WP5dKokoMgyBeC6JbDkiWNAiheKsUj1pzwjqAHx+aTjlxpSZfLmY4lTjlkIw== X-Received: by 2002:a05:6a00:4008:b0:56c:ee89:d5a9 with SMTP id by8-20020a056a00400800b0056cee89d5a9mr2955752pfb.75.1667019143158; Fri, 28 Oct 2022 21:52:23 -0700 (PDT) Received: from squeak.grove.modra.org ([2406:3400:51d:8cc0:e93b:3bfb:5587:694b]) by smtp.gmail.com with ESMTPSA id x11-20020a17090aa38b00b0020b7de675a4sm257045pjp.41.2022.10.28.21.52.21 for (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Fri, 28 Oct 2022 21:52:22 -0700 (PDT) Received: by squeak.grove.modra.org (Postfix, from userid 1000) id 773221140870; Sat, 29 Oct 2022 15:22:19 +1030 (ACDT) Date: Sat, 29 Oct 2022 15:22:19 +1030 From: Alan Modra To: binutils@sourceware.org Subject: NULL dereference read in som_write_object_contents Message-ID: MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline X-Spam-Status: No, score=-3035.6 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 List-Id: objcopy copy_object may omit the call to bfd_copy_private_bfd_data for various conditions deemed non-fatal, in which case obj_som_exec_data will be NULL for the output file. * som.c (som_finish_writing): Don't dereference NULL obj_som_exec_data. diff --git a/bfd/som.c b/bfd/som.c index b3a72e36ede..7a5ee35f0e2 100644 --- a/bfd/som.c +++ b/bfd/som.c @@ -4211,7 +4211,7 @@ som_finish_writing (bfd *abfd) /* Setting of the system_id has to happen very late now that copying of BFD private data happens *after* section contents are set. */ - if (abfd->flags & (EXEC_P | DYNAMIC)) + if ((abfd->flags & (EXEC_P | DYNAMIC)) && obj_som_exec_data (abfd)) obj_som_file_hdr (abfd)->system_id = obj_som_exec_data (abfd)->system_id; else if (bfd_get_mach (abfd) == pa20) obj_som_file_hdr (abfd)->system_id = CPU_PA_RISC2_0; @@ -4242,7 +4242,8 @@ som_finish_writing (bfd *abfd) exec_header = obj_som_exec_hdr (abfd); exec_header->exec_entry = bfd_get_start_address (abfd); - exec_header->exec_flags = obj_som_exec_data (abfd)->exec_flags; + if (obj_som_exec_data (abfd)) + exec_header->exec_flags = obj_som_exec_data (abfd)->exec_flags; /* Oh joys. Ram some of the BSS data into the DATA section to be compatible with how the hp linker makes objects -- Alan Modra Australia Development Lab, IBM