This is the mail archive of the cygwin mailing list for the Cygwin project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

1.5.19-4 exec family of functions find wrong file to execute


I am attempting to invoke a command with
execvp/execlp.  If a file appears in my PATH before
the executable desired and has the same name as the
executable, the first occurrence of the file name is
used as the executable to invoke.  Even though the
first file is NOT marked as executable.

The attached testcase illustrates this.
Here's a simple shell log:

bash-3.00$ gcc test2.c -o test2
bash-3.00$ PATH=/usr/bin:.
bash-3.00$ test2 nopathnoext
NoPathNoExt
bash-3.00$ touch echo
bash-3.00$ ls -l echo
-rw-r--r-- 1 test None 0 Jan 21 15:39 echo
bash-3.00$ test2 nopathnoext
NoPathNoExt
bash-3.00$ PATH=.:/usr/bin
bash-3.00$ test2 nopathnoext
nopathnoext: No such device or address
bash-3.00$ rm -f echo
bash-3.00$ test2 nopathnoext
NoPathNoExt
bash-3.00$ echo garbage > echo
bash-3.00$ test2 nopathnoext
nopathnoext: Permission denied
bash-3.00$ ls -l echo
-rw-r--r-- 1 test None 8 Jan 21 15:40 echo
bash-3.00$ test2 nopathext
NoPathExt
bash-3.00$ test2 path
Path

Is this normal behavior for execlp/execvp?
Shouldn't the execution permission be set in order to
execute it?

Thanks for your help,
Martin


	

	
		
__________________________________________________________ 
Find your next car at http://autos.yahoo.ca

Attachment: cygcheck.out
Description: 3924260979-cygcheck.out

Attachment: test2.c
Description: 2263429771-test2.c

Attachment: test2.sh
Description: 809292912-test2.sh

--
Unsubscribe info:      http://cygwin.com/ml/#unsubscribe-simple
Problem reports:       http://cygwin.com/problems.html
Documentation:         http://cygwin.com/docs.html
FAQ:                   http://cygwin.com/faq/

Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]