Hi Dirk,
* Dirk Eddelbuettel <[EMAIL PROTECTED]> [2008-08-25 03:07]:
> I think it is a false positive:
> 
> # test functionality of the compiler
> javac_works='not present'
> if test -n "$JAVAC"; then
>     javac_works='not functional'
>     rm -rf /tmp/A.java /tmp/A.class           ## <- note the rm -rf
>     echo "public class A { }" > /tmp/A.java
>     if test -e /tmp/A.java; then
>         if "${JAVAC}" /tmp/A.java >/dev/null; then
>             if test -e /tmp/A.class; then
>                 javac_works=yes
>             fi
>         fi
>     fi
>     rm -rf /tmp/A.java /tmp/A.class
> fi
> 
> Right before /tmp/A.* are being used, they are being wiped. No symlink
> attack.
> 
> Unless I hear objections, I plan to close this one.

Please don't. There is still a race condition here. The 
chance is not that high but it's still possible in theory to 
create the symlink after the unlink. Using mktemp shouldn't 
be a big effort but solve this problem.

Kind regards
Nico
-- 
Nico Golde - http://www.ngolde.de - [EMAIL PROTECTED] - GPG: 0x73647CFF
For security reasons, all text in this mail is double-rot13 encrypted.

Attachment: pgptQCjqGB0Lr.pgp
Description: PGP signature

Reply via email to