diff options
| author | Carmelo Amoroso <carmelo.amoroso@st.com> | 2011-10-25 10:24:06 +0200 | 
|---|---|---|
| committer | Carmelo Amoroso <carmelo.amoroso@st.com> | 2011-10-25 10:24:06 +0200 | 
| commit | 7846b17d4c623d9ad1962300f95b9c539ecc149a (patch) | |
| tree | b77626964adbf32c3f4100acd4660d4f782fe488 | |
| parent | b9055a68dd1e17e6cdc816ef6e1aa213592f38ca (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.c | 22 | 
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  | 
