bmearns wrote > Is it possible to specify which port to use as the outbound port on a > connection? I have the IP address and port number for the computer I'm > trying to connect to (not listening for), but it's expecting my > connection on a certain port. > > Specifically, I'm trying to write an FTP host, and I'm trying to > implement the PORT command. From everything I've read, the client > supplies the IP address and port number for where I'm supposed to > connect to send it data (like a LISTing), and it's expecting me to > connect over port 20. If anyone is familiar with FTP and can tell me > whether this is true or not, whether I really need to go out on port > 20, I'd appreciate it, as well. > > Thanks.
This isn't correct. If you send a PORT command you're telling server to establish a connection with you, not the contrary. In this case, even if you are an FTP client, you temporary ACCEPT an outbound connection from the FTP server. The right format of a FTP PORT command is: PORT x,x,x,x,y,z ...where x(s) represents your IP address in dotted form and (x * y) the TCP port you bind. For further informations you can check RFC959 or take a look at ftplib in standard module library. Also in twisted you can find a lot of useful code in the module protocols.ftp. -- http://mail.python.org/mailman/listinfo/python-list