rtld: limit self loading check to normal mode only
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
eglibc (Ubuntu) |
Fix Released
|
Undecided
|
Adam Conrad | ||
Precise |
Fix Released
|
Undecided
|
Adam Conrad | ||
Quantal |
Fix Released
|
Undecided
|
Adam Conrad |
Bug Description
[Impact / Justification]
To be fair, this bug is (mostly) cosmetic, but when tools exit non-zero in scary ways, it can have knock-on effects elsewhere (to custom scripting, or just frightened users). The fix here is targeted, "obviously correct", and easily auditable, so I figured I'd pull it back to the LTS for a bit of polish.
[Test Case]
The SRU patch includes an addition to the glibc testsuite that tests that ld.so can now load itself correctly in a few different ways, but the easiest user verification is to run:
ldd /lib/ld-linux.so.2 (or /lib64/
And witness it fail before the upgrade, and work after.
[Regression Potential]
Regression potential here is low, the patch is from upstream, very simple, and it's quite clear what it does.
[Original Report]
Commit glibc-2.14~10 disallowed rtld self loading to avoid a segfault
that used to happen when rtld was loading itself in normal mode.
Unfortunately, that commit disallowed all modes of self loading,
including those that used to work before. This change limits the check
for self loading to normal mode only, so that instruments like ldd could
handle rtld properly.
http://
CVE References
description: | updated |
Changed in eglibc (Ubuntu): | |
status: | In Progress → Fix Committed |
Changed in eglibc (Ubuntu Precise): | |
assignee: | nobody → Adam Conrad (adconrad) |
Changed in eglibc (Ubuntu): | |
assignee: | nobody → Adam Conrad (adconrad) |
Changed in eglibc (Ubuntu Quantal): | |
assignee: | nobody → Adam Conrad (adconrad) |
ldd /lib64/ ld-linux- x86-64. so.2
loader cannot load itself
ldd: exited with unknown exit code (127)
ldd --version
ldd (Ubuntu EGLIBC 2.15-0ubuntu20) 2.15