I recall being bitten by this before but I am not sure to whom I reported it.

I keep getting a bad result building DBD::Oracle because the
Makefile.PL cannot find the sqlplus executable to get the client
library version.

Naturally, the sqlplus executable is on the PATH and very findable, so
let me demonstrate the problem.

[1877] $ perl -e 'if (-x "/opt/oracle/product/bin/sqlplus"){print "got
it"}else{print "no got it"}'
got it

[1874] $ perl -e 'use filetest "access";if (-x
"/opt/oracle/product/bin/sqlplus"){print "got it"}else{print "no got
it"}'
no got it

[1873] $ dir /opt/oracle/product/bin/sqlplus
-rwxr-x--x   1 oracle   dba       953052 Oct 19  2005
/opt/oracle/product/bin/sqlplus

Notice that the file itself is other --x, not other r-x. I think
that's what's throwing off use filetest. I am not oracle or dba, yet I
can execute the file, without read access. This is on Solaris 2.8.

Bug or feature? Can we get DBD::Oracle to stop using filetest or fix
filetest in perl 5.10.0? Yes, I could get my admin to chmod 755
sqlplus, but I'd like to persue whether this behavior is right or not.

Thanks.
-- 
Matthew O. Persico

Reply via email to