From mboxrd@z Thu Jan 1 00:00:00 1970 X-Spam-Checker-Version: SpamAssassin 3.4.4 (2020-01-24) on inbox.vuxu.org X-Spam-Level: X-Spam-Status: No, score=-4.0 required=5.0 tests=DKIM_INVALID,DKIM_SIGNED, MAILING_LIST_MULTI,NICE_REPLY_A,RCVD_IN_DNSWL_MED,RCVD_IN_MSPIKE_H3, RCVD_IN_MSPIKE_WL autolearn=ham autolearn_force=no version=3.4.4 Received: (qmail 26341 invoked from network); 25 Aug 2020 10:52:35 -0000 Received: from mother.openwall.net (195.42.179.200) by inbox.vuxu.org with ESMTPUTF8; 25 Aug 2020 10:52:35 -0000 Received: (qmail 32535 invoked by uid 550); 25 Aug 2020 10:52:31 -0000 Mailing-List: contact musl-help@lists.openwall.com; run by ezmlm Precedence: bulk List-Post: List-Help: List-Unsubscribe: List-Subscribe: List-ID: Reply-To: musl@lists.openwall.com Received: (qmail 32515 invoked from network); 25 Aug 2020 10:52:31 -0000 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1598352739; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references:autocrypt:autocrypt; bh=Z8zY1VQkM89PTN6PDmm0OFSd3iXPc5xibQtCAXSd6Ds=; b=Ear5mVhJhS1cS86iIT6e5Nt0+1DZWgSG7ZcIZieL1QBu7PtFGY9KNMBvEMVQo5GBkGw2wV XXC/kHbc081TfOFpguPjSno8S06B6aSMIRcqwvSSEiWbTroM+KQ4B3BNPfV+wnJR2N+Ss4 BLeXdhcbryi8V+5wK6Dog1VmGwg91q4= X-MC-Unique: sTbGuRAyP7yjMRuZO4pE9A-1 To: musl@lists.openwall.com References: <20200427123207.1025966-1-harald@redhat.com> From: Harald Hoyer Autocrypt: addr=harald@redhat.com; prefer-encrypt=mutual; keydata= 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 c50Oh9DmB0husntsgcPErX1M8dbOhE7AoYlx Message-ID: Date: Tue, 25 Aug 2020 12:52:12 +0200 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:68.0) Gecko/20100101 Thunderbird/68.11.0 MIME-Version: 1.0 In-Reply-To: <20200427123207.1025966-1-harald@redhat.com> Content-Language: en-US X-Scanned-By: MIMEDefang 2.79 on 10.5.11.12 Authentication-Results: relay.mimecast.com; auth=pass smtp.auth=CUSA124A263 smtp.mailfrom=harald@redhat.com X-Mimecast-Spam-Score: 0.001 X-Mimecast-Originator: redhat.com Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 7bit Subject: Re: [musl] [PATCH] Enable linking to a static position independent executable Am 27.04.20 um 14:32 schrieb harald@redhat.com: > From: Harald Hoyer > > This also enables address space layout randomization (ASLR). > > $ cat hello.c > > int main() > { > printf("main = 0x%lxd\n", main); > return 0; > } > > $ gcc -fPIE -static-pie -o hello hello.c -specs musl-gcc.specs > > $ ldd hello > statically linked > > $ file hello > hello: ELF 64-bit LSB shared object, x86-64, version 1 (SYSV), statically linked, with debug_info, not stripped, too many notes (256) > > $ ./hello > main = 0x7f858c4e72b9d > > $ ./hello > main = 0x7f0854d312b9d > > $ ./hello > main = 0x7f7179a1d2b9d > > $ ./hello > main = 0x7f37f981b2b9d > > $ readelf -l hello > > Elf file type is DYN (Shared object file) > Entry point 0x104f > There are 7 program headers, starting at offset 64 > > Program Headers: > Type Offset VirtAddr PhysAddr > FileSiz MemSiz Flags Align > LOAD 0x0000000000000000 0x0000000000000000 0x0000000000000000 > 0x0000000000000308 0x0000000000000308 R 0x1000 > LOAD 0x0000000000001000 0x0000000000001000 0x0000000000001000 > 0x0000000000003eb7 0x0000000000003eb7 R E 0x1000 > LOAD 0x0000000000005000 0x0000000000005000 0x0000000000005000 > 0x000000000000136c 0x000000000000136c R 0x1000 > LOAD 0x0000000000006e50 0x0000000000007e50 0x0000000000007e50 > 0x00000000000002e0 0x00000000000009a0 RW 0x1000 > DYNAMIC 0x0000000000006e70 0x0000000000007e70 0x0000000000007e70 > 0x0000000000000180 0x0000000000000180 RW 0x8 > GNU_STACK 0x0000000000000000 0x0000000000000000 0x0000000000000000 > 0x0000000000000000 0x0000000000000000 RW 0x10 > GNU_RELRO 0x0000000000006e50 0x0000000000007e50 0x0000000000007e50 > 0x00000000000001b0 0x00000000000001b0 R 0x1 > > Section to Segment mapping: > Segment Sections... > 00 .hash .gnu.hash .dynsym .dynstr .rela.dyn > 01 .init .plt .text .fini > 02 .rodata .eh_frame > 03 .init_array .fini_array .data.rel.ro .dynamic .got .got.plt .data .bss > 04 .dynamic > 05 > 06 .init_array .fini_array .data.rel.ro .dynamic .got > --- > tools/musl-gcc.specs.sh | 4 ++-- > 1 file changed, 2 insertions(+), 2 deletions(-) > mode change 100644 => 100755 tools/musl-gcc.specs.sh > > diff --git a/tools/musl-gcc.specs.sh b/tools/musl-gcc.specs.sh > old mode 100644 > new mode 100755 > index 30492574..ed584ed3 > --- a/tools/musl-gcc.specs.sh > +++ b/tools/musl-gcc.specs.sh > @@ -17,13 +17,13 @@ cat < libgcc.a%s %:if-exists(libgcc_eh.a%s) > > *startfile: > -%{!shared: $libdir/Scrt1.o} $libdir/crti.o crtbeginS.o%s > +%{shared:;static-pie:$libdir/rcrt1.o; :$libdir/Scrt1.o} $libdir/crti.o crtbeginS.o%s > > *endfile: > crtendS.o%s $libdir/crtn.o > > *link: > --dynamic-linker $ldso -nostdlib %{shared:-shared} %{static:-static} %{rdynamic:-export-dynamic} > +-dynamic-linker $ldso -nostdlib %{shared:-shared} %{static:-static} %{static-pie:-static -pie --no-dynamic-linker} %{rdynamic:-export-dynamic} > > *esp_link: > > Anythink missing? Does it need more work?