Small oops. list -al IS broken and sends 0 bytes no matter what's in the directory as I said but I must have goofed the cwd test somehow... I was using existing dirs on my ftp and their names were more complex so I must have entered it wrong and ioftpd was probably right in saying it failed hehe.
Anyway, I realized there is no way cwd with a directory path with []'s could fail because I've used flash/etc to download from dirs and seen it work... hence the double check. list -al with a path containing either [ or ] fails in my perl script and in flash. Sorry for the confusion, just test with list...
Oh, and any chance of supporting ls -alR ?