<feed xmlns='http://www.w3.org/2005/Atom'>
<title>wireguard-openbsd/gnu/usr.bin/binutils/ld/genscripts.sh, branch jd/histogram</title>
<subtitle>WireGuard implementation for the OpenBSD kernel</subtitle>
<id>https://git.zx2c4.com/wireguard-openbsd/atom/gnu/usr.bin/binutils/ld/genscripts.sh?h=jd%2Fhistogram</id>
<link rel='self' href='https://git.zx2c4.com/wireguard-openbsd/atom/gnu/usr.bin/binutils/ld/genscripts.sh?h=jd%2Fhistogram'/>
<link rel='alternate' type='text/html' href='https://git.zx2c4.com/wireguard-openbsd/'/>
<updated>2008-06-13T23:33:32Z</updated>
<entry>
<title>Fixup ldscripts for i386 when linked with -pie (no change to non-pie</title>
<updated>2008-06-13T23:33:32Z</updated>
<author>
<name>kurt</name>
<email>kurt@openbsd.org</email>
</author>
<published>2008-06-13T23:33:32Z</published>
<link rel='alternate' type='text/html' href='https://git.zx2c4.com/wireguard-openbsd/commit/?id=1c90c84b1a7086d22205ee4f0b5d486f81367317'/>
<id>urn:sha1:1c90c84b1a7086d22205ee4f0b5d486f81367317</id>
<content type='text'>
ldscripts). Correct the xd and xdc ldscripts (pie and pie + combreloc)
on i386 and add two new variants for pie + combreloc + Z and pie + Z on
all arches. ok drahn@
</content>
</entry>
<entry>
<title>Merge conflicts, bringing our changes back in:</title>
<updated>2004-11-02T20:44:57Z</updated>
<author>
<name>miod</name>
<email>miod@openbsd.org</email>
</author>
<published>2004-11-02T20:44:57Z</published>
<link rel='alternate' type='text/html' href='https://git.zx2c4.com/wireguard-openbsd/commit/?id=007c2a4539b8b8aaa95c5e73e77620090abe113b'/>
<id>urn:sha1:007c2a4539b8b8aaa95c5e73e77620090abe113b</id>
<content type='text'>
- extra $(SHELL) and sugar for make (so that files not mode +x still work)
- safer temp file handling
- our W^X binary layout changes in ld
- OpenBSD policy for library file selection in ld
- arm and m88k changes which were not merged in time for official 2.15
- bfd core file handling
- a couple typos

New for 2.15:
- ld(1) and as(1) manpages now generated at build time
- binutils/stabs.c reverted to use our in-tree libiberty for now
- we still use our VIA C3 crypto code over stock binutils, as it recognizes
  more instructions
- new emulations for OpenBSD on mips64 machines, to help OpenBSD/sgi
- relaxed %f# handling in gas on OpenBSD/sparc64 (same as was in 2.14)

Tested on all platforms by various people; special thanks to sturm@ and
otto@.
</content>
</entry>
<entry>
<title>emacs undump is very sensative to the section ordering, For W^X a couple</title>
<updated>2004-05-30T22:05:40Z</updated>
<author>
<name>drahn</name>
<email>drahn@openbsd.org</email>
</author>
<published>2004-05-30T22:05:40Z</published>
<link rel='alternate' type='text/html' href='https://git.zx2c4.com/wireguard-openbsd/commit/?id=59a393de3ada9e050d4162a25e04ad95c2b2dc27'/>
<id>urn:sha1:59a393de3ada9e050d4162a25e04ad95c2b2dc27</id>
<content type='text'>
of sections were moved for protections purposes. This causes problems
with emacs undump. Only move the sections if the W^X padding is active.
Generate the scripts properly for newer binutils, on i386 if -Z is
active, move the executable start address back to the classic base address.
</content>
</entry>
<entry>
<title>Resolve merge conflicts, adjust method of W^X handing (.sh files)</title>
<updated>2004-05-17T21:54:18Z</updated>
<author>
<name>drahn</name>
<email>drahn@openbsd.org</email>
</author>
<published>2004-05-17T21:54:18Z</published>
<link rel='alternate' type='text/html' href='https://git.zx2c4.com/wireguard-openbsd/commit/?id=c074d1c999f3e07019cd5e9a2f190b057ef3b935'/>
<id>urn:sha1:c074d1c999f3e07019cd5e9a2f190b057ef3b935</id>
<content type='text'>
remove testsuites (not useable) remove mmalloc (not part of new binutils).
</content>
</entry>
<entry>
<title>This is a project to modify executables so that they do not have any</title>
<updated>2003-01-17T20:50:13Z</updated>
<author>
<name>drahn</name>
<email>drahn@openbsd.org</email>
</author>
<published>2003-01-17T20:50:13Z</published>
<link rel='alternate' type='text/html' href='https://git.zx2c4.com/wireguard-openbsd/commit/?id=58cb065838343f5d972d625775790ebb89f56d88'/>
<id>urn:sha1:58cb065838343f5d972d625775790ebb89f56d88</id>
<content type='text'>
executable regions which are writable. If a section of an executable is
writable and executable, it is much easier for errant code to modify the
executable's behavior.

Two current areas in shared library environments which have this
critical problem are the GOT (Global Offset Table) and PLT (Procedure
Linkage Table). The PLT is required to be executable and both GOT and
PLT are writable on most architectures. On most ELF architecture
machines this would cause shared libraries to have data and BSS marked
as executable.

Padding to the linker script for programs and shared libraries/objects
to isolate the GOT and PLT into their own load sections in the
executables. This allows only the text(readonly) region and the PLT
region to be marked executable with the normal data and BSS not marked
as executable. The PLT region is still marked executable on most
architectures because the PLT lives in the "data" or "BSS" regions
and the dynamic loader will need to modify it. Since the GOT and PLT
should only ever be written by the dynamic linker, it will be modified
to mprotect those regions so that they are not writable during normal
execution. If the dynamic linker needs to modify the regions later,
(eg for lazy binding), it will mprotect the region, make the necessary
changes, and mprotect it back. Since it is possible to receive a
signal which would interrupt the program flow and perhaps cause the
dynamic linker to modify the same (or nearby) PLT references, it is now
necessary for signals to be blocked for the duration of the mprotect.
</content>
</entry>
<entry>
<title>resolve conflicts.</title>
<updated>2002-05-13T17:07:28Z</updated>
<author>
<name>fgsch</name>
<email>fgsch@openbsd.org</email>
</author>
<published>2002-05-13T17:07:28Z</published>
<link rel='alternate' type='text/html' href='https://git.zx2c4.com/wireguard-openbsd/commit/?id=b55d46928a2b71c17e5349c93fca2971ba1cafa1'/>
<id>urn:sha1:b55d46928a2b71c17e5349c93fca2971ba1cafa1</id>
<content type='text'>
</content>
</entry>
<entry>
<title>remove /lib and /usr/local/lib from the default search path for the</title>
<updated>2002-03-24T18:26:31Z</updated>
<author>
<name>brad</name>
<email>brad@openbsd.org</email>
</author>
<published>2002-03-24T18:26:31Z</published>
<link rel='alternate' type='text/html' href='https://git.zx2c4.com/wireguard-openbsd/commit/?id=e51681ba682b8a49669f4f737fe5d7b1b0871145'/>
<id>urn:sha1:e51681ba682b8a49669f4f737fe5d7b1b0871145</id>
<content type='text'>
native linker.
--
Ok'd by: pval@, fgsch@ and espie@
</content>
</entry>
<entry>
<title>Resolve other problems that dumb cvs can't find out by itself.</title>
<updated>2000-09-12T22:24:18Z</updated>
<author>
<name>espie</name>
<email>espie@openbsd.org</email>
</author>
<published>2000-09-12T22:24:18Z</published>
<link rel='alternate' type='text/html' href='https://git.zx2c4.com/wireguard-openbsd/commit/?id=6a4c786fd1d49fc30ce2d67fbe51c505ff9e8345'/>
<id>urn:sha1:6a4c786fd1d49fc30ce2d67fbe51c505ff9e8345</id>
<content type='text'>
(trivial part done, `interesting' patches remain)
</content>
</entry>
<entry>
<title>Help stupid cvs fixing basic conflicts.</title>
<updated>2000-09-12T19:10:55Z</updated>
<author>
<name>espie</name>
<email>espie@openbsd.org</email>
</author>
<published>2000-09-12T19:10:55Z</published>
<link rel='alternate' type='text/html' href='https://git.zx2c4.com/wireguard-openbsd/commit/?id=b305b0f1cb8417acb9d6ca66ca17b05cf1dc8fc9'/>
<id>urn:sha1:b305b0f1cb8417acb9d6ca66ca17b05cf1dc8fc9</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Import of binutils, gas, ld &amp; gprof from Cygnus 960609 tree</title>
<updated>1996-06-09T19:35:13Z</updated>
<author>
<name>niklas</name>
<email>niklas@openbsd.org</email>
</author>
<published>1996-06-09T19:35:13Z</published>
<link rel='alternate' type='text/html' href='https://git.zx2c4.com/wireguard-openbsd/commit/?id=191aa56503508614b4308d555aa5d4ae85ef3df7'/>
<id>urn:sha1:191aa56503508614b4308d555aa5d4ae85ef3df7</id>
<content type='text'>
</content>
</entry>
</feed>
