The reason regular ftp has a data channel and a command channel, is to avoid the issues involved in escaping data that might appear as a command. This is a pretty common issue when dealing with filetransfer protocols, and the guys who wrote the original FTP spec thought that they could avoid this issue altogether by making their commands travel out of band of the data. So anyway when you pass the commands and data through the same pipe you run the risk of data corruption if your escaping protocol is not perfect and you add the overhead of escaping data that would be misinterpreted as a protocol command....joden@eworld.wox.org