<feed xmlns='http://www.w3.org/2005/Atom'>
<title>openbsd/src/lib/libc/string/memmove.c, branch OPENBSD_7_9</title>
<subtitle>A mirror of https://github.com/libressl/openbsd.git
</subtitle>
<id>https://git.lua4.win/openbsd/atom?h=OPENBSD_7_9</id>
<link rel='self' href='https://git.lua4.win/openbsd/atom?h=OPENBSD_7_9'/>
<link rel='alternate' type='text/html' href='https://git.lua4.win/openbsd/'/>
<updated>2017-11-29T05:13:57+00:00</updated>
<entry>
<title>clang doesn't propagate attributes like "asm labels" and "visibility(hidden)"</title>
<updated>2017-11-29T05:13:57+00:00</updated>
<author>
<name>guenther</name>
<email></email>
</author>
<published>2017-11-29T05:13:57+00:00</published>
<link rel='alternate' type='text/html' href='https://git.lua4.win/openbsd/commit/?id=91809a23ddd15af26964fe79c11bc52b08afeb95'/>
<id>urn:sha1:91809a23ddd15af26964fe79c11bc52b08afeb95</id>
<content type='text'>
to builtins like mem{set,cpy,move} and __stack_smash_handler.  So, when
building with clang, instead mark those as protected visibility to get rid
of the PLT relocations.  We can't take the address of them then, but that's
ok: it's a build-time error not a run-time error.

ok kettenis@
</content>
</entry>
<entry>
<title>Add framework for resolving (pun intended) libc namespace issues, using</title>
<updated>2015-08-31T02:53:57+00:00</updated>
<author>
<name>guenther</name>
<email></email>
</author>
<published>2015-08-31T02:53:57+00:00</published>
<link rel='alternate' type='text/html' href='https://git.lua4.win/openbsd/commit/?id=c1ccbe216c72b17e063c4c16fa4904d87d295c99'/>
<id>urn:sha1:c1ccbe216c72b17e063c4c16fa4904d87d295c99</id>
<content type='text'>
wrapper .h files and asm labels to let internal calls resolve directly and
not be overridable or use the PLT.  Then, apply that framework to most of
the functions in stdio.h, string.h, err.h, and wchar.h.  Delete the
should-have-been-hidden-all-along _v?(err|warn)[cx]? symbols while here.

tests clean on i386, amd64, sparc64, powerpc, and mips64

naming feedback from kettenis@ and millert@
ok kettenis@
</content>
</entry>
<entry>
<title>restructure libc/string + libc/arch/*/string coperation regarding</title>
<updated>2014-11-30T19:43:57+00:00</updated>
<author>
<name>deraadt</name>
<email></email>
</author>
<published>2014-11-30T19:43:57+00:00</published>
<link rel='alternate' type='text/html' href='https://git.lua4.win/openbsd/commit/?id=d8f66904ee035f3e8b0d2d91fedb956995e16678'/>
<id>urn:sha1:d8f66904ee035f3e8b0d2d91fedb956995e16678</id>
<content type='text'>
(potentially) MD versions (function dependent, not filename dependent)
split out memcpy/memmove/bcopy and strchr/index/strrchr/rindex
Bring back amd64 .S versions

And the final touch: switch all architectures temporarily to MI
memcpy.c, which contains syslog + abort for overlapping copies.  A nice
harsh undefined behaviour.  We will clean the entire userland of the
remaining issues in this catagory, then switch to the optimised memcpy
which skips the memmove check.

I tried to cut this change into pieces, but testing each sub-step on
every architecture is too time consuming and mindnumbing.
ok miod
</content>
</entry>
</feed>
