Odd looping issue with NET::FTP and Proftpd

Hello,

I'm a UNIX SysAdmin at a large webhosting company and we have a vendor that provides a service which involves the ftp'ing of files from their servers to ours. They initiate FTP using a perl script with NET::FTP.

When they try to transfer files (and delete files over ftp), there is an issue that causes an infinite loop. And the ftp transfer/transaction never completes. This is the best I can describe this...

rm /
rm /dir
rm /dir/file.txt

Ftp start to do something like this instead...
rm /
rm ./
rm ../
rm ../../
rm ../../../

and so on...

Does this ring a bell with anyone?

The issue was temporarily corrected with a patch to NET::FTP, but this fix is only temporary for reasons I will spare you. The vendor insists it's an issue with our version of proftpd. (1.3.4a).
I have looked at bug reports but can't seem to find one that would explain this particular problem. If I can find a reference to a bug with ftp then I can push the company to upgrade our version of proftpd.

Any help anyone can give is greatly appreciated.

Also their system is Ubuntu (latest version)
Ours is freebsd 6.4 & Linux RHEL5
This occurs on both platforms, but both have the same version of proftpd (1.3.4a)

Thank you!!
-Tania

Without seeing the script in question I couldn't possibly tell what's happening.

I understand. Since it is their proprietary code, I doubt they will share the source with us. But I will try to get what I can.

thank you!

Hang on -- I just had a guess.

Maybe they weren't expecting . and .. to appear in directory listings, and weren't smart enough to ignore them when trying to do "recursive" things.

It's just a guess, mind you. But it could fit.