in reply to mkdir unless dir already exists.

exists is for hash keys... you can use
mkdir("$tftpdir/$archive", 755) || warn $!;
or the bit you used.

Greetz
Beatnik
... Quidquid perl dictum sit, altum viditur.