<feed xmlns='http://www.w3.org/2005/Atom'>
<title>src/libexec/rtld-elf, branch releng/8.0</title>
<subtitle>FreeBSD source tree</subtitle>
<link rel='alternate' type='text/html' href='http://cgit.freebsd.org/src/'/>
<entry>
<title>Disable SSL renegotiation in order to protect against a serious</title>
<updated>2009-12-03T09:18:40+00:00</updated>
<author>
<name>Colin Percival</name>
<email>cperciva@FreeBSD.org</email>
</author>
<published>2009-12-03T09:18:40+00:00</published>
<link rel='alternate' type='text/html' href='http://cgit.freebsd.org/src/commit/?id=c08f10bc4888982e18312f4b2bd817d0aca58314'/>
<id>c08f10bc4888982e18312f4b2bd817d0aca58314</id>
<content type='text'>
protocol flaw. [09:15]

Correctly handle failures from unsetenv resulting from a corrupt
environment in rtld-elf. [09:16]

Fix permissions in freebsd-update in order to prevent leakage of
sensitive files. [09:17]

Approved by:	so (cperciva)
Security:	FreeBSD-SA-09:15.ssl
Security:	FreeBSD-SA-09:16.rtld
Security:	FreeBSD-SA-09:17.freebsd-udpate
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
protocol flaw. [09:15]

Correctly handle failures from unsetenv resulting from a corrupt
environment in rtld-elf. [09:16]

Fix permissions in freebsd-update in order to prevent leakage of
sensitive files. [09:17]

Approved by:	so (cperciva)
Security:	FreeBSD-SA-09:15.ssl
Security:	FreeBSD-SA-09:16.rtld
Security:	FreeBSD-SA-09:17.freebsd-udpate
</pre>
</div>
</content>
</entry>
<entry>
<title>MFC r197931:</title>
<updated>2009-10-20T13:26:58+00:00</updated>
<author>
<name>Konstantin Belousov</name>
<email>kib@FreeBSD.org</email>
</author>
<published>2009-10-20T13:26:58+00:00</published>
<link rel='alternate' type='text/html' href='http://cgit.freebsd.org/src/commit/?id=b6124fac40e3946f52439be7261305c7e874afe2'/>
<id>b6124fac40e3946f52439be7261305c7e874afe2</id>
<content type='text'>
Apply relocations for PIE binary ELF data structures pointers in rtld.

Approved by:	re (kensmith)
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Apply relocations for PIE binary ELF data structures pointers in rtld.

Approved by:	re (kensmith)
</pre>
</div>
</content>
</entry>
<entry>
<title>Implement RTLD_NOLOAD flag for dlopen(3).</title>
<updated>2009-07-17T19:45:42+00:00</updated>
<author>
<name>Konstantin Belousov</name>
<email>kib@FreeBSD.org</email>
</author>
<published>2009-07-17T19:45:42+00:00</published>
<link rel='alternate' type='text/html' href='http://cgit.freebsd.org/src/commit/?id=49e8c06b454b9a37d48ea7c1c47fdf7230acafb9'/>
<id>49e8c06b454b9a37d48ea7c1c47fdf7230acafb9</id>
<content type='text'>
Requested and tested by:	jkim
Reviewed by:	kan
Approved by:	re (kensmith)
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Requested and tested by:	jkim
Reviewed by:	kan
Approved by:	re (kensmith)
</pre>
</div>
</content>
</entry>
<entry>
<title>Only perform .bss mapping and cleaning operations when segment file size</title>
<updated>2009-07-17T19:32:04+00:00</updated>
<author>
<name>Konstantin Belousov</name>
<email>kib@FreeBSD.org</email>
</author>
<published>2009-07-17T19:32:04+00:00</published>
<link rel='alternate' type='text/html' href='http://cgit.freebsd.org/src/commit/?id=69ca61ba5e482dda9410c227ca300218bf56c95a'/>
<id>69ca61ba5e482dda9410c227ca300218bf56c95a</id>
<content type='text'>
is not equal to its memory size.

This eliminates unneeded clearing of the text segment that often
happens due to text end not being page-aligned.

For instance,
$ readelf -l /lib/libedit.so.6
Program Headers:
  Type           Offset   VirtAddr   PhysAddr   FileSiz MemSiz  Flg Align
  LOAD           0x000000 0x00000000 0x00000000 0x139e1 0x139e1 R E 0x1000
  LOAD           0x014000 0x00014000 0x00014000 0x00f04 0x00f14 RW  0x1000
  DYNAMIC        0x014cc4 0x00014cc4 0x00014cc4 0x000d0 0x000d0 RW  0x4
$ procstat -v $$ (for /bin/sh)
68585 0x28097000 0x280aa000 r-x    6    0  21  14 CN vn /lib/libedit.so.6
68585 0x280aa000 0x280ab000 r-x    1    0   1   0 CN vn /lib/libedit.so.6 &lt;==
68585 0x280ab000 0x280ac000 rwx    1    0   1   0 CN vn /lib/libedit.so.6
Note the splitted map entry marked by '&lt;=='.

Reviewed by:	kan
Approved by:	re (kensmith)
MFC after:	1 month
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
is not equal to its memory size.

This eliminates unneeded clearing of the text segment that often
happens due to text end not being page-aligned.

For instance,
$ readelf -l /lib/libedit.so.6
Program Headers:
  Type           Offset   VirtAddr   PhysAddr   FileSiz MemSiz  Flg Align
  LOAD           0x000000 0x00000000 0x00000000 0x139e1 0x139e1 R E 0x1000
  LOAD           0x014000 0x00014000 0x00014000 0x00f04 0x00f14 RW  0x1000
  DYNAMIC        0x014cc4 0x00014cc4 0x00014cc4 0x000d0 0x000d0 RW  0x4
$ procstat -v $$ (for /bin/sh)
68585 0x28097000 0x280aa000 r-x    6    0  21  14 CN vn /lib/libedit.so.6
68585 0x280aa000 0x280ab000 r-x    1    0   1   0 CN vn /lib/libedit.so.6 &lt;==
68585 0x280ab000 0x280ac000 rwx    1    0   1   0 CN vn /lib/libedit.so.6
Note the splitted map entry marked by '&lt;=='.

Reviewed by:	kan
Approved by:	re (kensmith)
MFC after:	1 month
</pre>
</div>
</content>
</entry>
<entry>
<title>Second attempt at eliminating .text relocations in shared libraries</title>
<updated>2009-07-14T21:19:13+00:00</updated>
<author>
<name>Alexander Kabaev</name>
<email>kan@FreeBSD.org</email>
</author>
<published>2009-07-14T21:19:13+00:00</published>
<link rel='alternate' type='text/html' href='http://cgit.freebsd.org/src/commit/?id=2286fe763592aa13d320186bf3e233a560af749b'/>
<id>2286fe763592aa13d320186bf3e233a560af749b</id>
<content type='text'>
compiled with stack protector.

Use libssp_nonshared library to pull __stack_chk_fail_local symbol into
each library that needs it instead of pulling it from libc. GCC
generates local calls to this function which result in absolute
relocations put into position-independent code segment, making dynamic
loader do extra work every time given shared library is being relocated
and making affected text pages non-shareable.

Reviewed by:        kib
Approved by:        re (kib)
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
compiled with stack protector.

Use libssp_nonshared library to pull __stack_chk_fail_local symbol into
each library that needs it instead of pulling it from libc. GCC
generates local calls to this function which result in absolute
relocations put into position-independent code segment, making dynamic
loader do extra work every time given shared library is being relocated
and making affected text pages non-shareable.

Reviewed by:        kib
Approved by:        re (kib)
</pre>
</div>
</content>
</entry>
<entry>
<title>Back out previous revision until better tested fix is ready.</title>
<updated>2009-06-29T01:33:59+00:00</updated>
<author>
<name>Alexander Kabaev</name>
<email>kan@FreeBSD.org</email>
</author>
<published>2009-06-29T01:33:59+00:00</published>
<link rel='alternate' type='text/html' href='http://cgit.freebsd.org/src/commit/?id=d48890cfb8cf92f9f2d49763781b20fd01e1e9d4'/>
<id>d48890cfb8cf92f9f2d49763781b20fd01e1e9d4</id>
<content type='text'>
Approved by: re (impliciti, by approving previos check-in)
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Approved by: re (impliciti, by approving previos check-in)
</pre>
</div>
</content>
</entry>
<entry>
<title>Eliminate .text relocations in shared libraries compiled with stack protector.</title>
<updated>2009-06-28T23:51:39+00:00</updated>
<author>
<name>Alexander Kabaev</name>
<email>kan@FreeBSD.org</email>
</author>
<published>2009-06-28T23:51:39+00:00</published>
<link rel='alternate' type='text/html' href='http://cgit.freebsd.org/src/commit/?id=a162c9ae9c55a9593b15ef618f4df0a045e39dbd'/>
<id>a162c9ae9c55a9593b15ef618f4df0a045e39dbd</id>
<content type='text'>
Use libssp_nonshared library to pull __stack_chk_fail_local symbol into
each library that needs it instead of pulling it from libc. GCC generates
local calls to this function which result in absolute relocations put into
position-independent code segment, making dynamic loader do extra work everys
time given shared library is being relocated and making affected text pages
non-shareable.

Reviewed by:        kib
Approved by:        re (kensmith)
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Use libssp_nonshared library to pull __stack_chk_fail_local symbol into
each library that needs it instead of pulling it from libc. GCC generates
local calls to this function which result in absolute relocations put into
position-independent code segment, making dynamic loader do extra work everys
time given shared library is being relocated and making affected text pages
non-shareable.

Reviewed by:        kib
Approved by:        re (kensmith)
</pre>
</div>
</content>
</entry>
<entry>
<title>Fix a typo in the same comment, one line below.</title>
<updated>2009-06-23T14:12:49+00:00</updated>
<author>
<name>Ed Schouten</name>
<email>ed@FreeBSD.org</email>
</author>
<published>2009-06-23T14:12:49+00:00</published>
<link rel='alternate' type='text/html' href='http://cgit.freebsd.org/src/commit/?id=26d0788e89d872ccbfe8d28412972e50f19d0b43'/>
<id>26d0788e89d872ccbfe8d28412972e50f19d0b43</id>
<content type='text'>
Submitted by:	bf1783 googlemail com
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Submitted by:	bf1783 googlemail com
</pre>
</div>
</content>
</entry>
<entry>
<title>Fix typo in comment.</title>
<updated>2009-06-23T09:50:50+00:00</updated>
<author>
<name>Ed Schouten</name>
<email>ed@FreeBSD.org</email>
</author>
<published>2009-06-23T09:50:50+00:00</published>
<link rel='alternate' type='text/html' href='http://cgit.freebsd.org/src/commit/?id=75b872ee53cd9d08ef38cdd78aa22b78304ce1bb'/>
<id>75b872ee53cd9d08ef38cdd78aa22b78304ce1bb</id>
<content type='text'>
Submitted by:	Christoph Mallon
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Submitted by:	Christoph Mallon
</pre>
</div>
</content>
</entry>
<entry>
<title>Allow order of initialization of loaded shared objects to be</title>
<updated>2009-06-20T14:16:41+00:00</updated>
<author>
<name>Alexander Kabaev</name>
<email>kan@FreeBSD.org</email>
</author>
<published>2009-06-20T14:16:41+00:00</published>
<link rel='alternate' type='text/html' href='http://cgit.freebsd.org/src/commit/?id=6c3154f6a1243d7ab8832c46dd6853aba514739a'/>
<id>6c3154f6a1243d7ab8832c46dd6853aba514739a</id>
<content type='text'>
altered through their .init code. This might happen if init
vector calls dlopen on its own and that dlopen causes some not
yet initialized object to be initialized earlier as part of that
dlopened DAG.

Do not reset module reference counts to zero on final fini vector
run when process is exiting. Just add an additional parameter to
force fini vector invocation regardless of current reference count
value if object was not destructed yet. This allows dlclose called
from fini vector to proceed normally instead of failing with handle
validation error.

Reviewed by:	kib
Reported by:	venki kaps
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
altered through their .init code. This might happen if init
vector calls dlopen on its own and that dlopen causes some not
yet initialized object to be initialized earlier as part of that
dlopened DAG.

Do not reset module reference counts to zero on final fini vector
run when process is exiting. Just add an additional parameter to
force fini vector invocation regardless of current reference count
value if object was not destructed yet. This allows dlclose called
from fini vector to proceed normally instead of failing with handle
validation error.

Reviewed by:	kib
Reported by:	venki kaps
</pre>
</div>
</content>
</entry>
</feed>
