Cannot exec() program outside of /bin if PATH is unset
Christian Franke
Christian.Franke@t-online.de
Thu Oct 16 21:51:00 GMT 2014
Corinna Vinschen wrote:
> ...
> I implemented this in the latest snapshot. It calls SetDllDirectory
> on Cygwin's /bin, and dlopen addiotnally tries to load the DLL with
> LoadLibraryEx(LOAD_WITH_ALTERED_SEARCH_PATH) if all else failed.
For some reason, the SetDllDirectory() call has no effect for exec():
Testcase:
$ unset PATH
$ uname -srvm
-bash: uname: No such file or directory
$ /bin/uname -srvm
CYGWIN_NT-6.1-WOW64 1.7.33s(0.277/5/3) 20141014 19:44:03 i686
$ /usr/sbin/alternatives
/usr/sbin/alternatives: error while loading shared libraries: ?: cannot
open shared object file: No such file or directory
$ PATH=/bin /usr/sbin/alternatives
alternatives version 1.3.30c - ...
$ cd /bin
$ /usr/sbin/alternatives
alternatives version 1.3.30c - ...
> Please give the latest snapshot from https://cygwin.com/snapshots/
> a try.
No regressions found yet :-)
Christian
--
Problem reports: http://cygwin.com/problems.html
FAQ: http://cygwin.com/faq/
Documentation: http://cygwin.com/docs.html
Unsubscribe info: http://cygwin.com/ml/#unsubscribe-simple
More information about the Cygwin
mailing list