summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorCarmelo Amoroso <carmelo.amoroso@st.com>2011-10-25 10:24:06 +0200
committerCarmelo Amoroso <carmelo.amoroso@st.com>2011-10-25 10:24:06 +0200
commit7846b17d4c623d9ad1962300f95b9c539ecc149a (patch)
treeb77626964adbf32c3f4100acd4660d4f782fe488
parentb9055a68dd1e17e6cdc816ef6e1aa213592f38ca (diff)
ldso: disable the implicit path search in stand-alone mode as well
Honour LDSO_SEARCH_INTERP_PATH knob option also when running in stand-alone mode. Signed-off-by: Rune <u-uclibc-y2lt@aetey.se> Signed-off-by: Carmelo Amoroso <carmelo.amoroso@st.com>
-rw-r--r--ldso/ldso/ldso.c22
1 files changed, 13 insertions, 9 deletions
diff --git a/ldso/ldso/ldso.c b/ldso/ldso/ldso.c
index cbef0ee1e..39c1fbdf9 100644
--- a/ldso/ldso/ldso.c
+++ b/ldso/ldso/ldso.c
@@ -486,7 +486,6 @@ void *_dl_get_ready_to_run(struct elf_resolve *tpnt, DL_LOADADDR_TYPE load_addr,
#ifdef __LDSO_STANDALONE_SUPPORT__
if (_start == (void *) auxvt[AT_ENTRY].a_un.a_val) {
- char *ptmp;
unsigned int *aux_dat = (unsigned int *) argv;
int argc = aux_dat[-1];
@@ -565,15 +564,20 @@ of this helper program; chances are you did not intend to run this program.\n\
}
}
- /* Store the path where the shared lib loader was found
- * for later use
- */
- _dl_ldsopath = _dl_strdup(tpnt->libname);
- ptmp = _dl_strrchr(_dl_ldsopath, '/');
- if (ptmp != _dl_ldsopath)
- *ptmp = '\0';
+#ifdef __LDSO_SEARCH_INTERP_PATH__
+ {
+ char *ptmp;
+ /* Store the path where the shared lib loader was found
+ * for later use
+ */
+ _dl_ldsopath = _dl_strdup(tpnt->libname);
+ ptmp = _dl_strrchr(_dl_ldsopath, '/');
+ if (ptmp != _dl_ldsopath)
+ *ptmp = '\0';
- _dl_debug_early("Lib Loader: (%x) %s\n", (unsigned) DL_LOADADDR_BASE(tpnt->loadaddr), tpnt->libname);
+ _dl_debug_early("Lib Loader: (%x) %s\n", (unsigned) DL_LOADADDR_BASE(tpnt->loadaddr), tpnt->libname);
+ }
+#endif
} else {
#endif