<feed xmlns='http://www.w3.org/2005/Atom'>
<title>src/libexec/rtld-elf/rtld.c, branch releng/9.1</title>
<subtitle>FreeBSD source tree</subtitle>
<link rel='alternate' type='text/html' href='http://cgit.freebsd.org/src/'/>
<entry>
<title>MFC r239470: Do not call process_nodelete with NULL object pointer.</title>
<updated>2012-08-21T22:42:46+00:00</updated>
<author>
<name>Alexander Kabaev</name>
<email>kan@FreeBSD.org</email>
</author>
<published>2012-08-21T22:42:46+00:00</published>
<link rel='alternate' type='text/html' href='http://cgit.freebsd.org/src/commit/?id=bcdef61dc35bda912d30dac22f4dce33461dc635'/>
<id>bcdef61dc35bda912d30dac22f4dce33461dc635</id>
<content type='text'>
The place where the function is called can be reached if object loading
and relocation fails too, in which case obj pointer will be NULL. Do not
call process_nodelete then, or crash will follow.

Pointy hat to: kan
Approved by: re (kib)
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
The place where the function is called can be reached if object loading
and relocation fails too, in which case obj pointer will be NULL. Do not
call process_nodelete then, or crash will follow.

Pointy hat to: kan
Approved by: re (kib)
</pre>
</div>
</content>
</entry>
<entry>
<title>MFC r239253: Pospone the DF_1_NODELETE processing until object DAG is</title>
<updated>2012-08-20T16:57:27+00:00</updated>
<author>
<name>Alexander Kabaev</name>
<email>kan@FreeBSD.org</email>
</author>
<published>2012-08-20T16:57:27+00:00</published>
<link rel='alternate' type='text/html' href='http://cgit.freebsd.org/src/commit/?id=98774675cac7c699f7fa8b58f80784de01dd36b8'/>
<id>98774675cac7c699f7fa8b58f80784de01dd36b8</id>
<content type='text'>
fully loaded.

Trying to up the reference from the load loop risks missing
dependencies that have not been loaded yet.

Approved by: re (kib)
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
fully loaded.

Trying to up the reference from the load loop risks missing
dependencies that have not been loaded yet.

Approved by: re (kib)
</pre>
</div>
</content>
</entry>
<entry>
<title>MFC r237659:</title>
<updated>2012-07-05T15:34:55+00:00</updated>
<author>
<name>Konstantin Belousov</name>
<email>kib@FreeBSD.org</email>
</author>
<published>2012-07-05T15:34:55+00:00</published>
<link rel='alternate' type='text/html' href='http://cgit.freebsd.org/src/commit/?id=22758c811ceeafc7c252dcc3d8d58be01c81af02'/>
<id>22758c811ceeafc7c252dcc3d8d58be01c81af02</id>
<content type='text'>
Ensure that for the object which is a dependency for some filtee,
relocations are performed before the object's initializer is called.

Approved by:	re (kensmith)
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Ensure that for the object which is a dependency for some filtee,
relocations are performed before the object's initializer is called.

Approved by:	re (kensmith)
</pre>
</div>
</content>
</entry>
<entry>
<title>MFC: r231618, r233231 (partial)</title>
<updated>2012-06-21T13:01:00+00:00</updated>
<author>
<name>Marius Strobl</name>
<email>marius@FreeBSD.org</email>
</author>
<published>2012-06-21T13:01:00+00:00</published>
<link rel='alternate' type='text/html' href='http://cgit.freebsd.org/src/commit/?id=5a884913126c3f633efbe0ccbe661e4a471a9de3'/>
<id>5a884913126c3f633efbe0ccbe661e4a471a9de3</id>
<content type='text'>
Add thread-local storage support for ARM to rtld-elf

Reviewed by:    cognet
Obtained from:  NetBSD
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Add thread-local storage support for ARM to rtld-elf

Reviewed by:    cognet
Obtained from:  NetBSD
</pre>
</div>
</content>
</entry>
<entry>
<title>MFC r234840:</title>
<updated>2012-05-13T12:50:42+00:00</updated>
<author>
<name>Konstantin Belousov</name>
<email>kib@FreeBSD.org</email>
</author>
<published>2012-05-13T12:50:42+00:00</published>
<link rel='alternate' type='text/html' href='http://cgit.freebsd.org/src/commit/?id=7507b05f01bc2f5cc0b558b6f4f78aba85f761be'/>
<id>7507b05f01bc2f5cc0b558b6f4f78aba85f761be</id>
<content type='text'>
Split the symlook_obj1 into a loop iterating over the ELF object symbol
hash elements, and a helper matched_symbol() which match the given hash
entry and request, performing needed type and version checks.

MFC r234841:
Add GNU hash support for rtld.

MFC r235054:
Work around a situation where symlook_obj() could be called for the
object for which digest_dynamic1() was not done yet. Just return
EINVAL and do not try to dereference NULL buckets hash array.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Split the symlook_obj1 into a loop iterating over the ELF object symbol
hash elements, and a helper matched_symbol() which match the given hash
entry and request, performing needed type and version checks.

MFC r234841:
Add GNU hash support for rtld.

MFC r235054:
Work around a situation where symlook_obj() could be called for the
object for which digest_dynamic1() was not done yet. Just return
EINVAL and do not try to dereference NULL buckets hash array.
</pre>
</div>
</content>
</entry>
<entry>
<title>MFC r234170:</title>
<updated>2012-04-19T10:17:28+00:00</updated>
<author>
<name>Konstantin Belousov</name>
<email>kib@FreeBSD.org</email>
</author>
<published>2012-04-19T10:17:28+00:00</published>
<link rel='alternate' type='text/html' href='http://cgit.freebsd.org/src/commit/?id=037cfc9ee77bd26caf4e6cc32b69aef99847938f'/>
<id>037cfc9ee77bd26caf4e6cc32b69aef99847938f</id>
<content type='text'>
Propagate the current state of rtld_bind_lock to dlopen_object() calls
through the filter loading call chain. This fixes attempts to
write-lock the already locked rtld_bind_lock when filter loading is
initiated by relocation of dlopening dso.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Propagate the current state of rtld_bind_lock to dlopen_object() calls
through the filter loading call chain. This fixes attempts to
write-lock the already locked rtld_bind_lock when filter loading is
initiated by relocation of dlopening dso.
</pre>
</div>
</content>
</entry>
<entry>
<title>MFC r233927:</title>
<updated>2012-04-08T04:09:55+00:00</updated>
<author>
<name>Konstantin Belousov</name>
<email>kib@FreeBSD.org</email>
</author>
<published>2012-04-08T04:09:55+00:00</published>
<link rel='alternate' type='text/html' href='http://cgit.freebsd.org/src/commit/?id=9cd3611186f6c23b09c26d3586bbf1bf56cc5468'/>
<id>9cd3611186f6c23b09c26d3586bbf1bf56cc5468</id>
<content type='text'>
Properly handle absent AT_CANARY aux entry.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Properly handle absent AT_CANARY aux entry.
</pre>
</div>
</content>
</entry>
<entry>
<title>MFC r233431:</title>
<updated>2012-04-07T05:43:50+00:00</updated>
<author>
<name>Konstantin Belousov</name>
<email>kib@FreeBSD.org</email>
</author>
<published>2012-04-07T05:43:50+00:00</published>
<link rel='alternate' type='text/html' href='http://cgit.freebsd.org/src/commit/?id=73d287d5b7e15140c75c40f422e30f6b6dad3736'/>
<id>73d287d5b7e15140c75c40f422e30f6b6dad3736</id>
<content type='text'>
Remove libssp_nonshared from the rtld linking set. The only use for the
library was definition for the weak alias of __stack_chk_fail.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Remove libssp_nonshared from the rtld linking set. The only use for the
library was definition for the weak alias of __stack_chk_fail.
</pre>
</div>
</content>
</entry>
<entry>
<title>MFC r233430:</title>
<updated>2012-04-07T05:42:37+00:00</updated>
<author>
<name>Konstantin Belousov</name>
<email>kib@FreeBSD.org</email>
</author>
<published>2012-04-07T05:42:37+00:00</published>
<link rel='alternate' type='text/html' href='http://cgit.freebsd.org/src/commit/?id=3dd5a4158794938cd1912af383b7d8af2032a99d'/>
<id>3dd5a4158794938cd1912af383b7d8af2032a99d</id>
<content type='text'>
Provide short-circuit exit(3) implementation for rtld.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Provide short-circuit exit(3) implementation for rtld.
</pre>
</div>
</content>
</entry>
<entry>
<title>MFC r233307:</title>
<updated>2012-04-05T10:38:07+00:00</updated>
<author>
<name>Konstantin Belousov</name>
<email>kib@FreeBSD.org</email>
</author>
<published>2012-04-05T10:38:07+00:00</published>
<link rel='alternate' type='text/html' href='http://cgit.freebsd.org/src/commit/?id=0149ef5fcab8cfbaddd3c62f1500ff1fc16befdc'/>
<id>0149ef5fcab8cfbaddd3c62f1500ff1fc16befdc</id>
<content type='text'>
Use xmalloc() instead of malloc() in the places where malloc() calls
are assumed to not fail.

Make the xcalloc() calling conventions follow the calloc(3) calling
conventions and replace unchecked calls to calloc() with calls to
xcalloc().

Remove redundand declarations from xmalloc.c, which are already
present in rtld.h.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Use xmalloc() instead of malloc() in the places where malloc() calls
are assumed to not fail.

Make the xcalloc() calling conventions follow the calloc(3) calling
conventions and replace unchecked calls to calloc() with calls to
xcalloc().

Remove redundand declarations from xmalloc.c, which are already
present in rtld.h.
</pre>
</div>
</content>
</entry>
</feed>
